Merge branch 'master' of https://scodoc.org/git/viennet/ScoDoc into table
This commit is contained in:
commit
b3839dd8fb
@ -523,7 +523,8 @@ def retreive_formsemestre_from_request() -> int:
|
|||||||
# Element HTML decrivant un semestre (barre de menu et infos)
|
# Element HTML decrivant un semestre (barre de menu et infos)
|
||||||
def formsemestre_page_title(formsemestre_id=None):
|
def formsemestre_page_title(formsemestre_id=None):
|
||||||
"""Element HTML decrivant un semestre (barre de menu et infos)
|
"""Element HTML decrivant un semestre (barre de menu et infos)
|
||||||
Cherche dans la requete si un semestre est défini (formsemestre_id ou moduleimpl ou evaluation ou group)
|
Cherche dans la requete si un semestre est défini
|
||||||
|
via (formsemestre_id ou moduleimpl ou evaluation ou group)
|
||||||
"""
|
"""
|
||||||
formsemestre_id = (
|
formsemestre_id = (
|
||||||
formsemestre_id
|
formsemestre_id
|
||||||
@ -540,15 +541,13 @@ def formsemestre_page_title(formsemestre_id=None):
|
|||||||
return ""
|
return ""
|
||||||
formsemestre = FormSemestre.query.get_or_404(formsemestre_id)
|
formsemestre = FormSemestre.query.get_or_404(formsemestre_id)
|
||||||
|
|
||||||
h = render_template(
|
return render_template(
|
||||||
"formsemestre_page_title.j2",
|
"formsemestre_page_title.j2",
|
||||||
formsemestre=formsemestre,
|
formsemestre=formsemestre,
|
||||||
scu=scu,
|
scu=scu,
|
||||||
sem_menu_bar=formsemestre_status_menubar(formsemestre),
|
sem_menu_bar=formsemestre_status_menubar(formsemestre),
|
||||||
)
|
)
|
||||||
|
|
||||||
return h
|
|
||||||
|
|
||||||
|
|
||||||
def fill_formsemestre(sem):
|
def fill_formsemestre(sem):
|
||||||
"""Add some useful fields to help display formsemestres"""
|
"""Add some useful fields to help display formsemestres"""
|
||||||
@ -768,8 +767,7 @@ def formsemestre_description_table(
|
|||||||
caption=title,
|
caption=title,
|
||||||
html_caption=title,
|
html_caption=title,
|
||||||
html_class="table_leftalign formsemestre_description",
|
html_class="table_leftalign formsemestre_description",
|
||||||
base_url="%s?formsemestre_id=%s&with_evals=%s"
|
base_url=f"{request.base_url}?formsemestre_id={formsemestre_id}&with_evals={with_evals}",
|
||||||
% (request.base_url, formsemestre_id, with_evals),
|
|
||||||
page_title=title,
|
page_title=title,
|
||||||
html_title=html_sco_header.html_sem_header(
|
html_title=html_sco_header.html_sem_header(
|
||||||
"Description du semestre", with_page_header=False
|
"Description du semestre", with_page_header=False
|
||||||
@ -987,7 +985,7 @@ def formsemestre_status_head(formsemestre_id: int = None, page_title: str = None
|
|||||||
""",
|
""",
|
||||||
]
|
]
|
||||||
if sem.semestre_id >= 0:
|
if sem.semestre_id >= 0:
|
||||||
H.append(", %s %s" % (parcours.SESSION_NAME, sem.semestre_id))
|
H.append(f", {parcours.SESSION_NAME} {sem.semestre_id}")
|
||||||
if sem.modalite:
|
if sem.modalite:
|
||||||
H.append(f" en {sem.modalite}")
|
H.append(f" en {sem.modalite}")
|
||||||
if sem.etapes:
|
if sem.etapes:
|
||||||
@ -1091,7 +1089,8 @@ def formsemestre_status(formsemestre_id=None, check_parcours=True):
|
|||||||
elif datetime.date.today() > formsemestre.date_fin:
|
elif datetime.date.today() > formsemestre.date_fin:
|
||||||
if formsemestre.etat:
|
if formsemestre.etat:
|
||||||
H.append(
|
H.append(
|
||||||
"""<span class="formsemestre_status_warning">semestre du passé non verrouillé</span>"""
|
"""<span
|
||||||
|
class="formsemestre_status_warning">semestre terminé mais non verrouillé</span>"""
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
H.append(
|
H.append(
|
||||||
@ -1101,7 +1100,8 @@ def formsemestre_status(formsemestre_id=None, check_parcours=True):
|
|||||||
|
|
||||||
if sco_preferences.get_preference("bul_show_all_evals", formsemestre_id):
|
if sco_preferences.get_preference("bul_show_all_evals", formsemestre_id):
|
||||||
H.append(
|
H.append(
|
||||||
"""<div class="formsemestre_status_warning">Toutes évaluations (même incomplètes) visibles</div>"""
|
"""<div class="formsemestre_status_warning"
|
||||||
|
>Toutes évaluations (même incomplètes) visibles</div>"""
|
||||||
)
|
)
|
||||||
|
|
||||||
if nt.expr_diagnostics:
|
if nt.expr_diagnostics:
|
||||||
@ -1215,6 +1215,11 @@ def formsemestre_tableau_modules(
|
|||||||
prev_ue_id = None
|
prev_ue_id = None
|
||||||
for modimpl in modimpls:
|
for modimpl in modimpls:
|
||||||
mod: Module = Module.query.get(modimpl["module_id"])
|
mod: Module = Module.query.get(modimpl["module_id"])
|
||||||
|
moduleimpl_status_url = url_for(
|
||||||
|
"notes.moduleimpl_status",
|
||||||
|
scodoc_dept=g.scodoc_dept,
|
||||||
|
moduleimpl_id=modimpl["moduleimpl_id"],
|
||||||
|
)
|
||||||
mod_descr = "Module " + (mod.titre or "")
|
mod_descr = "Module " + (mod.titre or "")
|
||||||
if mod.is_apc():
|
if mod.is_apc():
|
||||||
coef_descr = ", ".join(
|
coef_descr = ", ".join(
|
||||||
@ -1240,7 +1245,7 @@ def formsemestre_tableau_modules(
|
|||||||
prev_ue_id = ue["ue_id"]
|
prev_ue_id = ue["ue_id"]
|
||||||
titre = ue["titre"]
|
titre = ue["titre"]
|
||||||
if use_ue_coefs:
|
if use_ue_coefs:
|
||||||
titre += " <b>(coef. %s)</b>" % (ue["coefficient"] or 0.0)
|
titre += f""" <b>(coef. {ue["coefficient"] or 0.0})</b>"""
|
||||||
H.append(
|
H.append(
|
||||||
f"""<tr class="formsemestre_status_ue"><td colspan="4">
|
f"""<tr class="formsemestre_status_ue"><td colspan="4">
|
||||||
<span class="status_ue_acro">{ue["acronyme"]}</span>
|
<span class="status_ue_acro">{ue["acronyme"]}</span>
|
||||||
@ -1280,23 +1285,18 @@ def formsemestre_tableau_modules(
|
|||||||
H.append(f'<tr class="formsemestre_status{fontorange}">')
|
H.append(f'<tr class="formsemestre_status{fontorange}">')
|
||||||
|
|
||||||
H.append(
|
H.append(
|
||||||
f"""<td class="formsemestre_status_code""><a
|
f"""
|
||||||
href="{url_for('notes.moduleimpl_status',
|
<td class="formsemestre_status_code""><a
|
||||||
scodoc_dept=g.scodoc_dept, moduleimpl_id=modimpl['moduleimpl_id'])}"
|
href="{moduleimpl_status_url}"
|
||||||
title="{mod_descr}" class="stdlink">{mod.code}</a></td>"""
|
title="{mod_descr}" class="stdlink">{mod.code}</a></td>
|
||||||
)
|
<td class="scotext"><a href="{moduleimpl_status_url}" title="{mod_descr}"
|
||||||
H.append(
|
class="formsemestre_status_link">{mod.abbrev or mod.titre or ""}</a>
|
||||||
f"""<td class="scotext"><a href="{
|
|
||||||
url_for( "notes.moduleimpl_status",
|
|
||||||
scodoc_dept=g.scodoc_dept, moduleimpl_id=modimpl["moduleimpl_id"]
|
|
||||||
) }" title="{mod_descr}" class="formsemestre_status_link">{mod.abbrev or mod.titre or ""}</a>
|
|
||||||
</td>
|
</td>
|
||||||
<td class="formsemestre_status_inscrits">{len(mod_inscrits)}</td>
|
<td class="formsemestre_status_inscrits">{len(mod_inscrits)}</td>
|
||||||
<td class="resp scotext">
|
<td class="resp scotext">
|
||||||
<a class="discretelink" href="{
|
<a class="discretelink" href="{moduleimpl_status_url}" title="{mod_ens}">{
|
||||||
url_for("notes.moduleimpl_status",
|
sco_users.user_info(modimpl["responsable_id"])["prenomnom"]
|
||||||
scodoc_dept=g.scodoc_dept, moduleimpl_id=modimpl["moduleimpl_id"]
|
}</a>
|
||||||
) }" title="{mod_ens}">{ sco_users.user_info(modimpl["responsable_id"])["prenomnom"] }</a>
|
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
"""
|
"""
|
||||||
@ -1331,18 +1331,21 @@ def formsemestre_tableau_modules(
|
|||||||
)
|
)
|
||||||
if nb_evals != 0:
|
if nb_evals != 0:
|
||||||
H.append(
|
H.append(
|
||||||
'<a href="moduleimpl_status?moduleimpl_id=%s" class="formsemestre_status_link">%s prévues, %s ok</a>'
|
f"""<a href="{moduleimpl_status_url}"
|
||||||
% (modimpl["moduleimpl_id"], nb_evals, etat["nb_evals_completes"])
|
class="formsemestre_status_link">{nb_evals} prévues,
|
||||||
|
{etat["nb_evals_completes"]} ok</a>"""
|
||||||
)
|
)
|
||||||
if etat["nb_evals_en_cours"] > 0:
|
if etat["nb_evals_en_cours"] > 0:
|
||||||
H.append(
|
H.append(
|
||||||
', <span><a class="redlink" href="moduleimpl_status?moduleimpl_id=%s" title="Il manque des notes">%s en cours</a></span>'
|
f""", <span><a class="redlink" href="{moduleimpl_status_url}"
|
||||||
% (modimpl["moduleimpl_id"], etat["nb_evals_en_cours"])
|
title="Il manque des notes">{
|
||||||
|
etat["nb_evals_en_cours"]
|
||||||
|
} en cours</a></span>"""
|
||||||
)
|
)
|
||||||
if etat["attente"]:
|
if etat["attente"]:
|
||||||
H.append(
|
H.append(
|
||||||
' <span><a class="redlink" href="moduleimpl_status?moduleimpl_id=%s" title="Il y a des notes en attente">[en attente]</a></span>'
|
f""" <span><a class="redlink" href="{moduleimpl_status_url}"
|
||||||
% modimpl["moduleimpl_id"]
|
title="Il y a des notes en attente">[en attente]</a></span>"""
|
||||||
)
|
)
|
||||||
elif mod.module_type == ModuleType.MALUS:
|
elif mod.module_type == ModuleType.MALUS:
|
||||||
nb_malus_notes = sum(
|
nb_malus_notes = sum(
|
||||||
@ -1352,10 +1355,10 @@ def formsemestre_tableau_modules(
|
|||||||
]
|
]
|
||||||
)
|
)
|
||||||
H.append(
|
H.append(
|
||||||
"""<td class="malus">
|
f"""<td class="malus">
|
||||||
<a href="moduleimpl_status?moduleimpl_id=%s" class="formsemestre_status_link">malus (%d notes)</a>
|
<a href="{moduleimpl_status_url}" class="formsemestre_status_link">malus
|
||||||
|
({nb_malus_notes} notes)</a>
|
||||||
"""
|
"""
|
||||||
% (modimpl["moduleimpl_id"], nb_malus_notes)
|
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
raise ValueError(f"Invalid module_type {mod.module_type}") # a bug
|
raise ValueError(f"Invalid module_type {mod.module_type}") # a bug
|
||||||
|
Loading…
Reference in New Issue
Block a user