From 2e6ac8e60abc48e93df9be4d9a3a5a98d2436c07 Mon Sep 17 00:00:00 2001 From: Emmanuel Viennet Date: Fri, 15 Dec 2023 01:07:08 +0100 Subject: [PATCH] Avertissement + sortie des tableaux des modules APC en formation classiques. --- app/api/evaluations.py | 2 +- app/models/formsemestre.py | 9 ++++++ app/scodoc/sco_edit_ue.py | 42 +++++++++++++++------------ app/scodoc/sco_formsemestre_edit.py | 7 +++++ app/scodoc/sco_formsemestre_status.py | 9 +++++- app/static/css/scodoc.css | 5 ++++ 6 files changed, 53 insertions(+), 21 deletions(-) diff --git a/app/api/evaluations.py b/app/api/evaluations.py index 1834f8eb..60a03e9b 100644 --- a/app/api/evaluations.py +++ b/app/api/evaluations.py @@ -148,7 +148,7 @@ def evaluation_notes(evaluation_id: int): @scodoc @permission_required(Permission.EnsView) @as_json -def evaluation_set_notes(evaluation_id: int): +def evaluation_set_notes(evaluation_id: int): # evaluation-notes-set """Écriture de notes dans une évaluation. The request content type should be "application/json", and contains: diff --git a/app/models/formsemestre.py b/app/models/formsemestre.py index 8ddf542c..83d09fdd 100644 --- a/app/models/formsemestre.py +++ b/app/models/formsemestre.py @@ -400,6 +400,7 @@ class FormSemestre(db.Model): """Liste des modimpls du semestre (y compris bonus) - triée par type/numéro/code en APC - triée par numéros d'UE/matières/modules pour les formations standard. + Hors APC, élimine les modules de type ressources et SAEs. """ modimpls = self.modimpls.all() if self.formation.is_apc(): @@ -411,6 +412,14 @@ class FormSemestre(db.Model): ) ) else: + modimpls = [ + mi + for mi in modimpls + if ( + mi.module.module_type + not in (scu.ModuleType.RESSOURCE, scu.ModuleType.SAE) + ) + ] modimpls.sort( key=lambda m: ( m.module.ue.numero or 0, diff --git a/app/scodoc/sco_edit_ue.py b/app/scodoc/sco_edit_ue.py index bcc34327..232507ea 100644 --- a/app/scodoc/sco_edit_ue.py +++ b/app/scodoc/sco_edit_ue.py @@ -117,7 +117,7 @@ def do_ue_create(args): ues = ue_list({"formation_id": args["formation_id"], "acronyme": args["acronyme"]}) if ues: raise ScoValueError( - f"""Acronyme d'UE "{args['acronyme']}" déjà utilisé ! + f"""Acronyme d'UE "{args['acronyme']}" déjà utilisé ! (chaque UE doit avoir un acronyme unique dans la formation)""" ) if ( @@ -420,8 +420,8 @@ def ue_edit(ue_id=None, create=False, formation_id=None, default_semestre_idx=No "size": 12, "title": "Code UE", "max_length": SHORT_STR_LEN, - "explanation": """code interne (non vide). Toutes les UE partageant le même code - (et le même code de formation) sont compatibles (compensation de semestres, capitalisation d'UE). + "explanation": """code interne (non vide). Toutes les UE partageant le même code + (et le même code de formation) sont compatibles (compensation de semestres, capitalisation d'UE). Voir liste ci-dessous.""", "allow_null": False, }, @@ -764,7 +764,7 @@ def ue_table(formation_id=None, semestre_idx=1, msg=""): # was ue_list H.append( """

Cette formation est verrouillée car des semestres verrouillés s'y réferent. -Si vous souhaitez modifier cette formation (par exemple pour y ajouter un module), +Si vous souhaitez modifier cette formation (par exemple pour y ajouter un module), vous devez: