From e52ffb8357181db6f604f07dc441e07aedcc2437 Mon Sep 17 00:00:00 2001
From: Emmanuel Viennet
Date: Tue, 11 May 2021 11:48:32 +0200
Subject: [PATCH] & in generated urls
---
VERSION.py | 2 +-
ZAbsences.py | 18 +++++++-------
ZNotes.py | 20 +++++++--------
ZScoUsers.py | 2 +-
ZScolar.py | 12 ++++-----
gen_tables.py | 4 +--
sco_abs_views.py | 4 +--
sco_archives.py | 8 +++---
sco_archives_etud.py | 6 ++---
sco_bulletins.py | 32 ++++++++++++------------
sco_bulletins_legacy.py | 4 +--
sco_bulletins_standard.py | 4 +--
sco_cost_formation.py | 2 +-
sco_edit_ue.py | 16 ++++++------
sco_etape_apogee_view.py | 18 +++++++-------
sco_export_results.py | 4 +--
sco_find_etud.py | 2 +-
sco_formations.py | 2 +-
sco_formsemestre_edit.py | 8 +++---
sco_formsemestre_exterieurs.py | 4 +--
sco_formsemestre_inscriptions.py | 8 +++---
sco_formsemestre_status.py | 10 ++++----
sco_formsemestre_validation.py | 42 ++++++++++++++++----------------
sco_groups.py | 6 ++---
sco_groups_view.py | 26 ++++++++++----------
sco_inscr_passage.py | 2 +-
sco_liste_notes.py | 14 +++++------
sco_lycee.py | 4 +--
sco_moduleimpl_inscriptions.py | 4 +--
sco_moduleimpl_status.py | 14 +++++------
sco_page_etud.py | 22 ++++++++---------
sco_placement.py | 4 +--
sco_pvjury.py | 2 +-
sco_recapcomplet.py | 10 ++++----
sco_report.py | 20 +++++++--------
sco_synchro_etuds.py | 6 ++---
sco_trombino.py | 14 +++++------
sco_ue_external.py | 2 +-
38 files changed, 191 insertions(+), 191 deletions(-)
diff --git a/VERSION.py b/VERSION.py
index 46056468a..3d521316d 100644
--- a/VERSION.py
+++ b/VERSION.py
@@ -1,7 +1,7 @@
# -*- mode: python -*-
# -*- coding: utf-8 -*-
-SCOVERSION = "7.24"
+SCOVERSION = "7.25"
SCONAME = "ScoDoc"
diff --git a/ZAbsences.py b/ZAbsences.py
index a82208d6f..91aaf7eb7 100644
--- a/ZAbsences.py
+++ b/ZAbsences.py
@@ -720,7 +720,7 @@ class ZAbsences(
+ self.sco_footer(REQUEST)
)
- base_url = "SignaleAbsenceGrHebdo?datelundi=%s&%s&destination=%s" % (
+ base_url = "SignaleAbsenceGrHebdo?datelundi=%s&%s&destination=%s" % (
datelundi,
groups_infos.groups_query_args,
urllib.quote(destination),
@@ -904,14 +904,14 @@ class ZAbsences(
etuds = [e for e in etuds if e["etudid"] in mod_inscrits]
if not moduleimpl_id:
moduleimpl_id = None
- base_url_noweeks = "SignaleAbsenceGrSemestre?datedebut=%s&datefin=%s&%s&destination=%s" % (
+ base_url_noweeks = "SignaleAbsenceGrSemestre?datedebut=%s&datefin=%s&%s&destination=%s" % (
datedebut,
datefin,
groups_infos.groups_query_args,
urllib.quote(destination),
)
base_url = (
- base_url_noweeks + "&nbweeks=%s" % nbweeks
+ base_url_noweeks + "&nbweeks=%s" % nbweeks
) # sans le moduleimpl_id
if etuds:
@@ -952,9 +952,9 @@ class ZAbsences(
dates = dates[-nbweeks:]
msg = "Montrer toutes les semaines"
nwl = 0
- url_link_semaines = base_url_noweeks + "&nbweeks=%s" % nwl
+ url_link_semaines = base_url_noweeks + "&nbweeks=%s" % nwl
if moduleimpl_id:
- url_link_semaines += "&moduleimpl_id=" + moduleimpl_id
+ url_link_semaines += "&moduleimpl_id=" + moduleimpl_id
#
dates = [x.ISO() for x in dates]
dayname = sco_abs.day_names(self)[jourdebut.weekday]
@@ -1027,7 +1027,7 @@ class ZAbsences(
"""
Module concerné par ces absences (%(optionel_txt)s):
+ onchange="document.location='%(url)s&moduleimpl_id='+document.getElementById('moduleimpl_id').value">
non spécifié
%(menu_module)s
@@ -1327,7 +1327,7 @@ class ZAbsences(
for a in absnonjust:
a["justlink"] = "justifier "
a["_justlink_target"] = (
- "doJustifAbsence?etudid=%s&datedebut=%s&datefin=%s&demijournee=%s"
+ "doJustifAbsence?etudid=%s&datedebut=%s&datefin=%s&demijournee=%s"
% (etudid, a["datedmy"], a["datedmy"], a["ampm"])
)
#
@@ -1463,7 +1463,7 @@ class ZAbsences(
)
+ "
Période du %s au %s (nombre de demi-journées ) "
% (debut, fin),
- base_url="%s&formsemestre_id=%s&debut=%s&fin=%s"
+ base_url="%s&formsemestre_id=%s&debut=%s&fin=%s"
% (groups_infos.base_url, formsemestre_id, debut, fin),
filename="etat_abs_"
+ scu.make_filename(
@@ -1700,7 +1700,7 @@ ou entrez une date pour visualiser les absents un jour donné :
"ProcessBilletAbsenceForm?billet_id=%s" % b["billet_id"]
)
if etud:
- b["_etat_str_target"] += "&etudid=%s" % etud["etudid"]
+ b["_etat_str_target"] += "&etudid=%s" % etud["etudid"]
b["_billet_id_target"] = b["_etat_str_target"]
else:
b["etat_str"] = "ok"
diff --git a/ZNotes.py b/ZNotes.py
index cc35d2baf..c1d30eba0 100644
--- a/ZNotes.py
+++ b/ZNotes.py
@@ -554,7 +554,7 @@ class ZNotes(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Impl
)
if redirect:
return REQUEST.RESPONSE.redirect(
- "ue_list?formation_id=" + new_id + "&msg=Nouvelle version !"
+ "ue_list?formation_id=" + new_id + "&msg=Nouvelle version !"
)
else:
return new_id, modules_old2new, ues_old2new
@@ -1242,7 +1242,7 @@ class ZNotes(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Impl
]
for ens in M["ens"]:
H.append(
- '
%s (supprimer ) '
+ '%s (supprimer ) '
% (
login2display.get(ens["ens_id"], ens["ens_id"]),
moduleimpl_id,
@@ -1254,7 +1254,7 @@ class ZNotes(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Impl
saisir et modifier toutes les notes des évaluations de ce module.
Pour changer le responsable du module, passez par la
- page "Modification du semestre ", accessible uniquement au responsable de la formation (chef de département)
+ page "Modification du semestre ", accessible uniquement au responsable de la formation (chef de département)
""" % (
sem["formation_id"],
@@ -1401,7 +1401,7 @@ class ZNotes(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Impl
return REQUEST.RESPONSE.redirect(
"moduleimpl_status?moduleimpl_id="
+ moduleimpl_id
- + "&head_message=responsable%20modifié"
+ + "&head_message=responsable%20modifié"
)
_expr_help = """Expérimental: formule de calcul de la moyenne %(target)s
@@ -1489,7 +1489,7 @@ class ZNotes(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Impl
return REQUEST.RESPONSE.redirect(
"moduleimpl_status?moduleimpl_id="
+ moduleimpl_id
- + "&head_message=règle%20de%20calcul%20modifiée"
+ + "&head_message=règle%20de%20calcul%20modifiée"
)
security.declareProtected(ScoView, "view_module_abs")
@@ -1630,7 +1630,7 @@ class ZNotes(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Impl
return REQUEST.RESPONSE.redirect(
"formsemestre_status?formsemestre_id="
+ formsemestre_id
- + "&head_message=règle%20de%20calcul%20modifiée"
+ + "&head_message=règle%20de%20calcul%20modifiée"
)
security.declareProtected(ScoView, "formsemestre_enseignants_list")
@@ -1860,7 +1860,7 @@ class ZNotes(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Impl
raise ScoValueError(
"""Désinscription impossible: l'étudiant a une décision de jury
(la supprimer avant si nécessaire:
-
+
supprimer décision jury
)
"""
@@ -2682,7 +2682,7 @@ class ZNotes(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Impl
if not can_edit_app:
raise AccessDenied("vous n'avez pas le droit d'ajouter une appreciation")
#
- bull_url = "formsemestre_bulletinetud?formsemestre_id=%s&etudid=%s" % (
+ bull_url = "formsemestre_bulletinetud?formsemestre_id=%s&etudid=%s" % (
formsemestre_id,
etudid,
)
@@ -3026,7 +3026,7 @@ class ZNotes(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Impl
OK="Supprimer",
dest_url="",
REQUEST=REQUEST,
- cancel_url="formsemestre_validation_etud_form?formsemestre_id=%s&etudid=%s"
+ cancel_url="formsemestre_validation_etud_form?formsemestre_id=%s&etudid=%s"
% (formsemestre_id, etudid),
parameters={"etudid": etudid, "formsemestre_id": formsemestre_id},
)
@@ -3036,7 +3036,7 @@ class ZNotes(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Impl
)
return REQUEST.RESPONSE.redirect(
self.ScoURL()
- + "/Notes/formsemestre_validation_etud_form?formsemestre_id=%s&etudid=%s&head_message=Décision%%20supprimée"
+ + "/Notes/formsemestre_validation_etud_form?formsemestre_id=%s&etudid=%s&head_message=Décision%%20supprimée"
% (formsemestre_id, etudid)
)
diff --git a/ZScoUsers.py b/ZScoUsers.py
index efe1eb976..21bf83025 100644
--- a/ZScoUsers.py
+++ b/ZScoUsers.py
@@ -523,7 +523,7 @@ class ZScoUsers(
if authuser.has_permission(ScoUsersAdmin, self):
H.append(
"""
- modifier/déactiver ce compte
+ modifier/déactiver ce compte
supprimer cet utilisateur (à n'utiliser qu'en cas d'erreur !)
"""
% info[0]
diff --git a/ZScolar.py b/ZScolar.py
index 687520b88..5eefc481f 100644
--- a/ZScolar.py
+++ b/ZScolar.py
@@ -279,7 +279,7 @@ class ZScolar(ObjectManager, PropertyManager, RoleManager, Item, Persistent, Imp
-Programme DUT R&T
+Programme DUT TEST
@@ -679,7 +679,7 @@ REQUEST.URL0=%s
date = date.next()
FA.append("")
FA.append(
- 'état '
+ 'état '
% sem
)
FA.append("")
@@ -715,8 +715,8 @@ REQUEST.URL0=%s
"""
%(label)s
- (format tableur )
- Photos
+ (format tableur )
+ Photos
"""
% group
)
@@ -1174,7 +1174,7 @@ REQUEST.URL0=%s
scolars.etud_annotations_delete(cnx, annotation_id)
return REQUEST.RESPONSE.redirect(
- "ficheEtud?etudid=%s&head_message=Annotation%%20supprimée" % (etudid)
+ "ficheEtud?etudid=%s&head_message=Annotation%%20supprimée" % (etudid)
)
security.declareProtected(ScoEtudChangeAdr, "formChangeCoordonnees")
@@ -2776,7 +2776,7 @@ def _simple_error_page(context, msg, DeptId=None):
H = [context.standard_html_header(context), "Erreur ! ", "", msg, "
"]
if DeptId:
H.append(
- 'Supprimer le dossier %s (très recommandé !)
'
+ 'Supprimer le dossier %s (très recommandé !)
'
% (DeptId, DeptId)
)
H.append(context.standard_html_footer(context))
diff --git a/gen_tables.py b/gen_tables.py
index 3f5a95ef3..51cc641f0 100644
--- a/gen_tables.py
+++ b/gen_tables.py
@@ -445,14 +445,14 @@ class GenTable:
if self.base_url:
if self.xls_link:
H.append(
- ' %s '
+ ' %s '
% (self.base_url, scu.ICON_XLS)
)
if self.xls_link and self.pdf_link:
H.append(" ")
if self.pdf_link:
H.append(
- ' %s '
+ ' %s '
% (self.base_url, scu.ICON_PDF)
)
H.append("")
diff --git a/sco_abs_views.py b/sco_abs_views.py
index 59aced2cd..c8190983f 100644
--- a/sco_abs_views.py
+++ b/sco_abs_views.py
@@ -733,8 +733,8 @@ def ListeAbsEtud(
etudid, datedebut, with_evals=with_evals, format=format
)
if REQUEST:
- base_url_nj = "%s?etudid=%s&absjust_only=0" % (REQUEST.URL0, etudid)
- base_url_j = "%s?etudid=%s&absjust_only=1" % (REQUEST.URL0, etudid)
+ base_url_nj = "%s?etudid=%s&absjust_only=0" % (REQUEST.URL0, etudid)
+ base_url_j = "%s?etudid=%s&absjust_only=1" % (REQUEST.URL0, etudid)
else:
base_url_nj = base_url_j = ""
tab_absnonjust = GenTable(
diff --git a/sco_archives.py b/sco_archives.py
index 18d89bfe8..70a0553b0 100644
--- a/sco_archives.py
+++ b/sco_archives.py
@@ -484,7 +484,7 @@ enregistrés et non modifiables, on peut les retrouver ultérieurement.
# submitted or cancelled:
return REQUEST.RESPONSE.redirect(
- "formsemestre_list_archives?formsemestre_id=%s&head_message=%s"
+ "formsemestre_list_archives?formsemestre_id=%s&head_message=%s"
% (formsemestre_id, msg)
)
@@ -510,7 +510,7 @@ def formsemestre_list_archives(context, REQUEST, formsemestre_id):
for a in L:
archive_name = PVArchive.get_archive_name(a["archive_id"])
H.append(
- '%s : %s (supprimer )'
+ '%s : %s (supprimer )
@@ -646,7 +646,7 @@ Si vous souhaitez modifier cette formation (par exemple pour y ajouter un module
H.append(" [verrouillé]")
else:
H.append(
- ' Modifier '
+ ' Modifier '
% sem
)
H.append(" ")
@@ -655,7 +655,7 @@ Si vous souhaitez modifier cette formation (par exemple pour y ajouter un module
if authuser.has_permission(ScoImplement, context):
H.append(
""""""
diff --git a/sco_etape_apogee_view.py b/sco_etape_apogee_view.py
index dcdb7ab56..2376e08cc 100644
--- a/sco_etape_apogee_view.py
+++ b/sco_etape_apogee_view.py
@@ -177,8 +177,8 @@ def apo_semset_maq_status(
H.append("""Il y a plusieurs années scolaires ! """)
if nips_no_sco: # seulement un warning
url_list = (
- "view_apo_etuds?semset_id=%s&title=Etudiants%%20presents%%20dans%%20maquettes%%20Apogee%%20mais%%20pas%%20dans%%20les%%20semestres%%20ScoDoc:&nips=%s"
- % (semset_id, "&nips=".join(nips_no_sco))
+ "view_apo_etuds?semset_id=%s&title=Etudiants%%20presents%%20dans%%20maquettes%%20Apogee%%20mais%%20pas%%20dans%%20les%%20semestres%%20ScoDoc:&nips=%s"
+ % (semset_id, "&nips=".join(nips_no_sco))
)
H.append(
'Attention: il y a %d étudiant(s) dans les maquettes Apogée chargées non inscrit(s) dans ce semestre ScoDoc; '
@@ -196,8 +196,8 @@ def apo_semset_maq_status(
if nips_no_apo:
url_list = (
- "view_scodoc_etuds?semset_id=%s&title=Etudiants%%20ScoDoc%%20non%%20listés%%20dans%%20les%%20maquettes%%20Apogée%%20chargées&nips=%s"
- % (semset_id, "&nips=".join(nips_no_apo))
+ "view_scodoc_etuds?semset_id=%s&title=Etudiants%%20ScoDoc%%20non%%20listés%%20dans%%20les%%20maquettes%%20Apogée%%20chargées&nips=%s"
+ % (semset_id, "&nips=".join(nips_no_apo))
)
H.append(
'%d étudiants dans ce semestre non présents dans les maquettes Apogée chargées '
@@ -206,8 +206,8 @@ def apo_semset_maq_status(
if nips_no_sco: # seulement un warning
url_list = (
- "view_apo_etuds?semset_id=%s&title=Etudiants%%20presents%%20dans%%20maquettes%%20Apogee%%20mais%%20pas%%20dans%%20les%%20semestres%%20ScoDoc:&nips=%s"
- % (semset_id, "&nips=".join(nips_no_sco))
+ "view_apo_etuds?semset_id=%s&title=Etudiants%%20presents%%20dans%%20maquettes%%20Apogee%%20mais%%20pas%%20dans%%20les%%20semestres%%20ScoDoc:&nips=%s"
+ % (semset_id, "&nips=".join(nips_no_sco))
)
H.append(
'Attention: il reste %d étudiants dans les maquettes Apogée chargées mais pas inscrits dans ce semestre ScoDoc '
@@ -216,8 +216,8 @@ def apo_semset_maq_status(
if apo_dups:
url_list = (
- "view_apo_etuds?semset_id=%s&title=Doublons%%20Apogee&nips=%s"
- % (semset_id, "&nips=".join(apo_dups))
+ "view_apo_etuds?semset_id=%s&title=Doublons%%20Apogee&nips=%s"
+ % (semset_id, "&nips=".join(apo_dups))
)
H.append(
'%d étudiants présents dans les plusieurs maquettes Apogée chargées '
@@ -673,7 +673,7 @@ def view_apo_csv_delete(
context, etape_apo, semset["annee_scolaire"], semset["sem_id"]
)
sco_etape_apogee.apo_csv_delete(context, info["archive_id"])
- return REQUEST.RESPONSE.redirect(dest_url + "&head_message=Archive%20supprimée")
+ return REQUEST.RESPONSE.redirect(dest_url + "&head_message=Archive%20supprimée")
def view_apo_csv(context, etape_apo="", semset_id="", format="html", REQUEST=None):
diff --git a/sco_export_results.py b/sco_export_results.py
index 992c802ae..68b3258aa 100644
--- a/sco_export_results.py
+++ b/sco_export_results.py
@@ -236,11 +236,11 @@ def scodoc_table_results(
tab, semlist = _build_results_table(
context, start_date_iso, end_date_iso, types_parcours
)
- tab.base_url = "%s?start_date=%s&end_date=%s&types_parcours=%s" % (
+ tab.base_url = "%s?start_date=%s&end_date=%s&types_parcours=%s" % (
REQUEST.URL0,
start_date,
end_date,
- "&types_parcours=".join([str(x) for x in types_parcours]),
+ "&types_parcours=".join([str(x) for x in types_parcours]),
)
if format != "html":
return tab.make_page(
diff --git a/sco_find_etud.py b/sco_find_etud.py
index 1abf2fbba..765a2f5ee 100644
--- a/sco_find_etud.py
+++ b/sco_find_etud.py
@@ -141,7 +141,7 @@ def search_etud_in_dept(context, expnom="", REQUEST=None):
if len(etuds) > 0:
# Choix dans la liste des résultats:
for e in etuds:
- target = dest_url + "?etudid=%s&" % e["etudid"]
+ target = dest_url + "?etudid=%s&" % e["etudid"]
e["_nomprenom_target"] = target
e["inscription_target"] = target
e["_nomprenom_td_attrs"] = 'id="%s" class="etudinfo"' % (e["etudid"])
diff --git a/sco_formations.py b/sco_formations.py
index 8256cc9aa..145c28d73 100644
--- a/sco_formations.py
+++ b/sco_formations.py
@@ -241,7 +241,7 @@ def formation_list_table(context, formation_id=None, args={}, REQUEST=None):
for s in f["sems"]
]
+ [
- 'ajouter '
+ 'ajouter '
% f
]
)
diff --git a/sco_formsemestre_edit.py b/sco_formsemestre_edit.py
index d8e57bca1..2c05a600f 100644
--- a/sco_formsemestre_edit.py
+++ b/sco_formsemestre_edit.py
@@ -711,7 +711,7 @@ def do_formsemestre_createwithmodules(context, REQUEST=None, edit=False):
}
_ = sco_moduleimpl.do_moduleimpl_create(context, modargs)
return REQUEST.RESPONSE.redirect(
- "formsemestre_status?formsemestre_id=%s&head_message=Nouveau%%20semestre%%20créé"
+ "formsemestre_status?formsemestre_id=%s&head_message=Nouveau%%20semestre%%20créé"
% formsemestre_id
)
else:
@@ -811,7 +811,7 @@ def do_formsemestre_createwithmodules(context, REQUEST=None, edit=False):
return msg_html
else:
return REQUEST.RESPONSE.redirect(
- "formsemestre_status?formsemestre_id=%s&head_message=Semestre modifié"
+ "formsemestre_status?formsemestre_id=%s&head_message=Semestre modifié"
% formsemestre_id
)
@@ -965,7 +965,7 @@ def formsemestre_clone(context, formsemestre_id, REQUEST=None):
REQUEST=REQUEST,
)
return REQUEST.RESPONSE.redirect(
- "formsemestre_status?formsemestre_id=%s&head_message=Nouveau%%20semestre%%20créé"
+ "formsemestre_status?formsemestre_id=%s&head_message=Nouveau%%20semestre%%20créé"
% new_formsemestre_id
)
@@ -1148,7 +1148,7 @@ def formsemestre_associate_new_version(
context, [formsemestre_id] + other_formsemestre_ids, REQUEST=REQUEST
)
return REQUEST.RESPONSE.redirect(
- "formsemestre_status?formsemestre_id=%s&head_message=Formation%%20dupliquée"
+ "formsemestre_status?formsemestre_id=%s&head_message=Formation%%20dupliquée"
% formsemestre_id
)
diff --git a/sco_formsemestre_exterieurs.py b/sco_formsemestre_exterieurs.py
index 1240d5e1d..b9f1e4583 100644
--- a/sco_formsemestre_exterieurs.py
+++ b/sco_formsemestre_exterieurs.py
@@ -86,7 +86,7 @@ def formsemestre_ext_create_form(context, etudid, formsemestre_id, REQUEST=None)
Notez que si un semestre extérieur similaire a déjà été créé pour un autre étudiant,
il est préférable d'utiliser la fonction
- "
+ "
inscrire à un autre semestre "
"""
@@ -191,7 +191,7 @@ def formsemestre_ext_create_form(context, etudid, formsemestre_id, REQUEST=None)
return "\n".join(H) + "\n" + tf[1] + F
elif tf[0] == -1:
return REQUEST.RESPONSE.redirect(
- "%s/formsemestre_bulletinetud?formsemestre_id==%s&etudid=%s"
+ "%s/formsemestre_bulletinetud?formsemestre_id==%s&etudid=%s"
% (context.ScoURL(), formsemestre_id, etudid)
)
else:
diff --git a/sco_formsemestre_inscriptions.py b/sco_formsemestre_inscriptions.py
index e3c127e3d..f61dbd940 100644
--- a/sco_formsemestre_inscriptions.py
+++ b/sco_formsemestre_inscriptions.py
@@ -147,7 +147,7 @@ def formsemestre_inscription_with_modules_form(
if (not only_ext) or (sem["modalite"] == "EXT"):
H.append(
"""
- %s
+ %s
"""
% (etudid, sem["formsemestre_id"], sem["titremois"])
)
@@ -217,12 +217,12 @@ def formsemestre_inscription_with_modules(
H.append("")
H.append(
- """Continuer quand même l'inscription
"""
+ """Continuer quand même l'inscription
"""
% (etudid, formsemestre_id, sco_groups.make_query_groups(group_ids))
)
return "\n".join(H) + F
@@ -332,7 +332,7 @@ def formsemestre_inscription_option(context, etudid, formsemestre_id, REQUEST=No
sem_origin = sco_formsemestre.get_formsemestre(
context, ue_status["formsemestre_id"]
)
- ue_descr += ' (capitalisée le %s)' % (
+ ue_descr += ' (capitalisée le %s)' % (
sem_origin["formsemestre_id"],
etudid,
sem_origin["titreannee"],
diff --git a/sco_formsemestre_status.py b/sco_formsemestre_status.py
index 3ff709d2f..a9c63623a 100644
--- a/sco_formsemestre_status.py
+++ b/sco_formsemestre_status.py
@@ -154,7 +154,7 @@ def formsemestre_status_menubar(context, sem, REQUEST):
},
{
"title": "Modifier le semestre",
- "url": "formsemestre_editwithmodules?formation_id=%(formation_id)s&formsemestre_id=%(formsemestre_id)s"
+ "url": "formsemestre_editwithmodules?formation_id=%(formation_id)s&formsemestre_id=%(formsemestre_id)s"
% sem,
"enabled": (
authuser.has_permission(ScoImplement, context)
@@ -292,7 +292,7 @@ def formsemestre_status_menubar(context, sem, REQUEST):
},
{
"title": "Exporter table des étudiants",
- "url": "groups_view?format=allxls&group_ids="
+ "url": "groups_view?format=allxls&group_ids="
+ sco_groups.get_default_group(
context, formsemestre_id, fix_if_missing=True, REQUEST=REQUEST
),
@@ -388,7 +388,7 @@ def formsemestre_status_menubar(context, sem, REQUEST):
},
{
"title": "Saisie des décisions du jury",
- "url": "formsemestre_recapcomplet?modejury=1&hidemodules=1&hidebac=1&pref_override=0&formsemestre_id="
+ "url": "formsemestre_recapcomplet?modejury=1&hidemodules=1&hidebac=1&pref_override=0&formsemestre_id="
+ formsemestre_id,
"enabled": context._can_validate_sem(REQUEST, formsemestre_id),
},
@@ -684,7 +684,7 @@ def formsemestre_description_table(
caption=title,
html_caption=title,
html_class="table_leftalign formsemestre_description",
- base_url="%s?formsemestre_id=%s&with_evals=%s"
+ base_url="%s?formsemestre_id=%s&with_evals=%s"
% (REQUEST.URL0, formsemestre_id, with_evals),
page_title=title,
html_title=context.html_sem_header(
@@ -917,7 +917,7 @@ def formsemestre_status(context, formsemestre_id=None, REQUEST=None):
if can_edit:
H.append(
- ' '
+ ' '
% (formsemestre_id, ue["ue_id"])
)
H.append(
diff --git a/sco_formsemestre_validation.py b/sco_formsemestre_validation.py
index 151abaa23..95313f59b 100644
--- a/sco_formsemestre_validation.py
+++ b/sco_formsemestre_validation.py
@@ -109,13 +109,13 @@ def formsemestre_validation_etud_form(
if etud_index_prev != None:
etud_p = context.getEtudInfo(etudid=T[etud_index_prev][-1], filled=True)[0]
Footer.append(
- 'Etud. précédent (%s) '
+ 'Etud. précédent (%s) '
% (formsemestre_id, etud_index_prev, etud_p["nomprenom"])
)
if etud_index_next != None:
etud_n = context.getEtudInfo(etudid=T[etud_index_next][-1], filled=True)[0]
Footer.append(
- 'Etud. suivant (%s) '
+ 'Etud. suivant (%s) '
% (formsemestre_id, etud_index_next, etud_n["nomprenom"])
)
Footer.append("")
@@ -171,12 +171,12 @@ def formsemestre_validation_etud_form(
if check:
if not desturl:
desturl = (
- "formsemestre_recapcomplet?modejury=1&hidemodules=1&hidebac=1&pref_override=0&formsemestre_id="
+ "formsemestre_recapcomplet?modejury=1&hidemodules=1&hidebac=1&pref_override=0&formsemestre_id="
+ formsemestre_id
)
if sortcol:
desturl += (
- "&sortcol=" + sortcol
+ "&sortcol=" + sortcol
) # pour refaire tri sorttable du tableau de notes
desturl += "#etudid%s" % etudid # va a la bonne ligne
H.append('' % desturl)
@@ -205,13 +205,13 @@ def formsemestre_validation_etud_form(
if not Se.prev_decision:
H.append(
tf_error_message(
- """Le jury n\'a pas statué sur le semestre précédent ! ( le faire maintenant )"""
+ """Le jury n\'a pas statué sur le semestre précédent ! (le faire maintenant )"""
% (Se.prev["formsemestre_id"], etudid)
)
)
if decision_jury:
H.append(
- 'Supprimer décision existante '
+ 'Supprimer décision existante '
% (etudid, formsemestre_id)
)
H.append(context.sco_footer(REQUEST))
@@ -249,7 +249,7 @@ def formsemestre_validation_etud_form(
-
+
"""
% (Se.prev["formsemestre_id"], etudid, etudid, formsemestre_id)
)
@@ -309,7 +309,7 @@ def formsemestre_validation_etud_form(
H.append(form_decision_manuelle(context, Se, formsemestre_id, etudid))
H.append(
- """"""
+ """"""
% (etudid, formsemestre_id)
)
@@ -402,23 +402,23 @@ def _redirect_valid_choice(
formsemestre_id, etudid, Se, choice, desturl, sortcol, REQUEST
):
adr = (
- "formsemestre_validation_etud_form?formsemestre_id=%s&etudid=%s&check=1"
+ "formsemestre_validation_etud_form?formsemestre_id=%s&etudid=%s&check=1"
% (formsemestre_id, etudid)
)
if sortcol:
- adr += "&sortcol=" + sortcol
+ adr += "&sortcol=" + sortcol
# if desturl:
- # desturl += "&desturl=" + desturl
+ # desturl += "&desturl=" + desturl
return REQUEST.RESPONSE.redirect(adr)
# Si le precedent a été modifié, demande relecture du parcours.
# sinon renvoie au listing general,
# if choice.new_code_prev:
-# REQUEST.RESPONSE.redirect( 'formsemestre_validation_etud_form?formsemestre_id=%s&etudid=%s&check=1&desturl=%s' % (formsemestre_id, etudid, desturl) )
+# REQUEST.RESPONSE.redirect( 'formsemestre_validation_etud_form?formsemestre_id=%s&etudid=%s&check=1&desturl=%s' % (formsemestre_id, etudid, desturl) )
# else:
# if not desturl:
-# desturl = 'formsemestre_recapcomplet?modejury=1&hidemodules=1&formsemestre_id=' + formsemestre_id
+# desturl = 'formsemestre_recapcomplet?modejury=1&hidemodules=1&formsemestre_id=' + formsemestre_id
# REQUEST.RESPONSE.redirect(desturl)
@@ -555,7 +555,7 @@ def formsemestre_recap_parcours_table(
)
H.append('%(mois_debut)s ' % sem)
H.append(
- '%s '
+ '%s '
% (a_url, sem["formsemestre_id"], etudid, sem["titreannee"])
)
if decision_sem:
@@ -649,7 +649,7 @@ def formsemestre_recap_parcours_table(
H.append(" ")
if with_links:
H.append(
- 'modifier '
+ 'modifier '
% (a_url, sem["formsemestre_id"], etudid)
)
@@ -809,7 +809,7 @@ def form_decision_manuelle(
H.append(
"""
- Supprimer décision existante
+ Supprimer décision existante
"""
% (etudid, formsemestre_id)
@@ -928,12 +928,12 @@ def do_formsemestre_validation_auto(context, formsemestre_id, REQUEST):
)
for etud in conflicts:
H.append(
- '%s '
+ '%s '
% (formsemestre_id, etud["etudid"], etud["nomprenom"])
)
H.append(" ")
H.append(
- 'continuer '
+ 'continuer '
% formsemestre_id
)
H.append(context.sco_footer(REQUEST))
@@ -1184,7 +1184,7 @@ def formsemestre_validate_previous_ue(context, formsemestre_id, etudid, REQUEST=
)
return REQUEST.RESPONSE.redirect(
context.ScoURL()
- + "/Notes/formsemestre_bulletinetud?formsemestre_id=%s&etudid=%s&head_message=Validation%%20d'UE%%20enregistree"
+ + "/Notes/formsemestre_bulletinetud?formsemestre_id=%s&etudid=%s&head_message=Validation%%20d'UE%%20enregistree"
% (formsemestre_id, etudid)
)
@@ -1289,7 +1289,7 @@ def get_etud_ue_cap_html(context, etudid, formsemestre_id, ue_id, REQUEST=None):
valid["s"] += " (S%d )" % valid["semestre_id"]
valid["ds"] = formsemestre_id
H.append(
- ' %(code)s%(m)s%(s)s, le %(event_date)s effacer '
+ '%(code)s%(m)s%(s)s, le %(event_date)s effacer '
% valid
)
H.append("")
@@ -1311,7 +1311,7 @@ def etud_ue_suppress_validation(context, etudid, formsemestre_id, ue_id, REQUEST
return REQUEST.RESPONSE.redirect(
context.NotesURL()
- + "/formsemestre_validate_previous_ue?etudid=%s&formsemestre_id=%s"
+ + "/formsemestre_validate_previous_ue?etudid=%s&formsemestre_id=%s"
% (etudid, formsemestre_id)
)
diff --git a/sco_groups.py b/sco_groups.py
index aa79d05fd..d1dfc481b 100644
--- a/sco_groups.py
+++ b/sco_groups.py
@@ -847,13 +847,13 @@ def editPartitionForm(context, formsemestre_id=None, REQUEST=None):
)
if i != 0:
H.append(
- '%s '
+ '%s '
% (p["partition_id"], arrow_up)
)
H.append('')
if i < len(partitions) - 2:
H.append(
- '%s '
+ '%s '
% (p["partition_id"], arrow_down)
)
i += 1
@@ -1494,7 +1494,7 @@ def form_group_choice(
def make_query_groups(group_ids):
if group_ids:
- return "&".join(["group_ids%3Alist=" + group_id for group_id in group_ids])
+ return "&".join(["group_ids%3Alist=" + group_id for group_id in group_ids])
else:
return ""
diff --git a/sco_groups_view.py b/sco_groups_view.py
index 6336d9703..59a9470b3 100644
--- a/sco_groups_view.py
+++ b/sco_groups_view.py
@@ -343,7 +343,7 @@ class DisplayedGroupsInfos:
gq = []
for group_id in group_ids:
gq.append("group_ids=" + group_id)
- self.groups_query_args = "&".join(gq)
+ self.groups_query_args = "&".join(gq)
self.base_url = REQUEST.URL0 + "?" + self.groups_query_args
self.group_ids = group_ids
self.groups = []
@@ -457,10 +457,10 @@ def groups_table(
with_archives = int(with_archives)
with_annotations = int(with_annotations)
- base_url_np = groups_infos.base_url + "&with_codes=%s" % with_codes
+ base_url_np = groups_infos.base_url + "&with_codes=%s" % with_codes
base_url = (
base_url_np
- + "&with_paiement=%s&with_archives=%s&with_annotations=%s"
+ + "&with_paiement=%s&with_archives=%s&with_annotations=%s"
% (with_paiement, with_archives, with_annotations)
)
#
@@ -668,11 +668,11 @@ def groups_table(
[
tab.html(),
"",
- 'Feuille d\'appel Excel '
+ 'Feuille d\'appel Excel '
% (tab.base_url,),
- 'Table Excel '
+ 'Table Excel '
% (tab.base_url,),
- 'Fichier CSV pour Moodle (groupe sélectionné) '
+ 'Fichier CSV pour Moodle (groupe sélectionné) '
% (tab.base_url,),
"""
Fichier CSV pour Moodle (tous les groupes)
@@ -824,7 +824,7 @@ def tab_absences_html(context, groups_infos, etat=None, REQUEST=None):
" ",
form_choix_jour_saisie_hebdo(context, groups_infos, REQUEST=REQUEST),
" ",
- """Etat des absences du groupe """
+ """Etat des absences du groupe """
% (
groups_infos.groups_query_args,
groups_infos.formsemestre["date_debut"],
@@ -833,15 +833,15 @@ def tab_absences_html(context, groups_infos, etat=None, REQUEST=None):
" ",
"Feuilles ",
'",
]
@@ -853,7 +853,7 @@ def tab_absences_html(context, groups_infos, etat=None, REQUEST=None):
group_id = sco_groups.get_default_group(context, groups_infos.formsemestre_id)
if authuser.has_permission(ScoEtudInscrit, context):
H.append(
- 'Vérifier codes Apogée (de tous les groupes) '
+ 'Vérifier codes Apogée (de tous les groupes) '
% (group_id, etat or "")
)
# Lien pour ajout fichiers étudiants
diff --git a/sco_inscr_passage.py b/sco_inscr_passage.py
index e5bdd1c4f..d1fd08855 100644
--- a/sco_inscr_passage.py
+++ b/sco_inscr_passage.py
@@ -552,7 +552,7 @@ def etuds_select_boxes(
H.append(")")
if base_url and etuds:
H.append(
- '%s '
+ '%s '
% (base_url, src_cat, scu.ICON_XLS)
)
H.append("")
diff --git a/sco_liste_notes.py b/sco_liste_notes.py
index 55cd2e19c..fa662fb31 100644
--- a/sco_liste_notes.py
+++ b/sco_liste_notes.py
@@ -314,7 +314,7 @@ def _make_table_notes(
"_code_td_attrs": 'style="padding-left: 1em; padding-right: 2em;"',
"etudid": etudid,
"nom": scu.strupper(etud["nom"]),
- "_nomprenom_target": "formsemestre_bulletinetud?formsemestre_id=%s&etudid=%s"
+ "_nomprenom_target": "formsemestre_bulletinetud?formsemestre_id=%s&etudid=%s"
% (M["formsemestre_id"], etudid),
"_nomprenom_td_attrs": 'id="%s" class="etudinfo"' % (etud["etudid"]),
"prenom": scu.strcapitalize(scu.strlower(etud["prenom"])),
@@ -420,15 +420,15 @@ def _make_table_notes(
columns_ids.append("comment")
# titres divers:
- gl = "".join(["&group_ids%3Alist=" + g for g in group_ids])
+ gl = "".join(["&group_ids%3Alist=" + g for g in group_ids])
if note_sur_20:
- gl = "¬e_sur_20%3Alist=yes" + gl
+ gl = "¬e_sur_20%3Alist=yes" + gl
if anonymous_listing:
- gl = "&anonymous_listing%3Alist=yes" + gl
+ gl = "&anonymous_listing%3Alist=yes" + gl
if hide_groups:
- gl = "&hide_groups%3Alist=yes" + gl
+ gl = "&hide_groups%3Alist=yes" + gl
if with_emails:
- gl = "&with_emails%3Alist=yes" + gl
+ gl = "&with_emails%3Alist=yes" + gl
if len(evals) == 1:
evalname = "%s-%s" % (Mod["code"], ndb.DateDMYtoISO(E["jour"]))
hh = "%s, %s (%d étudiants)" % (E["description"], gr_title, len(etudids))
@@ -808,7 +808,7 @@ def evaluation_check_absences_html(
)
if linkabs:
H.append(
- 'signaler cette absence '
+ 'signaler cette absence '
% (
etud["etudid"],
urllib.quote(E["jour"]),
diff --git a/sco_lycee.py b/sco_lycee.py
index 0b3fbf933..6e5568c06 100644
--- a/sco_lycee.py
+++ b/sco_lycee.py
@@ -182,9 +182,9 @@ def formsemestre_etuds_lycees(
)
tab.base_url = "%s?formsemestre_id=%s" % (REQUEST.URL0, formsemestre_id)
if only_primo:
- tab.base_url += "&only_primo=1"
+ tab.base_url += "&only_primo=1"
if no_grouping:
- tab.base_url += "&no_grouping=1"
+ tab.base_url += "&no_grouping=1"
t = tab.make_page(context, format=format, with_html_headers=False, REQUEST=REQUEST)
if format != "html":
return t
diff --git a/sco_moduleimpl_inscriptions.py b/sco_moduleimpl_inscriptions.py
index 43327b244..6f68f5897 100644
--- a/sco_moduleimpl_inscriptions.py
+++ b/sco_moduleimpl_inscriptions.py
@@ -367,14 +367,14 @@ def moduleimpl_inscriptions_stats(context, formsemestre_id, REQUEST=None):
)
if can_change:
H.append(
- ''
+ ''
% (etud["etudid"], formsemestre_id, ue["ue_id"])
)
else:
H.append("(non réinscrit dans cette UE)")
if can_change:
H.append(
- ''
+ ''
% (etud["etudid"], formsemestre_id, ue["ue_id"])
)
H.append("")
diff --git a/sco_moduleimpl_status.py b/sco_moduleimpl_status.py
index ba32596da..52dbcb423 100644
--- a/sco_moduleimpl_status.py
+++ b/sco_moduleimpl_status.py
@@ -122,7 +122,7 @@ def moduleimpl_evaluation_menu(context, evaluation_id, nbnotes=0, REQUEST=None):
},
{
"title": "Absences ce jour",
- "url": "Absences/EtatAbsencesDate?date=%s&group_ids=%s"
+ "url": "Absences/EtatAbsencesDate?date=%s&group_ids=%s"
% (urllib.quote(E["jour"], safe=""), group_id),
"enabled": E["jour"],
},
@@ -322,7 +322,7 @@ def moduleimpl_status(context, moduleimpl_id=None, partition_id=None, REQUEST=No
if sem["etat"] == "1": # non verrouillé
top_table_links = (
"""Créer nouvelle évaluation
- Trier par date
+ Trier par date
"""
% M
)
@@ -384,14 +384,14 @@ def moduleimpl_status(context, moduleimpl_id=None, partition_id=None, REQUEST=No
H.append('')
if eval_index != (len(ModEvals) - 1) and caneditevals:
H.append(
- '%s '
+ '%s '
% (eval["evaluation_id"], arrow_up)
)
else:
H.append(arrow_none)
if (eval_index > 0) and caneditevals:
H.append(
- '%s '
+ '%s '
% (eval["evaluation_id"], arrow_down)
)
else:
@@ -546,7 +546,7 @@ def moduleimpl_status(context, moduleimpl_id=None, partition_id=None, REQUEST=No
if gr_moyenne["gr_nb_notes"] > 0:
H.append("%(gr_moy)s" % gr_moyenne)
H.append(
- """ (%s notes """
+ """ (%s notes """
% (
eval["evaluation_id"],
gr_moyenne["group_id"],
@@ -563,7 +563,7 @@ def moduleimpl_status(context, moduleimpl_id=None, partition_id=None, REQUEST=No
H.append("""[""")
if caneditnotes:
H.append(
- """incomplet ]"""
+ """incomplet ]"""
% (eval["evaluation_id"], gr_moyenne["group_id"])
)
else:
@@ -572,7 +572,7 @@ def moduleimpl_status(context, moduleimpl_id=None, partition_id=None, REQUEST=No
H.append(""" """)
if caneditnotes:
H.append(
- """"""
+ """ """
% (eval["evaluation_id"], gr_moyenne["group_id"])
)
H.append("pas de notes")
diff --git a/sco_page_etud.py b/sco_page_etud.py
index 91d6457a7..b0cb60ee5 100644
--- a/sco_page_etud.py
+++ b/sco_page_etud.py
@@ -75,12 +75,12 @@ def _menuScolarite(context, authuser, sem, etudid):
if ins["etat"] != "D":
dem_title = "Démission"
dem_url = (
- "formDem?etudid=%(etudid)s&formsemestre_id=%(formsemestre_id)s" % args
+ "formDem?etudid=%(etudid)s&formsemestre_id=%(formsemestre_id)s" % args
)
else:
dem_title = "Annuler la démission"
dem_url = (
- "doCancelDem?etudid=%(etudid)s&formsemestre_id=%(formsemestre_id)s"
+ "doCancelDem?etudid=%(etudid)s&formsemestre_id=%(formsemestre_id)s"
% args
)
@@ -88,12 +88,12 @@ def _menuScolarite(context, authuser, sem, etudid):
if ins["etat"] != sco_codes_parcours.DEF:
def_title = "Déclarer défaillance"
def_url = (
- "formDef?etudid=%(etudid)s&formsemestre_id=%(formsemestre_id)s" % args
+ "formDef?etudid=%(etudid)s&formsemestre_id=%(formsemestre_id)s" % args
)
elif ins["etat"] == sco_codes_parcours.DEF:
def_title = "Annuler la défaillance"
def_url = (
- "doCancelDef?etudid=%(etudid)s&formsemestre_id=%(formsemestre_id)s"
+ "doCancelDef?etudid=%(etudid)s&formsemestre_id=%(formsemestre_id)s"
% args
)
def_enabled = (
@@ -103,7 +103,7 @@ def _menuScolarite(context, authuser, sem, etudid):
)
items = [
# { 'title' : 'Changer de groupe',
- # 'url' : 'formChangeGroup?etudid=%s&formsemestre_id=%s' % (etudid,ins['formsemestre_id']),
+ # 'url' : 'formChangeGroup?etudid=%s&formsemestre_id=%s' % (etudid,ins['formsemestre_id']),
# 'enabled' : authuser.has_permission(ScoEtudChangeGroups,context) and not locked,
# },
{
@@ -113,20 +113,20 @@ def _menuScolarite(context, authuser, sem, etudid):
},
{
"title": "Validation du semestre (jury)",
- "url": "Notes/formsemestre_validation_etud_form?etudid=%(etudid)s&formsemestre_id=%(formsemestre_id)s"
+ "url": "Notes/formsemestre_validation_etud_form?etudid=%(etudid)s&formsemestre_id=%(formsemestre_id)s"
% args,
"enabled": authuser.has_permission(ScoEtudInscrit, context) and not locked,
},
{"title": def_title, "url": def_url, "enabled": def_enabled},
{
"title": "Inscrire à un module optionnel (ou au sport)",
- "url": "Notes/formsemestre_inscription_option?formsemestre_id=%(formsemestre_id)s&etudid=%(etudid)s"
+ "url": "Notes/formsemestre_inscription_option?formsemestre_id=%(formsemestre_id)s&etudid=%(etudid)s"
% args,
"enabled": authuser.has_permission(ScoEtudInscrit, context) and not locked,
},
{
"title": "Désinscrire (en cas d'erreur)",
- "url": "Notes/formsemestre_desinscription?formsemestre_id=%(formsemestre_id)s&etudid=%(etudid)s"
+ "url": "Notes/formsemestre_desinscription?formsemestre_id=%(formsemestre_id)s&etudid=%(etudid)s"
% args,
"enabled": authuser.has_permission(ScoEtudInscrit, context) and not locked,
},
@@ -138,7 +138,7 @@ def _menuScolarite(context, authuser, sem, etudid):
},
{
"title": "Enregistrer un semestre effectué ailleurs",
- "url": "Notes/formsemestre_ext_create_form?formsemestre_id=%(formsemestre_id)s&etudid=%(etudid)s"
+ "url": "Notes/formsemestre_ext_create_form?formsemestre_id=%(formsemestre_id)s&etudid=%(etudid)s"
% args,
"enabled": authuser.has_permission(ScoImplement, context),
},
@@ -290,7 +290,7 @@ def ficheEtud(context, etudid=None, REQUEST=None):
else:
a[
"dellink"
- ] = ' %s ' % (
+ ] = '%s ' % (
etudid,
a["id"],
scu.icontag(
@@ -394,7 +394,7 @@ def ficheEtud(context, etudid=None, REQUEST=None):
# Inscriptions
if info["sems"]: # XXX rcl unused ? à voir
rcl = (
- """(récapitulatif parcours )"""
+ """(récapitulatif parcours )"""
% info
)
else:
diff --git a/sco_placement.py b/sco_placement.py
index 9487db08f..f1d4382b3 100644
--- a/sco_placement.py
+++ b/sco_placement.py
@@ -205,7 +205,7 @@ def do_placement_selectetuds(context, REQUEST):
if columns in ("3", "4", "5", "6", "7", "8"):
gs = [("group_ids%3Alist=" + urllib.quote_plus(x)) for x in group_ids]
query = (
- "evaluation_id=%s&placement_method=%s&teachers=%s&building=%s&room=%s&columns=%s&numbering=%s&"
+ "evaluation_id=%s&placement_method=%s&teachers=%s&building=%s&room=%s&columns=%s&numbering=%s&"
% (
evaluation_id,
placement_method,
@@ -215,7 +215,7 @@ def do_placement_selectetuds(context, REQUEST):
columns,
numbering,
)
- + "&".join(gs)
+ + "&".join(gs)
)
return REQUEST.RESPONSE.redirect(
context.NotesURL() + "/do_placement?" + query
diff --git a/sco_pvjury.py b/sco_pvjury.py
index 191247c75..e86a5c008 100644
--- a/sco_pvjury.py
+++ b/sco_pvjury.py
@@ -867,7 +867,7 @@ def formsemestre_lettres_individuelles(
PDFLOCK.release()
if not pdfdoc:
return REQUEST.RESPONSE.redirect(
- "formsemestre_status?formsemestre_id={}&head_message=Aucun%20%C3%A9tudiant%20n%27a%20de%20d%C3%A9cision%20de%20jury".format(
+ "formsemestre_status?formsemestre_id={}&head_message=Aucun%20%C3%A9tudiant%20n%27a%20de%20d%C3%A9cision%20de%20jury".format(
formsemestre_id
)
)
diff --git a/sco_recapcomplet.py b/sco_recapcomplet.py
index 90e1832f4..61ae69e08 100644
--- a/sco_recapcomplet.py
+++ b/sco_recapcomplet.py
@@ -173,7 +173,7 @@ def formsemestre_recapcomplet(
)
else:
H.append(
- """Saisie des décisions du jury """
+ """Saisie des décisions du jury """
% formsemestre_id
)
H.append("")
@@ -556,9 +556,9 @@ def make_formsemestre_recapcomplet(
"""