Example #1
0
    def post(self):
        email = self.get_argument('email')
        password = self.get_argument('password')
        confirm_password = self.get_argument('confirm_password')

        if not email or not password or not confirm_password:
            self._render_register_error("Missing required field!")
            return

        if not password == confirm_password:
            self._render_register_error("Passwords did not match!")
            return

        user_exists = User.get_by_email(email)
        if user_exists:
            self._render_register_error("Email address already registered!")
            return

        # create and store user object
        hashed_password = User.hash_password(password)
        user = User(email=email, password=hashed_password)
        user.save()

        # log user in
        self.set_secure_cookie("user_id", unicode(user.obj_id))
        self.redirect("/")
Example #2
0
    def post(self):
        email = self.get_argument('email', None)
        password = self.get_argument('password', None)

        user = User.get_by_email(email)
        if not user or not user.check_password(password):
            self.render('index.html',
                        debug=options.cli_args.debug,
                        user=None,
                        login_error="Email or password incorrect!",
                        register_error=None)
            return

        self.set_secure_cookie("user_id", unicode(user.obj_id))
        self.redirect("/")
Example #3
0
 def get_current_user(self):
     user_id = self.get_secure_cookie("user_id")
     if not user_id:
         return None
     user = User.get_one(int(user_id))
     return user