Esempio n. 1
0
def reset_password(token: str = Body(...),
                   new_password: str = Body(...),
                   sql: Session = Depends(db_session)) -> Any:
    """
    reset user password
    """
    user = verify_password_reset_token(token)

    if not user:
        raise HTTPException(status_code=400, detail="Invalid token")

    user_data = check_user(sql, username=user)

    if not user_data:
        raise HTTPException(
            status_code=404,
            detail="The user with this username does not exist")

    if user_data.Status:
        raise HTTPException(status_code=400, detail="Inactive user")

    hashed_password = get_password_hash(new_password)

    user_data.Password = hashed_password
    sql.add(user_data)
    sql.commit()

    return {"message": "Password update successfully"}
Esempio n. 2
0
def create_user(db: Session, user: userSchema.UserCreate):
    hashed_password = authUtils.get_password_hash(user.password)
    db_user = userModel(email=user.email,
                        hashed_password=hashed_password,
                        genre_combo=user.genre_combo)
    db.add(db_user)
    db.commit()
    db.refresh(db_user)
    return db_user
def create_user(sql: Session, user: UsersCreate):
    """
    Create a record of user with its Username and Password
    Password will be hashed
    """
    new_user = Users(Username=user.Username,
                     Password=auth.get_password_hash(user.Password))
    sql.add(new_user)
    sql.commit()
    sql.refresh(new_user)
    return new_user
def update_user(sql: Session, user_id: int, user: UsersUpdate):
    """
    Update a specific user data
    """
    old_data = sql.query(Users).filter(Users.UserId == user_id).first()

    if old_data is not None:
        new_data = user.dict()
        old_data.Fullname = new_data["Fullname"]
        old_data.Email = new_data["Email"]
        old_data.Password = auth.get_password_hash(new_data["Password"])
        old_data.Status = new_data["Status"]

        sql.commit()

    return old_data
Esempio n. 5
0
 def test_verify_password(self):
     plain_password = "******"
     hashed_password = utils_auth.get_password_hash(plain_password)
     pp.pprint("Hashed Password: {}".format(hashed_password))
Esempio n. 6
0
 def test_set_user_password(self):
     hashed_password = utils_auth.get_password_hash("foobar")
     utils_user.set_user_password(teacher_id, hashed_password)
     teacher = models_teacher.Teacher.objects.get(id=teacher_id)
     pp.pprint(teacher.to_mongo())