示例#1
0
    def POST(self):
        """
        Use form data to check login, and the redirect if successful
        if not successful then redirect to the login page again.
        """
        passwd = self.env["members"]["password"]
        name = self.env["members"]["username"]

        try:
            um.userORM.login(name, passwd, self.env["cookie"])
            self.head = ("303 SEE OTHER", [("location", "/you")])
            self.session.pushAlert("Welcome back, %s!" % name, "Ohia!", "success")

        except Exception as exc:
            self.session.pushAlert("%s <br/>Please try again." % exc, "Uh oh...", "error")
            loginForm = authLoginTmpl(searchList=[self.tmplSearchList])

            if type(exc) == use.usernameError:
                loginForm.usernameError = True
            elif type(exc) == use.passwordError:
                loginForm.passwordError = True
                loginForm.username = name
            elif type(exc) == use.banError:
                loginForm.banError = True

            return loginForm
示例#2
0
    def GET(self):
        """
        Display the login page or redirect to their dashboard if they are already logged in
        """
        if self.session.loggedIn:
            self.head = ("303 SEE OTHER",
                [("location", "/you")])
            self.session.pushAlert("It looks like you're already signed in!", "Hey there!", "info")

        else:
            loginForm = authLoginTmpl(searchList=[self.tmplSearchList])
            return loginForm