exporter la liste des logins traités

This commit is contained in:
2025-08-19 11:19:07 +02:00
parent ff07c408a3
commit e7670893f2

View File

@ -263,7 +263,7 @@ index 05569fd..c092698 100644
def _get_ead_type(self, login): def _get_ead_type(self, login):
diff --git usr/lib/python3/dist-packages/scribe/importation/writer.py usr/lib/python3/dist-packages/scribe/importation/writer.py diff --git usr/lib/python3/dist-packages/scribe/importation/writer.py usr/lib/python3/dist-packages/scribe/importation/writer.py
index 34ce0fb..d03d427 100644 index 34ce0fb..d4a2f27 100644
--- usr/lib/python3/dist-packages/scribe/importation/writer.py --- usr/lib/python3/dist-packages/scribe/importation/writer.py
+++ usr/lib/python3/dist-packages/scribe/importation/writer.py +++ usr/lib/python3/dist-packages/scribe/importation/writer.py
@@ -832,25 +832,26 @@ def _maj_enseignant(enseignant, user, login, etab, administratif=False): @@ -832,25 +832,26 @@ def _maj_enseignant(enseignant, user, login, etab, administratif=False):
@ -295,3 +295,57 @@ index 34ce0fb..d03d427 100644
groups.append('profs-%s' % str(option.nom)) groups.append('profs-%s' % str(option.nom))
disciplines = eval(enseignant.disciplines) disciplines = eval(enseignant.disciplines)
else: else:
@@ -885,20 +886,21 @@ def write_enseignant(store, connexion, etab=None, current_ead_user=config.DEFAUL
log.write_header(config.ENS_HEADER, config.ENS_INFO)
user = LdapEnseignant()
user.ldap_admin = connexion
prefs = preferences.get_enseignants_prefs()
quota = prefs.get_default('quota')
if FORCED_PASSWORD_MODIFICATION_ALLOWED:
change_pwd = prefs.get_default('change_pwd') == 'oui'
else:
change_pwd = False
new_passwords = []
+ logins = []
for enseignant in store.query(Enseignant):
if enseignant.force_login:
# login forcé
if user._is_enseignant(str(enseignant.force_login)):
login = str(enseignant.force_login)
else:
login = ''
else:
login = _enseignant_exists(enseignant, user)
if login != '':
@@ -909,29 +911,31 @@ def write_enseignant(store, connexion, etab=None, current_ead_user=config.DEFAUL
if str(enseignant.nom) == '' or str(enseignant.prenom) == '':
log.infolog("Enseignant n°%s invalide" % str(enseignant.int_id))
continue
try:
login = _new_enseignant(enseignant, user, prefs, etab=etab, new_passwords=new_passwords)
except BadLogin as message:
log.infolog(str(message))
continue
# enregistrement du login attribué
enseignant.login = str(login)
+ logins.append(enseignant.login)
num += 1
if num % config.DEBUG_NUM == 0:
log.debuglog("%d enseignants traités..." % num)
if EOLE_AD:
_sync_passwords(user, new_passwords, change_pwd=change_pwd)
_create_dirs(user, quota, new_passwords)
log.infolog("TOTAL : %d enseignants" % num)
if num != 0:
log.copy_info(config.ENS_INFO, user=current_ead_user)
+ return logins
# -------------------- administratifs -------------------- #
def _new_administratif(administratif, user, prefs, etab=None, new_passwords=[]):
"""
traitement d'un nouvel administratif (création)
administratif : store.Administratif()
user : eoleuser.Administratif()
"""