def post(self): user = Authenticate(self.request) if user: return self.redirect("/") # get signup params username = self.request.get("username") password = self.request.get("password") passwordrepeat = self.request.get("passwordrepeat") # validate if not (username and password and password == passwordrepeat): return self.redirect("/signup") # checK if username is available userNamePresent = User.query(User.name == username).get() if userNamePresent: return self.redirect("/signup") # hash pw pw_hash = hashes.make_pw_hash(username, password) # create new user u = User(name=username, pw_hash=pw_hash) u.put() # set cookies. SetLoginCookies(self, u) return self.redirect("/")
def post(self): user = Authenticate(self.request) if user: return self.redirect("/") # get signup params username = self.request.get("username") password = self.request.get("password") passwordrepeat = self.request.get("passwordrepeat") # validate if not (username and password and password == passwordrepeat): return self.redirect("/signup") # checK if username is available userNamePresent = User.query(User.name==username).get() if userNamePresent: return self.redirect("/signup") # hash pw pw_hash = hashes.make_pw_hash(username, password) # create new user u = User(name=username,pw_hash=pw_hash) u.put() # set cookies. SetLoginCookies(self, u) return self.redirect("/")
def SetUserPassword(user, new_password): user.pw_hash = hashes.make_pw_hash(user.email, new_password) user.put() time.sleep(0.1)
def AddAdmin(name, password, email): # TODO: Validate the fields (check valid, no-duplicates). pw_hash = hashes.make_pw_hash(name, password) a = Admin(name=name, pw_hash=pw_hash, email=email) a.active = True a.put()
def post(self): # Get parameters (code, name, email, pw, etc.) # Validate params # Create new User and populate # Attach new user and code # Set cookies # Redirect to home code = self.request.get("code") fname = self.request.get("first_name") lname = self.request.get("last_name") name = " ".join([fname, lname]) phone = self.request.get("phone") email = self.request.get("email") aux_email = self.request.get("aux_email") password = self.request.get("password") password_repeat = self.request.get("password_repeat") # validation message_text = "" if not name: message_text = getMessage("regnameerror") if not message_text and not phone: message_text = getMessage("regphoneerror") if not message_text and not email: message_text = getMessage("regemailerror") if not message_text and not password: message_text = getMessage("regpasserror") if not message_text and not password or not password == password_repeat: message_text = getMessage("regpassrepeaterror") if message_text: return self.render( "/reg_continue.html", code=code, fname=fname, lname=lname, email=email, aux_email=aux_email, phone=phone, message_text=message_text, ) reg_code = UserRegistrationCode.query( UserRegistrationCode.code == code).get() if not reg_code: return self.redirect("/") # ChecK that this name/email was not used before. userNamePresent = User.query().filter(User.name == name).get() userEmailPresent = User.query().filter(User.email == email).get() if userNamePresent or userEmailPresent: return self.redirect("/") # Create pw hash pw_hash = hashes.make_pw_hash(email, password) # Create new User and populate. # Make empty subscription, save to db. u = User(name=name, pw_hash=pw_hash, phone=phone, email=email) u.used_codes.append(reg_code.key) u.rests.append(reg_code.rest) s = Subscription(typeOf='empty') u.put() # Attach user, code, rest and subscription. reg_code.users.append(u.key) reg_code.last_used = datetime.datetime.now() reg_code.uses = reg_code.uses + 1 reg_code.put() rest = reg_code.rest.get() rest.users.append(u.key) rest.put() s.user = u.key s.rest = rest.key s.put() u.subscriptions.append(s.key) u.put() # Create and set cookies. SetLoginCookies(self, u) # Inactive (by default), send an activation email. SendActivationEmail(u) return self.redirect("/activation_required")
def post(self): # Get parameters (code, name, email, pw, etc.) # Validate params # Create new User and populate # Attach new user and code # Set cookies # Redirect to home code = self.request.get("code") fname = self.request.get("first_name") lname = self.request.get("last_name") name = " ".join([fname, lname]) phone = self.request.get("phone") email = self.request.get("email") aux_email = self.request.get("aux_email") password = self.request.get("password") password_repeat = self.request.get("password_repeat") # validation message_text = "" if not name: message_text = getMessage("regnameerror") if not message_text and not phone: message_text = getMessage("regphoneerror") if not message_text and not email: message_text = getMessage("regemailerror") if not message_text and not password: message_text = getMessage("regpasserror") if not message_text and not password or not password == password_repeat: message_text = getMessage("regpassrepeaterror") if message_text: return self.render("/reg_continue.html", code=code, fname=fname, lname=lname, email=email, aux_email=aux_email, phone=phone, message_text=message_text, ) reg_code = UserRegistrationCode.query(UserRegistrationCode.code==code).get() if not reg_code: return self.redirect("/") # ChecK that this name/email was not used before. userNamePresent = User.query().filter(User.name==name).get() userEmailPresent = User.query().filter(User.email==email).get() if userNamePresent or userEmailPresent: return self.redirect("/") # Create pw hash pw_hash = hashes.make_pw_hash(email, password) # Create new User and populate. # Make empty subscription, save to db. u = User(name=name,pw_hash=pw_hash, phone=phone, email=email) u.used_codes.append(reg_code.key) u.rests.append(reg_code.rest) s = Subscription(typeOf='empty') u.put() # Attach user, code, rest and subscription. reg_code.users.append(u.key) reg_code.last_used = datetime.datetime.now() reg_code.uses = reg_code.uses + 1 reg_code.put() rest = reg_code.rest.get() rest.users.append(u.key) rest.put() s.user = u.key s.rest = rest.key s.put() u.subscriptions.append(s.key) u.put() # Create and set cookies. SetLoginCookies(self, u) # Inactive (by default), send an activation email. SendActivationEmail(u) return self.redirect("/activation_required")
def AddAdmin(name, password, email): # TODO: Validate the fields (check valid, no-duplicates). pw_hash = hashes.make_pw_hash(name, password) a = Admin(name=name,pw_hash=pw_hash,email=email) a.active = True a.put()