Skip to content
Snippets Groups Projects

Jk/delete registration

Merged
Jiří Kalvodarequested to merge
jk/delete-registration into devel
All threads resolved!
1 file
+ 1
1
Compare changes
  • Side-by-side
  • Inline
+ 43
9
@@ -321,7 +321,7 @@ def org_org(id: int):
)
sess.commit()
app.logger.info(f"New role for user #{id} added: {db.row2dict(new_role)}")
flash(f'Role "{new_role}" úspěšně přidána', 'success')
flash(f'Role "{new_role}" úspěšně přidána.', 'success')
return redirect(url_for('org_user', id=id))
if form_remove_role.remove_role_id.data and form_remove_role.validate_on_submit():
@@ -340,7 +340,7 @@ def org_org(id: int):
)
sess.commit()
app.logger.info(f"Role for user #{id} removed: {db.row2dict(role)}")
flash(f'Role "{role}" úspěšně odebrána', 'success')
flash(f'Role "{role}" úspěšně odebrána.', 'success')
return redirect(url_for('org_user', id=id))
return render_template(
@@ -451,7 +451,7 @@ def org_user_edit(id: int):
if hasattr(form, 'email') and form.email is not None:
other_user = mo.users.user_by_email(form.email.data)
if other_user is not None and other_user != user:
flash('Zadaný e-mail nelze použít, existuje jiný účet s tímto e-mailem', 'danger')
flash('Zadaný e-mail nelze použít, existuje jiný účet s tímto e-mailem.', 'danger')
check = False
if check:
@@ -466,9 +466,9 @@ def org_user_edit(id: int):
details={'action': 'edit', 'changes': changes},
)
sess.commit()
flash('Změny uživatele uloženy', 'success')
flash('Změny uživatele uloženy.', 'success')
else:
flash('Žádné změny k uložení', 'info')
flash('Žádné změny k uložení.', 'info')
return redirect(url_for('org_user', id=id))
@@ -546,7 +546,7 @@ def org_user_new():
token = mo.users.make_activation_token(new_user)
sess.commit()
flash('Nový uživatel vytvořen', 'success')
flash('Nový uživatel vytvořen.', 'success')
if mo.email.send_new_account_email(new_user, token):
flash('E-mail s odkazem na aktivaci účtu odeslán na {}.'.format(new_user.email), 'success')
@@ -572,6 +572,40 @@ class ParticipantEditForm(FlaskForm):
submit = wtforms.SubmitField("Uložit")
@app.route('/org/user/<int:user_id>/participant/<int:year>/delete', methods=('POST',))
def org_user_participant_delete(user_id: int, year: int):
sess = db.get_session()
user = mo.users.user_by_uid(user_id)
if not user:
raise werkzeug.exceptions.NotFound()
rr = g.gatekeeper.rights_generic()
if not rr.can_edit_user(user):
raise werkzeug.exceptions.Forbidden()
participant = sess.query(db.Participant).filter_by(user_id=user.user_id).filter_by(year=year).one_or_none()
if participant is None:
raise werkzeug.exceptions.NotFound()
if sess.query(db.Participation).filter_by(user_id=user.user_id).filter(db.Participation.contest.has(db.Contest.round.has(year=year))).count() != 0:
flash('Registraci není možná smazat, soutěžící se v daném ročníku účastní nějakého kola.', 'danger')
else:
sess.delete(participant)
app.logger.info(f"Participant id {user_id} year {year} deleted")
mo.util.log(
type=db.LogType.participant,
what=user_id,
details={'action': 'delete-participant', 'year': year, 'participant': db.row2dict(participant)},
)
sess.commit()
flash('Registrace smazána.', 'success')
return redirect(url_for('org_user', id=user_id))
@app.route('/org/user/<int:user_id>/participant/<int:year>/edit', methods=('GET', 'POST'))
def org_user_participant_edit(user_id: int, year: int):
sess = db.get_session()
@@ -593,16 +627,16 @@ def org_user_participant_edit(user_id: int, year: int):
if sess.is_modified(participant):
changes = db.get_object_changes(participant)
app.logger.info(f"Participant id {id} year {year} modified, changes: {changes}")
app.logger.info(f"Participant id {user_id} year {year} modified, changes: {changes}")
mo.util.log(
type=db.LogType.participant,
what=user_id,
details={'action': 'edit-participant', 'year': year, 'changes': changes},
)
sess.commit()
flash('Změny registrace uloženy', 'success')
flash('Změny registrace uloženy.', 'success')
else:
flash('Žádné změny k uložení', 'info')
flash('Žádné změny k uložení.', 'info')
return redirect(url_for('org_user', id=user_id))
Loading