diff --git a/app/pe/pe_view.py b/app/pe/pe_view.py
index 47eab917..f67fb320 100644
--- a/app/pe/pe_view.py
+++ b/app/pe/pe_view.py
@@ -35,111 +35,44 @@
"""
-from flask import flash, g, redirect, request, send_file, url_for
+from flask import flash, g, redirect, render_template, request, send_file, url_for
from app.models import FormSemestre
-from app.scodoc.sco_exceptions import ScoValueError
-
-import app.scodoc.sco_utils as scu
-from app.scodoc import html_sco_header
-
from app.pe import pe_comp
from app.pe import pe_jury
-
-
-def _pe_view_sem_recap_form(formsemestre_id):
- sem_base = FormSemestre.get_formsemestre(formsemestre_id)
- if not sem_base.formation.is_apc() or sem_base.formation.get_cursus().NB_SEM < 6:
- H = [
- html_sco_header.sco_header(page_title="Avis de poursuite d'études"),
- """
-
- Cette fonction génère un ensemble de fichiers permettant d'éditer des avis de
- poursuites d'études.
-
- De nombreux aspects sont paramétrables:
-
- voir la documentation (en cours de révision)
- .
- Cette fonction (en Scodoc9) n'est prévue que pour le BUT.
-
- Rendez-vous donc sur un semestre de BUT.
-
- """,
- ]
- return "\n".join(H) + html_sco_header.sco_footer()
-
- # L'année du diplome
- diplome = pe_comp.get_annee_diplome_semestre(sem_base)
-
- H = [
- html_sco_header.sco_header(page_title="Avis de poursuite d'études"),
- f"""
-
-
- Fonction expérimentale pour le BUT : travaux en cours, merci de tester
- et de faire part de vos expériences sur le Discord.
-
-
-
- Cette fonction génère un ensemble de fichiers permettant d'éditer des avis de
- poursuites d'études pour les étudiants diplômés en {diplome}.
-
- De nombreux aspects sont paramétrables:
-
- voir la documentation
- (en cours de révision).
-
-
- """,
- ]
- return "\n".join(H) + html_sco_header.sco_footer()
+from app.views import ScoData
+from app.scodoc.sco_exceptions import ScoValueError
+import app.scodoc.sco_utils as scu
# called from the web, POST or GET
-def pe_view_sem_recap(
- formsemestre_id,
- avis_tmpl_file=None,
- footer_tmpl_file=None,
-):
+def pe_view_sem_recap(formsemestre_id: int):
"""Génération des avis de poursuite d'étude"""
- if request.method == "GET":
- return _pe_view_sem_recap_form(formsemestre_id)
- sem_base = FormSemestre.get_formsemestre(formsemestre_id)
- if not sem_base.formation.is_apc():
+ formsemestre = FormSemestre.get_formsemestre(formsemestre_id)
+ if not formsemestre.formation.is_apc():
raise ScoValueError(
- "Le module de Poursuites d'Etudes avec Scodoc 9 n'est disponible que pour des formations BUT"
+ """Le module de Poursuites d'Etudes
+ n'est disponible que pour des formations BUT"""
)
- if sem_base.formation.get_cursus().NB_SEM < 6:
+ if formsemestre.formation.get_cursus().NB_SEM < 6:
raise ScoValueError(
- "Le module de Poursuites d'Etudes avec Scodoc 9 n'est pas prévu pour une formation de moins de 6 semestres"
+ """Le module de Poursuites d'Etudes n'est pas prévu
+ pour une formation de moins de 6 semestres"""
)
-
# L'année du diplome
- diplome = pe_comp.get_annee_diplome_semestre(sem_base)
+ annee_diplome = pe_comp.get_annee_diplome_semestre(formsemestre)
- jury = pe_jury.JuryPE(diplome, sem_base.formation.formation_id)
+ if request.method == "GET":
+ return render_template(
+ "pe/pe_view_sem_recap.j2",
+ annee_diplome=annee_diplome,
+ formsemestre=formsemestre,
+ sco=ScoData(formsemestre=formsemestre),
+ )
+
+ jury = pe_jury.JuryPE(annee_diplome, formsemestre.formation.formation_id)
if not jury.diplomes_ids:
flash("aucun étudiant à considérer !")
return redirect(
diff --git a/app/scodoc/sco_formsemestre_status.py b/app/scodoc/sco_formsemestre_status.py
index 20d3ec65..21b8adf4 100755
--- a/app/scodoc/sco_formsemestre_status.py
+++ b/app/scodoc/sco_formsemestre_status.py
@@ -81,8 +81,9 @@ from app.scodoc.sco_formsemestre_custommenu import formsemestre_custommenu_html
import sco_version
-def _build_menu_stats(formsemestre_id):
+def _build_menu_stats(formsemestre: FormSemestre):
"Définition du menu 'Statistiques'"
+ formsemestre_id = formsemestre.id
return [
{
"title": "Statistiques...",
@@ -123,7 +124,8 @@ def _build_menu_stats(formsemestre_id):
"title": "Documents Avis Poursuite Etudes (xp)",
"endpoint": "notes.pe_view_sem_recap",
"args": {"formsemestre_id": formsemestre_id},
- "enabled": True, # current_app.config["TESTING"] or current_app.config["DEBUG"],
+ "enabled": formsemestre.formation.is_apc(),
+ # current_app.config["TESTING"] or current_app.config["DEBUG"],
},
{
"title": 'Table "débouchés"',
@@ -462,7 +464,7 @@ def formsemestre_status_menubar(formsemestre: FormSemestre) -> str:
},
]
- menu_stats = _build_menu_stats(formsemestre_id)
+ menu_stats = _build_menu_stats(formsemestre)
H = [
'
+
+{% endblock app_content %}
\ No newline at end of file