def post(self): username = self.request.get('username') password = self.request.get('password') error = '' url = self.request.url url = url[:url.rfind('/login')] url = url[url.rfind('/') + 1:] if not validUser(username): error = 'Invalid user name or password.' else: q = db.GqlQuery('select * from User where name = :1', username) user = q.get() if not user: error = 'Invalid user name or password.' if not validPassword(password): error = 'Invalid user name or password.' if error: self.render_login(username, error, url) else: pwHasher = PasswordHash() if pwHasher.valid_pw(username, password, user.pwHash): cookieHasher = CookieHash() cookieHash = cookieHasher.make_secure_val(str(user.key().id())) self.response.set_cookie('user_id', cookieHash) self.redirect('/%s/' % url) else: error = 'Invalid user name or password.' self.render_login(username, error, url)
def post(self): username = self.request.get('username') password = self.request.get('password') verify = self.request.get('verify') email = self.request.get('email') uError = pError = vError = eError = '' if not validUser(username): uError = 'That is not a valid user name.' else: q = db.GqlQuery('select * from User where name = :1', username) user = q.get() if user: uError = 'That user name already exists' if not validPassword(password): pError = 'That is not a valid password.' if password != verify: vError = 'The passwords do not match.' if email and not validEmail(email): eError = 'That is not a valid email address.' if uError or pError or vError or eError: self.render_signup(username, uError, pError, vError, email, eError) else: pwHasher = PasswordHash() pwHash = pwHasher.make_pw_hash(username, password) user = User(name = username, pwHash = pwHash, email = email) user.put() cookieHasher = CookieHash() cookieHash = cookieHasher.make_secure_val(str(user.key().id())) self.response.set_cookie('user_id', cookieHash) url = self.request.url url = url[:url.rfind('/signup')] url = url[url.rfind('/') + 1:] self.redirect('/%s/' % url)
def get(self): userIdHash = self.request.cookies.get('user_id') if not userIdHash: self.redirect('/blog/signup') else: cookieHasher = CookieHash() userId = cookieHasher.check_secure_val(userIdHash) if not userId: self.redirect('/blog/signup') else: user = User.get_by_id(int(userId)) self.render('welcome.html', username = user.name)
def get(self, title): content = '' wikiEntry = getWikiEntry(title) if wikiEntry: content = wikiEntry.content userIdHash = self.request.cookies.get('user_id') if not userIdHash: self.redirect('/wiki%s' % title) else: cookieHasher = CookieHash() userId = cookieHasher.check_secure_val(userIdHash) if not userId: self.redirect('/wiki%s' % title) self.render("newWikiEntry.html", title = title, content = content)
def get(self, title): loggedIn = False userIdHash = self.request.cookies.get('user_id') if userIdHash: cookieHasher = CookieHash() userId = cookieHasher.check_secure_val(userIdHash) if userId: loggedIn = True wikiEntry = getWikiEntry(title) if None == wikiEntry: if not loggedIn: self.renderWikiEntry(wikiEntry = wikiEntry, title = title) else: self.redirect('/wiki/_edit%s' % title) else: self.renderWikiEntry(wikiEntry = wikiEntry, loggedIn = loggedIn, title = title)