diff --git a/app/scodoc/sco_formsemestre_status.py b/app/scodoc/sco_formsemestre_status.py
index ec09a508..ee15cc41 100755
--- a/app/scodoc/sco_formsemestre_status.py
+++ b/app/scodoc/sco_formsemestre_status.py
@@ -838,16 +838,6 @@ def _make_listes_sem(formsemestre: FormSemestre) -> str:
H.append(
f"""
-
str:
Route utilisée uniquement si la date courante n'est pas dans le semestre
concerné par la requête vers une des pages suivantes :
- saisie_assiduites_group
- - visu_assiduites_group
-
"""
formsemestre_id = request.args.get("formsemestre_id")
formsemestre: FormSemestre = FormSemestre.query.get_or_404(formsemestre_id)
@@ -989,11 +987,7 @@ def choix_date() -> str:
if ok:
return redirect(
url_for(
- (
- "assiduites.signal_assiduites_group"
- if request.args.get("readonly") is None
- else "assiduites.visu_assiduites_group"
- ),
+ "assiduites.signal_assiduites_group",
scodoc_dept=g.scodoc_dept,
formsemestre_id=formsemestre_id,
group_ids=group_ids,
@@ -1160,136 +1154,6 @@ def signal_assiduites_group():
)
-@bp.route("/visu_assiduites_group")
-@scodoc
-@permission_required(Permission.ScoView)
-def visu_assiduites_group():
- """
- Visualisation des assiduités des groupes pour le jour donné
- dans le formsemestre_id et le moduleimpl_id
- Returns:
- str: l'html généré
- """
-
- # Récupération des paramètres de la requête
- formsemestre_id: int = request.args.get("formsemestre_id", -1)
- moduleimpl_id: int = request.args.get("moduleimpl_id")
- date: str = request.args.get("jour", datetime.date.today().isoformat())
- group_ids: list[int] = request.args.get("group_ids", None)
- if group_ids is None:
- group_ids = []
- else:
- group_ids = group_ids.split(",")
- map(str, group_ids)
-
- # Vérification du moduleimpl_id
- if moduleimpl_id is not None:
- try:
- moduleimpl_id = int(moduleimpl_id)
- except (TypeError, ValueError) as exc:
- raise ScoValueError("identifiant de moduleimpl invalide") from exc
- # Vérification du formsemestre_id
- if formsemestre_id is not None:
- try:
- formsemestre_id = int(formsemestre_id)
- except (TypeError, ValueError) as exc:
- raise ScoValueError("identifiant de formsemestre invalide") from exc
-
- # Récupérations des/du groupe(s)
- groups_infos = sco_groups_view.DisplayedGroupsInfos(
- group_ids, moduleimpl_id=moduleimpl_id, formsemestre_id=formsemestre_id
- )
- if not groups_infos.members:
- return (
- html_sco_header.sco_header(page_title="Saisie journalière de l'assiduité")
- + "Aucun étudiant !
"
- + html_sco_header.sco_footer()
- )
-
- # --- Filtrage par formsemestre ---
- formsemestre_id = groups_infos.formsemestre_id
-
- formsemestre: FormSemestre = FormSemestre.query.get_or_404(formsemestre_id)
- if formsemestre.dept_id != g.scodoc_dept_id:
- abort(404, "groupes inexistants dans ce département")
-
- # Récupération des étudiants du/des groupe(s)
- etuds = [
- sco_etud.get_etud_info(etudid=m["etudid"], filled=True)[0]
- for m in groups_infos.members
- ]
-
- # --- Vérification de la date ---
- real_date = scu.is_iso_formated(date, True).date()
- if real_date < formsemestre.date_debut or real_date > formsemestre.date_fin:
- # Si le jour est hors semestre, renvoyer vers choix date
- return redirect(
- url_for(
- "assiduites.choix_date",
- formsemestre_id=formsemestre_id,
- group_ids=group_ids,
- moduleimpl_id=moduleimpl_id,
- scodoc_dept=g.scodoc_dept,
- readonly="true",
- )
- )
-
- # --- Restriction en fonction du moduleimpl_id ---
- if moduleimpl_id:
- mod_inscrits = {
- x["etudid"]
- for x in sco_moduleimpl.do_moduleimpl_inscription_list(
- moduleimpl_id=moduleimpl_id
- )
- }
- etuds_inscrits_module = [e for e in etuds if e["etudid"] in mod_inscrits]
- if etuds_inscrits_module:
- etuds = etuds_inscrits_module
- else:
- # Si aucun etudiant n'est inscrit au module choisi...
- moduleimpl_id = None
-
- # --- Génération du HTML ---
-
- if groups_infos.tous_les_etuds_du_sem:
- gr_tit = "en"
- else:
- if len(groups_infos.group_ids) > 1:
- grp = "des groupes"
- else:
- grp = "du groupe"
- gr_tit = (
- grp + ' ' + groups_infos.groups_titles + ""
- )
-
- # Récupération du semestre en dictionnaire
- sem = formsemestre.to_dict()
-
- return render_template(
- "assiduites/pages/signal_assiduites_group.j2",
- date=_dateiso_to_datefr(date),
- defdem=_get_etuds_dem_def(formsemestre),
- forcer_module=sco_preferences.get_preference(
- "forcer_module",
- formsemestre_id=formsemestre_id,
- dept_id=g.scodoc_dept_id,
- ),
- formsemestre_date_debut=str(formsemestre.date_debut),
- formsemestre_date_fin=str(formsemestre.date_fin),
- formsemestre_id=formsemestre_id,
- gr_tit=gr_tit,
- grp=sco_groups_view.menu_groups_choice(groups_infos),
- minitimeline=_mini_timeline(),
- moduleimpl_select=_module_selector(formsemestre, moduleimpl_id),
- nonworkdays=_non_work_days(),
- sem=sem["titre_num"],
- timeline=_timeline(),
- readonly="true",
- sco=ScoData(formsemestre=formsemestre),
- title="Saisie journalière de l'assiduité",
- )
-
-
class RowEtudWithAssi(RowEtud):
"""Ligne de la table d'étudiants avec colonne Assiduité"""