Compare commits

...

4 Commits

3 changed files with 82 additions and 64 deletions

View File

@ -66,6 +66,7 @@ from app.scodoc.sco_permissions import Permission
from app.scodoc.sco_prepajury import feuille_preparation_jury
from app.scodoc.sco_pvjury import formsemestre_pvjury
from app.scodoc.sco_recapcomplet import formsemestre_recapcomplet
from app.scodoc.sco_saisie_notes import notes_add
@bp.route("/departements", methods=["GET"])
@ -158,11 +159,12 @@ def referenciel_competences(dept: str, formation_id: int):
return jsonify(ref.to_dict())
@bp.route("/departements/<string:dept>/formations/programme/<string:sem_idx>", methods=["GET"])
def semestre_index(dept: str, sem_idx: str):
@bp.route("/departements/<string:dept>/formsemestre<string:formsemestre_id>/programme", methods=["GET"])
def semestre_index(dept: str, formsemestre_id: int):
"""
Retourne la liste des Ues, ressources et SAE d'un semestre
"""
"""
return error_response(501, message="not implemented")
@ -570,15 +572,18 @@ def evaluation_notes(evaluation_id: int):
return jsonify(data)
@bp.route(
"/evaluations/eval_set_notes?eval_id=<int:eval_id>&etudid=<int:etudid>&note=<int:note>",
methods=["POST"],
)
@bp.route("/evaluations/eval_set_notes?eval_id=<int:eval_id>&etudid=<int:etudid>&note=<float:note>", methods=["POST"])
@bp.route("/evaluations/eval_set_notes?eval_id=<int:eval_id>&nip=<int:nip>&note=<float:note>", methods=["POST"])
@bp.route("/evaluations/eval_set_notes?eval_id=<int:eval_id>&ine=<int:ine>&note=<float:note>", methods=["POST"])
@token_auth.login_required
def evaluation_set_notes(eval_id: int, etudid: int, note: float):
"""
Set les notes d'une évaluation pour un étudiant donnée
"""
# fonction to use : notes_add
# Qu'est ce qu'un user ???
#notes_add()
return error_response(501, message="Not implemented")
@ -845,6 +850,7 @@ def abs_groupe_etat(
###################################################### Logos ##########################################################
# XXX TODO voir get_logo déjà existant dans app/views/scodoc.py
@bp.route("/logos", methods=["GET"])
def liste_logos(format="json"):
@ -852,15 +858,16 @@ def liste_logos(format="json"):
Liste des logos définis pour le site scodoc.
"""
# fonction to use : list_logos()
try:
res = list_logos()
except ValueError:
return error_response(409, message="La requête ne peut être traitée en létat actuel")
# try:
# res = list_logos()
# except ValueError:
# return error_response(409, message="La requête ne peut être traitée en létat actuel")
#
# if res is None:
# return error_response(200, message="Aucun logo trouvé correspondant aux informations renseignés")
#
# return res
if res is None:
return error_response(200, message="Aucun logo trouvé correspondant aux informations renseignés")
return res
@bp.route("/logos/<string:logo_name>", methods=["GET"])
@ -869,15 +876,17 @@ def recup_logo_global(logo_name: str):
Retourne l'image au format png ou jpg
"""
# fonction to use find_logo
try:
res = find_logo(logo_name)
except ValueError:
return error_response(409, message="La requête ne peut être traitée en létat actuel")
# try:
# res = find_logo(logo_name)
# except ValueError:
# return error_response(409, message="La requête ne peut être traitée en létat actuel")
#
# if res is None:
# return error_response(200, message="Aucun logo trouvé correspondant aux informations renseignés")
#
# return res
if res is None:
return error_response(200, message="Aucun logo trouvé correspondant aux informations renseignés")
return res
@bp.route("/departements/<string:dept>/logos", methods=["GET"])
@ -886,16 +895,16 @@ def logo_dept(dept: str):
Liste des logos définis pour le département visé.
"""
# fonction to use: _list_dept_logos
dept_id = models.Departement.query.filter_by(acronym=dept).first()
try:
res = _list_dept_logos(dept_id.id)
except ValueError:
return error_response(409, message="La requête ne peut être traitée en létat actuel")
if res is None:
return error_response(200, message="Aucun logo trouvé correspondant aux informations renseignés")
return res
# dept_id = models.Departement.query.filter_by(acronym=dept).first()
# try:
# res = _list_dept_logos(dept_id.id)
# except ValueError:
# return error_response(409, message="La requête ne peut être traitée en létat actuel")
#
# if res is None:
# return error_response(200, message="Aucun logo trouvé correspondant aux informations renseignés")
#
# return res
@bp.route("/departement/<string:dept>/logos/<string:logo_name>", methods=["GET"])
@ -904,13 +913,13 @@ def recup_logo_dept_global(dept: str, logo_name: str):
L'image format png ou jpg
"""
# fonction to use find_logo
dept_id = models.Departement.query.filter_by(acronym=dept).first()
try:
res = find_logo(logo_name, dept_id.id)
except ValueError:
return error_response(409, message="La requête ne peut être traitée en létat actuel")
if res is None:
return error_response(200, message="Aucun logo trouvé correspondant aux informations renseignés")
return res
# dept_id = models.Departement.query.filter_by(acronym=dept).first()
# try:
# res = find_logo(logo_name, dept_id.id)
# except ValueError:
# return error_response(409, message="La requête ne peut être traitée en létat actuel")
#
# if res is None:
# return error_response(200, message="Aucun logo trouvé correspondant aux informations renseignés")
#
# return res

View File

@ -1013,11 +1013,16 @@ def mail_bulletin(formsemestre_id, I, pdfdata, filename, recipient_addr):
intro_mail = sco_preferences.get_preference("bul_intro_mail", formsemestre_id)
if intro_mail:
try:
hea = intro_mail % {
"nomprenom": etud["nomprenom"],
"dept": dept,
"webmaster": webmaster,
}
except KeyError as e:
raise ScoValueError(
"format 'Message d'accompagnement' (bul_intro_mail) invalide, revoir les réglages dans les préférences"
)
else:
hea = ""

View File

@ -854,9 +854,13 @@ def formsemestre_import_etud_admission(
apo_emailperso = etud.get("mailperso", "")
if info["emailperso"] and not apo_emailperso:
apo_emailperso = info["emailperso"]
if import_email:
if not "mail" in etud:
raise ScoValueError(
"la réponse portail n'a pas le champs requis 'mail'"
)
if (
import_email
and info["email"] != etud["mail"]
info["email"] != etud["mail"]
or info["emailperso"] != apo_emailperso
):
sco_etud.adresse_edit(