fix trasnfer ownership
This commit is contained in:
1 parent
d1b9feab82
commit
964a0651f5
5 files changed
+121
-3
No files matched your search
@@ -1295,6 +1295,34 @@ def update_member_role(league_ref: str, user_id: str):
|
||||
return redirect(url_for("leagues.league_settings", league_ref=league.url_ref))
|
||||
|
||||
|
||||
@leagues_bp.post("/l/<league_ref>/settings/transfer-ownership")
|
||||
@login_required
|
||||
def transfer_ownership(league_ref: str):
|
||||
if not db_ready():
|
||||
flash("League database is not available.", "error")
|
||||
return redirect(url_for("public.home"))
|
||||
|
||||
from league_repositories import transfer_league_ownership
|
||||
|
||||
league = require_league(league_ref, {"owner"})
|
||||
new_owner_user_id = request.form.get("new_owner_user_id", "").strip()
|
||||
current_owner_user_id = current_user_id() or ""
|
||||
|
||||
if not new_owner_user_id:
|
||||
flash("Choose a member to transfer ownership to.", "error")
|
||||
return redirect(url_for("leagues.league_settings", league_ref=league.url_ref))
|
||||
|
||||
transfer = transfer_league_ownership(league, current_owner_user_id, new_owner_user_id)
|
||||
if transfer is None:
|
||||
flash("Ownership can only be transferred to an active member.", "error")
|
||||
return redirect(url_for("leagues.league_settings", league_ref=league.url_ref))
|
||||
|
||||
_old_owner, _new_owner = transfer
|
||||
db.session.commit()
|
||||
flash("League ownership transferred. Your role is now manager.", "success")
|
||||
return redirect(url_for("leagues.dashboard", league_ref=league.url_ref))
|
||||
|
||||
|
||||
@leagues_bp.post("/l/<league_ref>/archive")
|
||||
@login_required
|
||||
def archive_league(league_ref: str):
|
||||
|
||||
Reference in new issue
Block a user