{
@@ -196,7 +203,14 @@ def _gen_but_niveau_ue(
"""
else:
moy_ue_str = f"""{scu.fmt_note(dec_ue.moy_ue)}"""
- scoplement = ""
+ if dec_ue.code_valide:
+ scoplement = f"""
+ Code {dec_ue.code_valide} enregistré le {dec_ue.validation.event_date.strftime("%d/%m/%Y")}
+ à {dec_ue.validation.event_date.strftime("%Hh%M")}
+
+ """
+ else:
+ scoplement = ""
return f"""{
_gen_but_select("code_ue_"+str(ue.id),
- dec_ue.codes,
- dec_ue.code_valide, disabled=disabled
+ dec_ue.codes,
+ dec_ue.code_valide,
+ disabled=disabled,
+ klass=f"code_ue ue_rcue_{niveau_id}" if not disabled else ""
)
}
@@ -250,12 +266,13 @@ def _gen_but_rcue(dec_rcue: DecisionsProposeesRCUE, niveau: ApcNiveau) -> str:
{scoplement}
-
{_gen_but_select("code_rcue_"+str(niveau.id),
+ {_gen_but_select("code_rcue_"+str(niveau.id),
dec_rcue.codes,
dec_rcue.code_valide,
- disabled=True, klass="manual"
+ disabled=True,
+ klass="manual code_rcue",
+ data = { "niveau_id" : str(niveau.id)}
)}
-
"""
@@ -274,17 +291,15 @@ def jury_but_semestriel(
semestre_terminal = (
formsemestre.semestre_id >= formsemestre.formation.get_parcours().NB_SEM
)
+ autorisations_passage = ScolarAutorisationInscription.query.filter_by(
+ etudid=etud.id,
+ origin_formsemestre_id=formsemestre.id,
+ ).all()
# Par défaut: autorisé à passer dans le semestre suivant si sem. impair,
# ou si décision déjà enregistrée:
est_autorise_a_passer = (formsemestre.semestre_id % 2) or (
formsemestre.semestre_id + 1
- ) in (
- a.semestre_id
- for a in ScolarAutorisationInscription.query.filter_by(
- etudid=etud.id,
- origin_formsemestre_id=formsemestre.id,
- )
- )
+ ) in (a.semestre_id for a in autorisations_passage)
decisions_ues = {
ue.id: DecisionsProposeesUE(etud, formsemestre, ue, inscription_etat)
for ue in ues
@@ -308,7 +323,9 @@ def jury_but_semestriel(
flash("codes enregistrés")
if not semestre_terminal:
if request.form.get("autorisation_passage"):
- if not est_autorise_a_passer:
+ if not formsemestre.semestre_id + 1 in (
+ a.semestre_id for a in autorisations_passage
+ ):
ScolarAutorisationInscription.autorise_etud(
etud.id,
formsemestre.formation.formation_code,
@@ -368,21 +385,31 @@ def jury_but_semestriel(
}">{etud.photo_html(title="fiche de " + etud.nomprenom)}
- Jury sur un semestre BUT isolé
+ Jury sur un semestre BUT isolé (ne concerne que les UEs)
{warning}