From e1cda28c4785f5f18e5524fd6f599f8684d19f36 Mon Sep 17 00:00:00 2001
From: Emmanuel Viennet <emmanuel.viennet@gmail.com>
Date: Thu, 24 Jun 2021 18:54:59 +0200
Subject: [PATCH] extension code Apogee multiples pour UE (JMP)

---
 app/scodoc/sco_apogee_csv.py | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/app/scodoc/sco_apogee_csv.py b/app/scodoc/sco_apogee_csv.py
index 49200e859..6ac6d5ec4 100644
--- a/app/scodoc/sco_apogee_csv.py
+++ b/app/scodoc/sco_apogee_csv.py
@@ -90,6 +90,7 @@ from cStringIO import StringIO
 from zipfile import ZipFile
 import pprint
 
+# Pour la détection auto de l'encodage des fichiers Apogée:
 try:
     from chardet import detect as chardet_detect
 except:
@@ -438,7 +439,7 @@ class ApoEtud(dict):
         # Elements UE
         decisions_ue = nt.get_etud_decision_ues(etudid)
         for ue in nt.get_ues():
-            if ue["code_apogee"] == code:
+            if code in ue["code_apogee"].split(","):
                 if self.export_res_ues:
                     if decisions_ue and ue["ue_id"] in decisions_ue:
                         ue_status = nt.get_etud_ue_status(etudid, ue["ue_id"])
@@ -459,7 +460,7 @@ class ApoEtud(dict):
         modimpls = nt.get_modimpls()
         module_code_found = False
         for modimpl in modimpls:
-            if modimpl["module"]["code_apogee"] == code:
+            if code in modimpl["module"]["code_apogee"].split(","):
                 n = nt.get_etud_mod_moy(modimpl["moduleimpl_id"], etudid)
                 if n != "NI" and self.export_res_modules:
                     return dict(N=_apo_fmt_note(n), B=20, J="", R="")
@@ -988,13 +989,13 @@ class ApoData:
                     self.context, sem["formsemestre_id"]
                 )
                 for ue in nt.get_ues():
-                    if ue["code_apogee"] == code:
+                    if code in ue["code_apogee"].split(","):
                         s.add(code)
                         continue
                 # associé à un module:
                 modimpls = nt.get_modimpls()
                 for modimpl in modimpls:
-                    if modimpl["module"]["code_apogee"] == code:
+                    if code in modimpl["module"]["code_apogee"].split(","):
                         s.add(code)
                         continue
         # log('codes_by_sem=%s' % pprint.pformat(codes_by_sem))