示例#1
0
    def POST(self):
        i = web.input(username='', email='', password='', redir='/')
        i.email = i.email.lower()

        u = User.register(i.username, i.password, email=i.email)

        if User.authenticate(i.username, i.password, u.salt, u.uhash):
            # Logic to populate session() with user vars:
            session().logged = True
            session().username = i.username

            # migrate elsewhere, maybe utils redir
            if i.redir:
                if not i.redir[0] == "/":
                    i.redir = "/" + i.redir
                elif i.redir[0] == "/":
                    i.redir = "/"
                raise web.seeother(web.ctx.homedomain + i.redir)
            raise web.seeother(web.ctx.homedomain + "/account")
        return render().login(msg=ERROR_LOGIN_PASSWD['key'])


        session().logged = True
        session().username = i.username
        raise web.seeother('/account')
示例#2
0
文件: auth.py 项目: mekarpeles/waltz
 def POST(self):        
     i = web.input(email="", password="")
     if not waltz.utils.valid_email(i.email):
         return self.GET(msg="invalid email")
     try:
         u = User(i.email)
     except AttributeError:
         return self.GET(msg="no such user")
     if u.authenticate(i.password):
         session().update({'logged': True,
                           'email': i.email})
         raise web.seeother('/')
     return self.GET(msg="invalid credentials")