diff --git a/ZAbsences.py b/ZAbsences.py index 08e429d..34fe59e 100644 --- a/ZAbsences.py +++ b/ZAbsences.py @@ -957,6 +957,17 @@ class ZAbsences( self.getEtudInfo(etudid=m["etudid"], filled=True)[0] for m in groups_infos.members ] + # Restreint aux inscrits au module sélectionné + if moduleimpl_id: + mod_inscrits = set( + [ + x["etudid"] + for x in self.Notes.do_moduleimpl_inscription_list( + moduleimpl_id=moduleimpl_id + ) + ] + ) + etuds = [e for e in etuds if e["etudid"] in mod_inscrits] nt = self.Notes._getNotesCache().get_NotesTable(self.Notes, formsemestre_id) sem = sco_formsemestre.do_formsemestre_list( self, {"formsemestre_id": formsemestre_id} @@ -1074,14 +1085,23 @@ class ZAbsences( + "

Aucun étudiant !

" + self.sco_footer(REQUEST) ) - 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 ] - + # Restreint aux inscrits au module sélectionné + if moduleimpl_id: + mod_inscrits = set( + [ + x["etudid"] + for x in self.Notes.do_moduleimpl_inscription_list( + moduleimpl_id=moduleimpl_id + ) + ] + ) + etuds = [e for e in etuds if e["etudid"] in mod_inscrits] if not moduleimpl_id: moduleimpl_id = None base_url_noweeks = "SignaleAbsenceGrSemestre?datedebut=%s&datefin=%s&%s&destination=%s" % (