コード例 #1
0
def set_password(email, password):
    print("Setting password of user _{}_ to {}".format(email, password))
    user = user_repo.find_one_by_email(email)
    if not user:
        print("User not exist")
        return
    user_service.create_or_update_password(user, password)
    print("Done")
コード例 #2
0
def check_username_and_password(email_or_phone_number: str, password: str):
    email, phone_number = validator.validate_login_request(email_or_phone_number, password)

    pending_register = register_service.find_one_by_email(email) if email else \
        register_service.find_one_by_phone_number(phone_number)

    if pending_register: raise MustConfirmEmailException()

    user = repo.find_one_by_email(email) if email else repo.find_one_by_phone_number(phone_number)

    if not user: raise UserNotFoundException()

    if not user.is_active: handle_in_active(user)

    if not verify_password(user.password, password): raise WrongPasswordException()

    return user
コード例 #3
0
def find_one_by_email_else_throw(email: str) -> User:
    user = repo.find_one_by_email(email)
    if not user: raise UserNotFoundException()
    return user
コード例 #4
0
def find_one_by_email(email: str) -> User:
    return repo.find_one_by_email(email)
コード例 #5
0
def change_profile(**kwargs) -> User:
    email = kwargs.get('email')
    user = repo.find_one_by_email(email)
    if not user: raise UserNotFoundException()
    return update_profile(user, **kwargs)
コード例 #6
0
def change_password(current_password: str, new_password: str, **kwargs) -> User:
    email = kwargs.get('email')
    user = repo.find_one_by_email(email)
    if not user: raise UserNotFoundException()
    if not verify_password(user.password, current_password): raise WrongCurrentPasswordException()
    return create_or_update_password(user, new_password)
コード例 #7
0
def fetch_user_status(**kwargs):
    email = kwargs.get('email')
    user = repo.find_one_by_email(email)
    return user.to_display_dict()
コード例 #8
0
def find_one_by_email_or_phone_number(email: str, phone_number: str) -> User:
    return repo.find_one_by_email_or_phone_number(email, phone_number) if phone_number \
        else repo.find_one_by_email(email)