def forgot_details(self, request): email = request.user_email validate_email(email) if not User.find_user_by_email(email): raise endpoints.NotFoundException("Email(" + email + ") doesn't exist.") # send reset password email return message_types.VoidMessage()
def authenticate(self, request): email = request.user_email validate_email(email) password = request.password validate_password(password) user = User.find_user_by_email(email) if not user: raise endpoints.NotFoundException("Authentication failed. User account " + email + " doesn't exist.") if not User.authenticate(email, md5(password)): raise endpoints.UnauthorizedException("Authentication failed. User name and password are not matched.") return UserMessage(id=user.key.id(), display_name=user.display_name)
def register(self, request): email = request.user_email validate_email(email) password = request.password validate_password(password) user = User.find_user_by_email(email) if user is not None: raise endpoints.BadRequestException("Email(" + email + ") already exists.") display_name = request.display_name if display_name is None or display_name == '': raise endpoints.BadRequestException("Registration failed. Display name is missing.") user = User.find_user_by_display_name(display_name) if user is not None: raise endpoints.BadRequestException("Display name(" + display_name + ") already exists.") user = User.insert_normal_user(email, display_name, md5(password)) return UserMessage(id=user.key.id())