forked from ScoDoc/ScoDoc
Nouvelle commande: user-edit --dept. Fix modif dept. si affecté à un dept inexistant.
This commit is contained in:
parent
2967596de2
commit
18d5a168e6
@ -273,7 +273,11 @@ def create_user_form(user_name=None, edit=0, all_roles=True):
|
||||
|
||||
administrable_dept_acronyms = _get_administrable_depts()
|
||||
if edit:
|
||||
if the_user.dept is None: # seul le super admin peut le toucher
|
||||
if (the_user.dept is None) or the_user.dept not in (
|
||||
d.acronym for d in Departement.query.all()
|
||||
):
|
||||
# user dans tous dept, ou dans un dept inconnu:
|
||||
# seul le super admin peut le toucher
|
||||
edit_only_roles = not current_user.is_administrator()
|
||||
else:
|
||||
edit_only_roles = the_user.dept not in administrable_dept_acronyms
|
||||
|
@ -471,6 +471,7 @@ def user_change_login(user_name, new_user_name):
|
||||
is_flag=True,
|
||||
help="interdit login via ScoDoc",
|
||||
)
|
||||
@click.option("--dept", "dept", help="acronyme du départemùent de rattachement")
|
||||
@click.option(
|
||||
"-v",
|
||||
"--verbose",
|
||||
@ -487,6 +488,7 @@ def user_edit(
|
||||
disable_scodoc_login=None,
|
||||
activate=None,
|
||||
deactivate=None,
|
||||
dept=None,
|
||||
verbose=False,
|
||||
):
|
||||
"""Add or remove a role to the given user in the given dept"""
|
||||
@ -508,6 +510,10 @@ def user_edit(
|
||||
user.active = True
|
||||
if deactivate:
|
||||
user.active = False
|
||||
if dept:
|
||||
if dept == "@all":
|
||||
dept = None
|
||||
user.dept = dept
|
||||
db.session.add(user)
|
||||
db.session.commit()
|
||||
if verbose:
|
||||
|
Loading…
x
Reference in New Issue
Block a user