Exemplo n.º 1
0
    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)
Exemplo n.º 2
0
    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