|
|
@ -16,11 +16,13 @@ def adm_edit_account(user_id): |
|
|
|
|
|
|
|
form = AdminUpdateAccountForm(prefix="user") |
|
|
|
|
|
|
|
for t in Trophy.query.all(): |
|
|
|
setattr(AdminAccountEditTrophyForm, "t" + str(t.id), BooleanField(t.name)) |
|
|
|
trophy_form = AdminAccountEditTrophyForm(prefix="trophy") |
|
|
|
class TrophyForm(AdminAccountEditTrophyForm): |
|
|
|
pass |
|
|
|
|
|
|
|
print(trophy_form.t22) |
|
|
|
for t in Trophy.query.all(): |
|
|
|
setattr(TrophyForm, f't{t.id}', BooleanField(t.name)) |
|
|
|
setattr(TrophyForm, "user_trophies", [f't{t.id}' for t in user.trophies]) |
|
|
|
trophy_form = TrophyForm(prefix="trophies") |
|
|
|
|
|
|
|
if form.submit.data: |
|
|
|
if form.validate_on_submit(): |
|
|
@ -51,12 +53,15 @@ def adm_edit_account(user_id): |
|
|
|
|
|
|
|
if trophy_form.submit.data: |
|
|
|
if trophy_form.validate_on_submit(): |
|
|
|
trophies = [(t.label, t.data) for t in trophy_form.trophies] |
|
|
|
for t, set in trophies: |
|
|
|
if set: |
|
|
|
user.add_trophy(t) |
|
|
|
else: |
|
|
|
user.del_trophy(t) |
|
|
|
for id, field in trophy_form.__dict__.items(): |
|
|
|
if id[0] == "t": |
|
|
|
print(f"id: {id[1:]}, name: {field.label}, checked={field.data}", end=" ") |
|
|
|
if field.data: |
|
|
|
print(f"Add trophy {id[1:]}") |
|
|
|
user.add_trophy(int(id[1:])) |
|
|
|
else: |
|
|
|
print(f"Del trophy {id[1:]}") |
|
|
|
user.del_trophy(int(id[1:])) |
|
|
|
else: |
|
|
|
flash("Erreur lors de l'ajout du trophée", 'error') |
|
|
|
|
|
|
@ -69,8 +74,8 @@ def adm_edit_account(user_id): |
|
|
|
# else: |
|
|
|
# flash("Erreur lors du retrait du trophée", 'error') |
|
|
|
|
|
|
|
return render('admin/edit_account.html', user=user, form=form, |
|
|
|
trophy_form=trophy_form) |
|
|
|
return render('admin/edit_account.html', user=user, |
|
|
|
form=form, trophy_form=trophy_form) |
|
|
|
|
|
|
|
|
|
|
|
@app.route('/admin/account/<user_id>/delete', methods=['GET', 'POST']) |
|
|
|