def post(self, *args, **kwargs): error_list = {"usernameerror": False, "firstnameerror": False, "lastnameerror": False, "emailerror": False, "passworderror": False, "message": ""} if self.current_user: self.redirect("/home") return _username = self.get_body_argument("username") _firstname = self.get_body_argument("firstname") _lastname = self.get_body_argument("lastname") _email = self.get_body_argument("email") _password = self.get_body_argument("password") if _firstname == "" or len(_firstname) > 20: error_list = {"usernameerror": False, "firstnameerror": True, "lastnameerror": False, "emailerror": False, "passworderror": False, "message": "Firstname cannot be empty or length over 20."} self.render("sign-up.html", error=error_list) if _lastname == "" or len(_lastname) > 20: error_list = {"usernameerror": False, "firstnameerror": False, "lastnameerror": True, "emailerror": False, "passworderror": False, "message": "Last name cannot be empty or length over 20."} self.render("sign-up.html", error=error_list) if _email == "" or len(_email) > 50: error_list = {"usernameerror": False, "firstnameerror": False, "lastnameerror": False, "emailerror": True, "passworderror": False, "message": "Email cannot be empty or length over 50."} self.render("sign-up.html", error=error_list) if _password == "" or len(_password) > 50: error_list = {"usernameerror": False, "firstnameerror": False, "lastnameerror": False, "emailerror": False, "passworderror": True, "message": "Password cannot be empty or length over 20."} self.render("sign-up.html", error=error_list) if _username == "" or len(_username) > 20: error_list = {"usernameerror": True, "firstnameerror": False, "lastnameerror": False, "emailerror": False, "passworderror": False, "message": "Username cannot be empty or length over 20."} self.render("sign-up.html", error=error_list) user = User() user_list = user.get_by_username(_username) if len(user_list) > 0: error_list = {"usernameerror": True, "firstnameerror": False, "lastnameerror": False, "emailerror": False, "passworderror": False, "message": "User name has already existed."} self.render("sign-up.html", error=error_list) else: r = user.insert(username=_username, first_name=_firstname, last_name=_lastname, password=_password, email=_email) if r: self.redirect("/login") else: self.render("sign-up.html", error=error_list)