merge from main

This commit is contained in:
Kenneth Kehl
2024-07-16 10:54:46 -07:00
60 changed files with 1313 additions and 673 deletions

View File

@@ -18,6 +18,7 @@ from app.dao.users_dao import ( # get_user_and_accounts,; update_user_password,
create_secret_code,
create_user_code,
dao_archive_user,
dao_report_users,
get_login_gov_user,
get_user_and_accounts,
get_user_by_email,
@@ -175,6 +176,17 @@ def activate_user(user_id):
return jsonify(data=user.serialize()), 200
@user_blueprint.route("/<uuid:user_id>/deactivate", methods=["POST"])
def deactivate_user(user_id):
user = get_user_by_id(user_id=user_id)
if user.state == "pending":
raise InvalidRequest("User already inactive", status_code=400)
user.state = "pending"
save_model_user(user)
return jsonify(data=user.serialize()), 200
@user_blueprint.route("/<uuid:user_id>/reset-failed-login-count", methods=["POST"])
def user_reset_failed_login_count(user_id):
user_to_update = get_user_by_id(user_id=user_id)
@@ -359,7 +371,7 @@ def create_2fa_code(
saved_notification.personalisation = personalisation
key = f"2facode-{saved_notification.id}".replace(" ", "")
recipient = str(recipient)
redis_store.raw_set(key, recipient, ex=60 * 60)
redis_store.set(key, recipient, ex=60 * 60)
# Assume that we never want to observe the Notify service's research mode
# setting for this notification - we still need to be able to log into the
@@ -665,6 +677,12 @@ def get_all_users():
# return jsonify(data=user.serialize()), 200
@user_blueprint.route("/report-all-users", methods=["GET"])
def report_all_users():
users = dao_report_users()
return jsonify(data=users.serialize()), 200
@user_blueprint.route("/<uuid:user_id>/organizations-and-services", methods=["GET"])
def get_organizations_and_services_for_user(user_id):
user = get_user_and_accounts(user_id)