示例#1
0
 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()
示例#2
0
 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)
示例#3
0
    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())