diff --git a/app/scodoc/sco_moduleimpl_status.py b/app/scodoc/sco_moduleimpl_status.py index 66387efa55..e11a9a2998 100644 --- a/app/scodoc/sco_moduleimpl_status.py +++ b/app/scodoc/sco_moduleimpl_status.py @@ -305,7 +305,15 @@ def moduleimpl_status(moduleimpl_id=None, partition_id=None): 'Règle de calcul: moyenne=%s' % M["computation_expr"] ) - H.append('inutilisée dans cette version de ScoDoc') + H.append("""inutilisée dans cette version de ScoDoc""") + if sco_moduleimpl.can_change_ens(moduleimpl_id, raise_exc=False): + H.append( + f""" supprimer""" + ) + H.append("""""") H.append("") else: H.append( diff --git a/app/views/notes.py b/app/views/notes.py index b1514ef5ad..2792ae8939 100644 --- a/app/views/notes.py +++ b/app/views/notes.py @@ -51,6 +51,7 @@ from app.models.config import ScoDocSiteConfig from app.models.etudiants import Identite from app.models.formsemestre import FormSemestre from app.models.formsemestre import FormSemestreUEComputationExpr +from app.models.moduleimpls import ModuleImpl from app.models.modules import Module from app.models.ues import UniteEns @@ -1142,6 +1143,8 @@ _EXPR_HELP = """

Expérimental: formule de calcul de la moyenne % def edit_moduleimpl_expr(moduleimpl_id): """Edition formule calcul moyenne module Accessible par Admin, dir des etud et responsable module + + Inutilisé en ScoDoc 9. """ M, sem = sco_moduleimpl.can_change_ens(moduleimpl_id) H = [ @@ -1209,6 +1212,29 @@ def edit_moduleimpl_expr(moduleimpl_id): ) +@bp.route("/delete_moduleimpl_expr", methods=["GET", "POST"]) +@scodoc +@permission_required(Permission.ScoView) +@scodoc7func +def delete_moduleimpl_expr(moduleimpl_id): + """Suppression formule calcul moyenne module + Accessible par Admin, dir des etud et responsable module + """ + modimpl = ModuleImpl.query.get_or_404(moduleimpl_id) + sco_moduleimpl.can_change_ens(moduleimpl_id) + modimpl.computation_expr = None + db.session.add(modimpl) + db.session.commit() + flash("Ancienne formule supprimée") + return flask.redirect( + url_for( + "notes.moduleimpl_status", + scodoc_dept=g.scodoc_dept, + moduleimpl_id=moduleimpl_id, + ) + ) + + @bp.route("/view_module_abs") @scodoc @permission_required(Permission.ScoView)