diff --git a/app/models/modules.py b/app/models/modules.py index 85503f27..8295eeda 100644 --- a/app/models/modules.py +++ b/app/models/modules.py @@ -1,6 +1,5 @@ """ScoDoc 9 models : Modules """ -from operator import attrgetter from flask import current_app from app import db diff --git a/app/scodoc/sco_edit_matiere.py b/app/scodoc/sco_edit_matiere.py index ef425b49..360e02fc 100644 --- a/app/scodoc/sco_edit_matiere.py +++ b/app/scodoc/sco_edit_matiere.py @@ -32,6 +32,7 @@ import flask from flask import g, url_for, request from app.models.events import ScolarNews from app.models.formations import Matiere +from app.models.ues import UniteEns import app.scodoc.notesdb as ndb import app.scodoc.sco_utils as scu @@ -100,13 +101,12 @@ def do_matiere_create(args): def matiere_create(ue_id=None): """Creation d'une matiere""" - from app.scodoc import sco_edit_ue - - UE = sco_edit_ue.ue_list(args={"ue_id": ue_id})[0] + ue: UniteEns = UniteEns.query.get_or_404(ue_id) + default_numero = max([mat.numero for mat in ue.matieres] or [9]) + 1 H = [ html_sco_header.sco_header(page_title="Création d'une matière"), - """

Création d'une matière dans l'UE %(titre)s (%(acronyme)s)

""" % UE, - """

Les matières sont des groupes de modules dans une UE + f"""

Création d'une matière dans l'UE {ue.titre} ({ue.acronyme})

+

Les matières sont des groupes de modules dans une UE d'une formation donnée. Les matières servent surtout pour la présentation (bulletins, etc) mais n'ont pas de rôle dans le calcul des notes. @@ -126,13 +126,21 @@ associé. scu.get_request_args(), ( ("ue_id", {"input_type": "hidden", "default": ue_id}), - ("titre", {"size": 30, "explanation": "nom de la matière."}), + ( + "titre", + { + "size": 30, + "explanation": "nom de la matière.", + }, + ), ( "numero", { "size": 2, "explanation": "numéro (1,2,3,4...) pour affichage", "type": "int", + "default": default_numero, + "allow_null": False, }, ), ), @@ -140,7 +148,7 @@ associé. ) dest_url = url_for( - "notes.ue_table", scodoc_dept=g.scodoc_dept, formation_id=UE["formation_id"] + "notes.ue_table", scodoc_dept=g.scodoc_dept, formation_id=ue.formation_id ) if tf[0] == 0: diff --git a/app/scodoc/sco_edit_module.py b/app/scodoc/sco_edit_module.py index 139afa84..83476eb1 100644 --- a/app/scodoc/sco_edit_module.py +++ b/app/scodoc/sco_edit_module.py @@ -659,6 +659,7 @@ def module_edit( "explanation": "numéro (1, 2, 3, 4, ...) pour ordre d'affichage", "type": "int", "default": default_num, + "allow_null": False, }, ), ]