def post(self): have_error = False user_username = self.request.get('username') user_password = self.request.get('password') user_verify = self.request.get('verify') user_email = self.request.get('email') check_username = valid_helpers.valid_username(user_username) check_password = valid_helpers.valid_password(user_password) check_verify = valid_helpers.valid_verify(user_verify, user_password) check_email = valid_helpers.valid_email(user_email) params = dict(user_username = user_username, user_email = user_email) # Try to retrieve user from database if it already exits query = User.all(keys_only = True).filter('username', user_username) if not(check_username): params['error_username'] = "******" have_error = True if not(check_password): params['error_password'] = "******" have_error = True if not(check_verify): params['error_verify'] = "Your passwords didn't match." have_error = True if not(check_email): params['error_email'] = "That's not a valid email." have_error = True if not have_error: # query database only if no other errors exist existing_user = query.get() if existing_user: # if the user exists, the give error params['error_username'] = "******" have_error = True if have_error: self.render("signup_form.html", **params) else: #set cookies here and save user to database #encrypt the pass before saving encrypted_pass = auth_helpers.make_pw_hash(user_username, user_password) user = User(username = user_username, email = user_email, encrypted_pass = encrypted_pass) user.put() # save the user existing_user = query.get() # get the user from the database user_id = existing_user.id() user_hash = auth_helpers.make_secure_val(str(user_id)) self.response.headers.add_header("Set-Cookie", "user = %s" % str(user_hash)) self.redirect("/unit3/welcome")
def post(self): user_username = self.request.get('username') user_password = self.request.get('password') params = dict(username = user_username) query = User.all().filter('username', user_username) user = query.get() if user: check_user = auth_helpers.valid_pw(user_username, user_password, user.encrypted_pass) if check_user: #set cookie and redirect to welcome page user_id = user.key().id() user_hash = auth_helpers.make_secure_val(str(user_id)) self.response.headers.add_header("Set-Cookie", "user = %s" % str(user_hash)) self.redirect("/unit3/welcome") else: params["error_username"] = "******" params["error_password"] = "******" self.render("login.html", **params) else: params["error_username"] = "******" params["error_password"] = "******" self.render("login.html", **params)
def set_secure_cookie(self, name, val): cookie_val = auth_helpers.make_secure_val(val) self.response.headers.add_header('Set-Cookie', "%s=%s; Path=/" % (name, cookie_val))
def login(self): self.response.set_cookie("logged_in", auth_helpers.make_secure_val("1"))
def set_secure_cookie(self, name, val): cookie_val = auth_helpers.make_secure_val(val) self.response.headers.add_header( 'Set-Cookie', "%s=%s; Path=/" % (name, cookie_val))