diff --git a/ZAbsences.py b/ZAbsences.py index d450d09f..294cfbca 100644 --- a/ZAbsences.py +++ b/ZAbsences.py @@ -951,6 +951,7 @@ class ZAbsences( ) formsemestre_id = groups_infos.formsemestre_id + require_module = self.get_preference("abs_require_module", formsemestre_id) etuds = [ self.getEtudInfo(etudid=m["etudid"], filled=True)[0] for m in groups_infos.members @@ -1042,7 +1043,9 @@ class ZAbsences( % {"menu_module": menu_module, "url": base_url, "sel": sel} ) - H += self._gen_form_saisie_groupe(etuds, datessem, destination, moduleimpl_id) + H += self._gen_form_saisie_groupe( + etuds, datessem, destination, moduleimpl_id, require_module + ) H.append(self.sco_footer(REQUEST)) return "\n".join(H) @@ -1072,6 +1075,7 @@ class ZAbsences( ) formsemestre_id = groups_infos.formsemestre_id + require_module = self.get_preference("abs_require_module", formsemestre_id) etuds = [ self.getEtudInfo(etudid=m["etudid"], filled=True)[0] for m in groups_infos.members @@ -1200,19 +1204,32 @@ class ZAbsences( sel = "selected" # aucun module specifie H.append( """
- Module concerné par ces absences (optionnel):
""" - % {"menu_module": menu_module, "url": base_url, "sel": sel} + % { + "menu_module": menu_module, + "url": base_url, + "sel": sel, + "optionel_txt": 'requis' + if require_module + else "optionnel", + } ) - H += self._gen_form_saisie_groupe(etuds, dates, destination, moduleimpl_id) + H += self._gen_form_saisie_groupe( + etuds, dates, destination, moduleimpl_id, require_module + ) H.append(self.sco_footer(REQUEST)) return "\n".join(H) - def _gen_form_saisie_groupe(self, etuds, dates, destination="", moduleimpl_id=None): + def _gen_form_saisie_groupe( + self, etuds, dates, destination="", moduleimpl_id=None, require_module=False + ): """Formulaire saisie absences Args: @@ -1223,6 +1240,9 @@ class ZAbsences( H = [ """ +Module:
+ Module:
-Absence justifiée.
+Absence justifiée.
-
+
- Seuls les modules du semestre en cours apparaissent. Evitez de saisir une absence pour un module qui n'est pas en place à cette date. Toutes les dates sont au format jour/mois/annee Seuls les modules du semestre en cours apparaissent. Évitez de saisir une absence pour un module qui n'est pas en place à cette date. Toutes les dates sont au format jour/mois/annee.
-
Date début :
+Date début :
j/m/a
- Date Fin (optionnel):
+ Date fin (optionnelle):
j/m/a
-journée(s)
+Journée(s)
Matin(s)
- Après midi
+ Après-midi
%(menu_module)s
Raison: (optionnel)
-journée(s)
+Journée(s)
Matin(s)
Après midi
@@ -473,7 +509,7 @@ def doAnnuleJustif(
dates = context.DateRangeISO(datedebut0, datefin0)
nbadded = 0
for jour in dates:
- # Attention: supprime matin et après midi
+ # Attention: supprime matin et après-midi
if demijournee == "2":
context._AnnuleJustif(etudid, jour, False, REQUEST=REQUEST)
context._AnnuleJustif(etudid, jour, True, REQUEST=REQUEST)
@@ -553,7 +589,6 @@ def formChoixSemestreGroupe(context, all=False):
if not sems:
raise ScoValueError("aucun semestre !")
H = ['