class ClockController(BaseController): def __init__(self): BaseController.__init__(self) self.ups = UserPropertySDB() def now(self): if get_identifier(): return self._registered() else: return self._guest_now() def _registered(self): up = self.ups.find(session['identifier']) c.title = 'My Clock' if up: name = up.nickname time_diff = up.time_diff else: name = session['identifier'] time_diff = 0 c.heading = 'Welcome! %s' % name c.content = "Current time is %s" % str(datetime.datetime.now() + datetime.timedelta(0, 0, 0, 0, 0, time_diff)) return render('/derived/clock/registered.html') def _guest_now(self): c.title = 'My Clock' c.heading = 'Welcome!' c.content = "Current time is %s" % str(datetime.datetime.now()) return render('/derived/clock/guest.html') @require_login def customize(self): return render('/derived/clock/customize.html') @restrict('POST') @validate(schema = TimeDiffForm(), form = 'time_diff') @require_login def save(self): up = UserProperty(session['identifier'], self.form_result['nickname'], int(self.form_result['time_diff'])) self.ups.save(up) redirect_to('now')
def __init__(self): BaseController.__init__(self) self.ups = UserPropertySDB()