mtn_dpt.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}
dp_data = {'relative_path': '../math-cours/'}
relpath = '../math-pbs/'
lineprefix = '\n \t \t \t'
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