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.'})
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 """
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')