예제 #1
0
class LoginHandler(webapp.RequestHandler):
    def get(self):
        doRender(self,'login.html')

    def post(self):
        self.session = Session()
        id_ = self.request.get('username')        
        pw = self.request.get('password')
        self.session.delete_item('username')

        if id_ == '':
            doRender(self, 'login.html', {'error':'Please specify a username.'})
            return
        if pw == '':
            doRender(self, 'login.html', {'error':'Please specify a password.'})
            return
        
        user = Student.get_by_username(id_)
        if user is None:
            doRender(self,'login.html',{'error':'Invalid username entered. Please try again.  '})  
        elif pw == user.password:
            self.session['username'] = id_
            self.session['student_id'] = user.key().id()
            if user.isAdmin:
                self.session['admin'] = True
            self.redirect('/profile')
        else:
            doRender(self,'login.html',{'error':'Invalid password entered. Please try again.'})
예제 #2
0
class SignupHandler(webapp.RequestHandler):
    def get(self) :
        self.session = Session()
        self.session.delete_item('username')
        s = Student()
        s.generateID()
        s.generatePassword() 
        s.put()
        user = s
        user.put()
        self.session['username'] = user.id_
        self.session['student_id'] = s.key().id()
        doRender(self, 'issueAccount.html', {'student' : s})

    # old version - let user enter their username (email) and password
    """
예제 #3
0
class LogoutHandler(webapp.RequestHandler):
    def get(self):
        self.session = Session()
        self.session.delete_item('username')
        self.session.delete_item('student_id')
        self.session.delete_item('admin')
        doRender(self,'index.html')