Test de script pour trouver des comptes à vérifier
This commit is contained in:
@ -3,6 +3,9 @@
|
||||
import xml.etree.ElementTree as ET
|
||||
from pathlib import Path
|
||||
from scribe.eoleldap import get_etabs
|
||||
from scribe.enseignants import Enseignant
|
||||
from scribe.eoleldap import Ldap
|
||||
|
||||
|
||||
current_etabs = get_etabs()[1]
|
||||
|
||||
@ -40,6 +43,11 @@ for xml in root.glob('**/sts_emp*.xml'):
|
||||
|
||||
etabs = list(set(etabs))
|
||||
|
||||
def guess_uid(individu):
|
||||
nom = individu[0]['nom']
|
||||
prenom = individu[0]['prenom']
|
||||
return f"{prenom.lower()}.{nom.lower()}"
|
||||
|
||||
if __name__ == '__main__':
|
||||
from argparse import ArgumentParser
|
||||
parser = ArgumentParser()
|
||||
@ -61,6 +69,18 @@ if __name__ == '__main__':
|
||||
result = current_etabs
|
||||
elif args.type == 'etabs':
|
||||
result = etabs
|
||||
elif args.type == 'candidates':
|
||||
connexion = Ldap()
|
||||
connexion.connect()
|
||||
user = Enseignant()
|
||||
user.ldap_admin = connexion
|
||||
candidates = {user.get_attr(candidate, 'intid')[0]: [etab]
|
||||
for etab in etabs
|
||||
for candidate in connexion._search('(&(objectclass=eolegroupe)(type=etablissement)(cn={etab}))'.format(etab=etab),
|
||||
['memberUid'])[0][1]['memberUid']
|
||||
if user._is_enseignant(candidate)}
|
||||
result = ["{}\t{}".format(e[0]['nom'], " ".join(sorted(set(e)) + candidates[candidate])) for candidate in candidates for e in repartition[candidate] if len(set(e)) > 1]
|
||||
|
||||
else:
|
||||
result = []
|
||||
print("\n".join(sorted(result)))
|
||||
|
Reference in New Issue
Block a user