Test des préférences

This commit is contained in:
2025-08-18 14:10:41 +02:00
parent 95127fbcaf
commit e3a268e10a

View File

@ -1,5 +1,5 @@
diff --git usr/bin/importation_scribe usr/bin/importation_scribe
index 0db4982..da2e69e 100755
index 0db4982..290d66e 100755
--- usr/bin/importation_scribe
+++ usr/bin/importation_scribe
@@ -42,21 +42,21 @@ choix de la source de données et imports
@ -25,7 +25,7 @@ index 0db4982..da2e69e 100755
class OutOfRange(Exception):
""" Exception OutOfRange """
@@ -458,33 +458,42 @@ class Console:
@@ -458,33 +458,44 @@ class Console:
"""
log.add_lock()
log.debuglog("Arrêt de LSC...", title=True)
@ -55,9 +55,11 @@ index 0db4982..da2e69e 100755
etab=etab)
+ if SUPPORT_ETAB:
+ old_dns = [login[0] for login in old_logins if login[1]['uid'] not in logins]
+ print(old_dns)
+ for old_dn in old_dns:
+ connexion._delete(old_dn)
+ if prefs.get_default('backup') == 'oui':
+ target = f'/home/backup/{etab}/'
+ print(f'copie dans {target}')
+
if self.data_type in ['sconet', 'aaf']:
writer.write_service(store=self.store, connexion=connexion,
@ -69,6 +71,57 @@ index 0db4982..da2e69e 100755
log.debuglog("Démarrage de LSC...", title=True)
nscd_start()
log.del_lock()
diff --git usr/lib/python3/dist-packages/scribe/importation/preferences.py usr/lib/python3/dist-packages/scribe/importation/preferences.py
index fdcb142..fe11e3b 100644
--- usr/lib/python3/dist-packages/scribe/importation/preferences.py
+++ usr/lib/python3/dist-packages/scribe/importation/preferences.py
@@ -141,20 +141,24 @@ PREF_MAIL = ['mail', 'liste',
('perso_internet', 'adresse fournie ou domaine Internet'),
('perso_aucune', 'adresse fournie ou aucune'),
('restreint', 'adresse locale, domaine restreint'),
('internet', 'adresse locale, domaine Internet'),
('aucune', 'aucune adresse'),
)]
PREF_PREFIX_ETAB = ['etab_prefix', 'texte',
"Préfixe des groupes de l'établissement", ""]
+PREF_PURGE = ['backup', 'liste',
+ "Sauvegarde des données des utilisateurs supprimés",
+ (('oui', 'oui'), ('non', 'non'))]
+
if dico.get('activer_nfs', 'non') == 'oui' or 'interface_client_ltsp' in dico:
DEFAULT_CHANGE_PWD = 'non'
DEFAULT_SHELL = 'oui'
else:
DEFAULT_CHANGE_PWD = 'oui'
DEFAULT_SHELL = 'non'
def get_etab():
"""
charge les établissements à chaque fois qu'on le demande
@@ -211,20 +215,21 @@ def get_responsables_prefs():
return Preferences(prefs_resp, PREF_FILES['responsable'])
def get_enseignants_prefs():
""" préférences pour les enseignants """
prefs_ens = [ Preference(default='0', *PREF_QUOTA),
Preference(*PREF_LOGIN),
Preference(default=DEFAULT_SHELL, *PREF_SHELL),
Preference(default='1', *PREF_PROFIL),
Preference(default='perso_aucune', *PREF_MAIL),
+ Preference(default='oui', *PREF_PURGE),
]
if FORCED_PASSWORD_MODIFICATION_ALLOWED:
prefs_ens.insert(2, Preference(default=DEFAULT_CHANGE_PWD, *PREF_CHANGE_PWD))
if SUPPORT_ETAB:
prefs_ens.insert(0, Preference(*get_etab()))
prefs_ens.insert(1, Preference(*PREF_PREFIX_ETAB))
prefs_ens.append(Preference(*get_etabprefix()))
return Preferences(prefs_ens, PREF_FILES['enseignant'])
def get_administratifs_prefs():
diff --git usr/lib/python3/dist-packages/scribe/importation/writer.py usr/lib/python3/dist-packages/scribe/importation/writer.py
index 34ce0fb..40865d5 100644
--- usr/lib/python3/dist-packages/scribe/importation/writer.py