Fix: import users vide

This commit is contained in:
Emmanuel Viennet 2022-07-04 17:23:51 +02:00
parent b6052bf75f
commit fa358c2da4

View File

@ -150,22 +150,22 @@ def import_users(users, force=""):
* ok: import ok or aborted * ok: import ok or aborted
* messages: the list of messages * messages: the list of messages
* the # of users created * the # of users created
"""
""" Implémentation: Implémentation:
Pour chaque utilisateur à créer: Pour chaque utilisateur à créer:
* vérifier données (y compris que le même nom d'utilisateur n'est pas utilisé plusieurs fois) * vérifier données (y compris que le même nom d'utilisateur n'est pas utilisé plusieurs fois)
* générer mot de passe aléatoire * générer mot de passe aléatoire
* créer utilisateur et mettre le mot de passe * créer utilisateur et mettre le mot de passe
* envoyer mot de passe par mail * envoyer mot de passe par mail
Les utilisateurs à créer sont stockés dans un dictionnaire. Les utilisateurs à créer sont stockés dans un dictionnaire.
L'ajout effectif ne se fait qu'en fin de fonction si aucune erreur n'a été détectée L'ajout effectif ne se fait qu'en fin de fonction si aucune erreur n'a été détectée
""" """
created = {} # uid créés
if len(users) == 0: if len(users) == 0:
import_ok = False import_ok = False
msg_list = ["Feuille vide ou illisible"] msg_list = ["Feuille vide ou illisible"]
else: else:
created = {} # liste de uid créés
msg_list = [] msg_list = []
line = 1 # start from excel line #2 line = 1 # start from excel line #2
import_ok = True import_ok = True
@ -217,7 +217,7 @@ def import_users(users, force=""):
else: else:
import_ok = False import_ok = False
except ScoValueError as value_error: except ScoValueError as value_error:
log("import_users: exception: abort create %s" % str(created.keys())) log(f"import_users: exception: abort create {str(created.keys())}")
raise ScoValueError(msg) from value_error raise ScoValueError(msg) from value_error
if import_ok: if import_ok:
for u in created.values(): for u in created.values():
@ -228,7 +228,7 @@ def import_users(users, force=""):
db.session.commit() db.session.commit()
mail_password(u) mail_password(u)
else: else:
created = [] # reset # of created users to 0 created = {} # reset # of created users to 0
return import_ok, msg_list, len(created) return import_ok, msg_list, len(created)