{title}, (formation {formation.acronyme}, version {formation.version})
Les UEs sont des groupes de modules dans une formation donnée,
utilisés pour la validation (on calcule des moyennes par UE et applique des
@@ -529,9 +532,8 @@ def ue_edit(ue_id=None, create=False, formation_id=None, default_semestre_idx=No
-
- {html_sco_header.sco_footer()}
- """
+ """,
+ )
elif tf[0] == 1:
if create:
if not tf[2]["ue_code"]:
diff --git a/app/scodoc/sco_evaluations.py b/app/scodoc/sco_evaluations.py
index a961ecb33..400729705 100644
--- a/app/scodoc/sco_evaluations.py
+++ b/app/scodoc/sco_evaluations.py
@@ -486,7 +486,8 @@ def formsemestre_evaluations_cal(formsemestre_id):
{ cal_html }
-
soit {nb_evals} évaluations planifiées;
+
+
soit {nb_evals} évaluations planifiées :
en voir les délais de correction
+
""",
)
diff --git a/app/scodoc/sco_excel.py b/app/scodoc/sco_excel.py
index 8a30e92e3..acd4293c2 100644
--- a/app/scodoc/sco_excel.py
+++ b/app/scodoc/sco_excel.py
@@ -825,7 +825,7 @@ def excel_feuille_listeappel(
ws.append_blank_row()
# bas de page (date, serveur)
- dt = time.strftime("%d/%m/%Y à %Hh%M")
+ dt = time.strftime(scu.DATEATIME_FMT)
if server_name:
dt += " sur " + server_name
cell_2 = ws.make_cell(("Liste éditée le " + dt), style1i)
diff --git a/app/scodoc/sco_formation_recap.py b/app/scodoc/sco_formation_recap.py
index 0cc10c306..71c08c9c1 100644
--- a/app/scodoc/sco_formation_recap.py
+++ b/app/scodoc/sco_formation_recap.py
@@ -174,7 +174,9 @@ def formation_table_recap(formation: Formation, fmt="html") -> Response:
preferences=sco_preferences.SemPreferences(),
table_id="formation_table_recap",
)
- return tab.make_page(fmt=fmt, javascripts=["js/formation_recap.js"])
+ return tab.make_page(
+ fmt=fmt, javascripts=["js/formation_recap.js"], template="sco_page_dept.j2"
+ )
def export_recap_formations_annee_scolaire(annee_scolaire):
diff --git a/app/scodoc/sco_formation_versions.py b/app/scodoc/sco_formation_versions.py
index 8fbf3931f..b532146c4 100644
--- a/app/scodoc/sco_formation_versions.py
+++ b/app/scodoc/sco_formation_versions.py
@@ -149,6 +149,7 @@ def formsemestre_associate_new_version(
"formation_id": formation_id,
"formsemestre_id": formsemestre_id,
},
+ template="sco_page_dept.j2",
)
elif request.method == "POST":
if formsemestre_id is not None: # pas dans le form car checkbox disabled
diff --git a/app/scodoc/sco_formsemestre_edit.py b/app/scodoc/sco_formsemestre_edit.py
index 1058cf7af..e607b2cd0 100644
--- a/app/scodoc/sco_formsemestre_edit.py
+++ b/app/scodoc/sco_formsemestre_edit.py
@@ -60,7 +60,6 @@ from app.scodoc.TrivialFormulator import TrivialFormulator
from app.scodoc.sco_exceptions import AccessDenied, ScoValueError
from app.scodoc.sco_permissions import Permission
from app.scodoc.sco_vdi import ApoEtapeVDI
-from app.scodoc import html_sco_header
from app.scodoc import codes_cursus
from app.scodoc import sco_edit_module
from app.scodoc import sco_formsemestre
@@ -80,20 +79,20 @@ def _default_sem_title(formation):
def formsemestre_createwithmodules():
"""Page création d'un semestre"""
- H = [
- html_sco_header.sco_header(
- page_title="Création d'un semestre",
- javascripts=["libjs/AutoSuggest.js", "js/formsemestre_edit.js"],
- cssstyles=["css/autosuggest_inquisitor.css"],
- ),
- """
')
disable_abs: str | bool = scass.has_assiduites_disable_pref(formsemestre)
show_abs: str = "hidden" if disable_abs else ""
@@ -812,6 +812,8 @@ def _make_listes_sem(formsemestre: FormSemestre) -> str:
groups = partition.groups.all()
effectifs = {g.id: g.get_nb_inscrits() for g in groups}
partition_is_empty = sum(effectifs.values()) == 0
+ if partition_is_empty and (partition.is_default() or partition.is_parcours()):
+ continue # inutile de montrer des partitions vides non éditables
H.append(
f"""
") # /sem-groups-assi
- if partition_is_empty and not partition.is_default():
+ if partition_is_empty and not (
+ partition.is_default() or partition.is_parcours()
+ ):
H.append(
'
Aucun groupe peuplé dans cette partition'
)
@@ -924,41 +928,72 @@ def _make_listes_sem(formsemestre: FormSemestre) -> str:
H.append("
")
H.append("
") # /sem-groups-partition
+ # Boite avec liens divers
+ autres_liens = []
if formsemestre.can_change_groups():
- H.append(
- f"""
"""
+ """
+ )
+
+ # --- Lien pour mail aux enseignants
+ # Construit la liste de tous les enseignants de ce semestre:
+ mails_enseignants = set(u.email for u in formsemestre.responsables)
+ for modimpl in formsemestre.modimpls_sorted:
+ mails_enseignants.add(sco_users.user_info(modimpl.responsable_id)["email"])
+ mails_enseignants |= {u.email for u in modimpl.enseignants if u.email}
+ adrlist = list(mails_enseignants - {None, ""})
+ if adrlist:
+ autres_liens.append(
+ f"""
+ Courrier aux {
+ len(adrlist)} enseignants du semestre
+ """
+ )
+
+ # Met le tout en boite
+ if autres_liens:
+ H.append(
+ f"""
+
+
+
+
{'
'.join(autres_liens)}
+
+
+
+ """
)
H.append("
")
@@ -1033,8 +1068,9 @@ def formsemestre_status_head(formsemestre_id: int = None, page_title: str = None
)
if evals["last_modif"]:
H.append(
- " (dernière note saisie le %s)"
- % evals["last_modif"].strftime("%d/%m/%Y à %Hh%M")
+ f""" (dernière note saisie le {
+ evals["last_modif"].strftime(scu.DATEATIME_FMT)
+ })"""
)
H.append("")
H.append("")
@@ -1073,12 +1109,6 @@ def formsemestre_status(formsemestre_id=None, check_parcours=True):
modimpls = formsemestre.modimpls_sorted
nt = res_sem.load_formsemestre_results(formsemestre)
- # Construit la liste de tous les enseignants de ce semestre:
- mails_enseignants = set(u.email for u in formsemestre.responsables)
- for modimpl in modimpls:
- mails_enseignants.add(sco_users.user_info(modimpl.responsable_id)["email"])
- mails_enseignants |= {u.email for u in modimpl.enseignants if u.email}
-
can_edit = formsemestre.can_be_edited_by(current_user)
can_change_all_notes = current_user.has_permission(Permission.EditAllNotes) or (
current_user.id in [resp.id for resp in formsemestre.responsables]
@@ -1206,20 +1236,11 @@ def formsemestre_status(formsemestre_id=None, check_parcours=True):
)
# --- LISTE DES ETUDIANTS
H += [
- '
DUT 120 spécialité {{formsemestre.formation.referentiel_competence.specialite_long}}
- enregistré le {{time.strftime("%d/%m/%Y à %Hh%M")}}
+ enregistré le {{time.strftime(scu.DATEATIME_FMT)}}
diff --git a/app/templates/formation/ue_assoc_parcours_ects.j2 b/app/templates/formation/ue_assoc_parcours_ects.j2
index 290d0d169..c4ee778fa 100644
--- a/app/templates/formation/ue_assoc_parcours_ects.j2
+++ b/app/templates/formation/ue_assoc_parcours_ects.j2
@@ -1,5 +1,5 @@
{# Association d'ECTS à une UE par parcours #}
-{% extends "sco_page.j2" %}
+{% extends "sco_page_dept.j2" %}
{% import 'wtf.j2' as wtf %}
{% block styles %}
@@ -23,18 +23,20 @@