Compare commits

..

No commits in common. "cd961e6e3ea65c52fbc40b2f59f198d5ff1f8847" and "d468a3f49ed9cb75816fea32af2664d6630ec5cf" have entirely different histories.

3 changed files with 64 additions and 82 deletions

View File

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

View File

@ -1013,16 +1013,11 @@ def mail_bulletin(formsemestre_id, I, pdfdata, filename, recipient_addr):
intro_mail = sco_preferences.get_preference("bul_intro_mail", formsemestre_id) intro_mail = sco_preferences.get_preference("bul_intro_mail", formsemestre_id)
if intro_mail: if intro_mail:
try: hea = intro_mail % {
hea = intro_mail % { "nomprenom": etud["nomprenom"],
"nomprenom": etud["nomprenom"], "dept": dept,
"dept": dept, "webmaster": webmaster,
"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: else:
hea = "" hea = ""

View File

@ -854,27 +854,23 @@ def formsemestre_import_etud_admission(
apo_emailperso = etud.get("mailperso", "") apo_emailperso = etud.get("mailperso", "")
if info["emailperso"] and not apo_emailperso: if info["emailperso"] and not apo_emailperso:
apo_emailperso = info["emailperso"] apo_emailperso = info["emailperso"]
if import_email: if (
if not "mail" in etud: import_email
raise ScoValueError( and info["email"] != etud["mail"]
"la réponse portail n'a pas le champs requis 'mail'" or info["emailperso"] != apo_emailperso
) ):
if ( sco_etud.adresse_edit(
info["email"] != etud["mail"] cnx,
or info["emailperso"] != apo_emailperso args={
): "etudid": etudid,
sco_etud.adresse_edit( "adresse_id": info["adresse_id"],
cnx, "email": etud["mail"],
args={ "emailperso": apo_emailperso,
"etudid": etudid, },
"adresse_id": info["adresse_id"], )
"email": etud["mail"], # notifie seulement les changements d'adresse mail institutionnelle
"emailperso": apo_emailperso, if info["email"] != etud["mail"]:
}, changed_mails.append((info, etud["mail"]))
)
# notifie seulement les changements d'adresse mail institutionnelle
if info["email"] != etud["mail"]:
changed_mails.append((info, etud["mail"]))
else: else:
unknowns.append(code_nip) unknowns.append(code_nip)
sco_cache.invalidate_formsemestre(formsemestre_id=sem["formsemestre_id"]) sco_cache.invalidate_formsemestre(formsemestre_id=sem["formsemestre_id"])