maintenance.exl_mathCours
Module de scripts (à exécuter localement) spécifiques au dépôt de cours et complétant les commandes définies dans le manifeste.
Modifié le 30/03/23 @author: remy
Ce module est importé par l'instanciation de l'objet Execlocal
.
Les traitements sont exécutés par la fonction exec()
du module.
1# -*- coding: utf-8 -*- 2""" 3Module de scripts (à exécuter localement) spécifiques au dépôt de cours et complétant les commandes définies dans le manifeste. 4 5Modifié le 30/03/23 @author: remy 6 7Ce module est importé par l'instanciation de l'objet `Execlocal`. 8Les traitements sont exécutés par la fonction `exec()` du module. 9 10""" 11import csv 12import glob 13import os.path 14import re 15import scantex 16 17 18dp_data = {} 19dp_data['relative_path'] = '../math-cours/' 20relpath = '../math-pbs/' 21lineprefix = "\n \t \t \t" 22 23def exec(data): 24 """ 25 Exécute les traitements spécifiques et complète le journal. 26 27 - Extrait la liste des indexations 28 - Associe le nom du fichier à son titre 29 30 #### Paramètres 31 `data`: données d'exécution locale, valeur de `execloc` dans le dictionnaire `manifeste` défini par le module d'initialisation [`init_mathPbs`](init_mathPbs.html). 32 33 34 #### Renvoie 35 36 TYPE : dictionnaire 37 38 `log`: journal de l'exécution des scripts 39 `specific_results`: dictionnaire 40 `indexations`: liste d'indexations 41 `titres`: associe nom fichier au titre. structure à préciser 42 43 """ 44 log = lineprefix + 'Scripts du module spécifique (fonction exec())' 45 46 # renseigne la propriété .indexations 47 idx_path_pattern = data['context_data']['idx_path_pattern'] 48 indexations = scantex.get_liste_indexations(idx_path_pattern) 49 log += lineprefix + str(len(indexations)) + " indexations \n" 50 51 # renseigne la propriété .titres 52 cours_path_pattern = data['context_data']['cours_path_pattern'] 53 noms = [] 54 noms.extend(glob.glob(cours_path_pattern)) 55 titres = [] 56 for nom in noms: 57 if "_expo" not in nom: 58 titre = scantex.get_entre_tags(nom,'\debutcours{','}') 59 titres.append([nom, titre]) 60 titres.sort(key=lambda paire: paire[0]) 61 62 specific_results = { 63 'indexations': indexations, 64 'titres': titres 65 } 66 67 return {'log': log, 'specific_results': specific_results}
def
exec(data):
24def exec(data): 25 """ 26 Exécute les traitements spécifiques et complète le journal. 27 28 - Extrait la liste des indexations 29 - Associe le nom du fichier à son titre 30 31 #### Paramètres 32 `data`: données d'exécution locale, valeur de `execloc` dans le dictionnaire `manifeste` défini par le module d'initialisation [`init_mathPbs`](init_mathPbs.html). 33 34 35 #### Renvoie 36 37 TYPE : dictionnaire 38 39 `log`: journal de l'exécution des scripts 40 `specific_results`: dictionnaire 41 `indexations`: liste d'indexations 42 `titres`: associe nom fichier au titre. structure à préciser 43 44 """ 45 log = lineprefix + 'Scripts du module spécifique (fonction exec())' 46 47 # renseigne la propriété .indexations 48 idx_path_pattern = data['context_data']['idx_path_pattern'] 49 indexations = scantex.get_liste_indexations(idx_path_pattern) 50 log += lineprefix + str(len(indexations)) + " indexations \n" 51 52 # renseigne la propriété .titres 53 cours_path_pattern = data['context_data']['cours_path_pattern'] 54 noms = [] 55 noms.extend(glob.glob(cours_path_pattern)) 56 titres = [] 57 for nom in noms: 58 if "_expo" not in nom: 59 titre = scantex.get_entre_tags(nom,'\debutcours{','}') 60 titres.append([nom, titre]) 61 titres.sort(key=lambda paire: paire[0]) 62 63 specific_results = { 64 'indexations': indexations, 65 'titres': titres 66 } 67 68 return {'log': log, 'specific_results': specific_results}
Exécute les traitements spécifiques et complète le journal.
- Extrait la liste des indexations
- Associe le nom du fichier à son titre
Paramètres
data
: données d'exécution locale, valeur de execloc
dans le dictionnaire manifeste
défini par le module d'initialisation init_mathPbs
.
Renvoie
TYPE : dictionnaire
`log`: journal de l'exécution des scripts
`specific_results`: dictionnaire
`indexations`: liste d'indexations
`titres`: associe nom fichier au titre. structure à préciser