def post(self): form = LoginFrom(self.arguments) fail = False if form.validate(): admin = Admin.get_or_none(username=self.get_argument("username")) if admin and Admin.check_password(admin.password, self.get_argument("password")): remember_me = self.get_argument("remember", "off") if remember_me == "on": expires_days = 30 else: expires_days = None self.login(admin, expires_days) if self.next_url: self.redirect(self.next_url) else: self.redirect(self.reverse_url("admin_home")) return fail = True self.render("login.html", form=form, fail=fail)
def get_current_user(self): admin = self.get_secure_cookie("admin") if not admin: return None try: admininfo = json.loads(admin.decode("utf-8")) except: admininfo = None if admininfo and admininfo.get("id", None): admin = Admin.get_or_none(id=admininfo['id']) if admin is not None: return admin