Fix: creation matieres sans numeros

This commit is contained in:
Emmanuel Viennet 2023-07-10 14:32:16 +02:00 committed by iziram
parent 720af0a061
commit 5eb8770e93
4 changed files with 17 additions and 9 deletions

View File

@ -1,6 +1,5 @@
"""ScoDoc 9 models : Modules """ScoDoc 9 models : Modules
""" """
from operator import attrgetter
from flask import current_app from flask import current_app
from app import db from app import db

View File

@ -32,6 +32,7 @@ import flask
from flask import g, url_for, request from flask import g, url_for, request
from app.models.events import ScolarNews from app.models.events import ScolarNews
from app.models.formations import Matiere from app.models.formations import Matiere
from app.models.ues import UniteEns
import app.scodoc.notesdb as ndb import app.scodoc.notesdb as ndb
import app.scodoc.sco_utils as scu import app.scodoc.sco_utils as scu
@ -100,13 +101,12 @@ def do_matiere_create(args):
def matiere_create(ue_id=None): def matiere_create(ue_id=None):
"""Creation d'une matiere""" """Creation d'une matiere"""
from app.scodoc import sco_edit_ue ue: UniteEns = UniteEns.query.get_or_404(ue_id)
default_numero = max([mat.numero for mat in ue.matieres] or [9]) + 1
UE = sco_edit_ue.ue_list(args={"ue_id": ue_id})[0]
H = [ H = [
html_sco_header.sco_header(page_title="Création d'une matière"), html_sco_header.sco_header(page_title="Création d'une matière"),
"""<h2>Création d'une matière dans l'UE %(titre)s (%(acronyme)s)</h2>""" % UE, f"""<h2>Création d'une matière dans l'UE {ue.titre} ({ue.acronyme})</h2>
"""<p class="help">Les matières sont des groupes de modules dans une UE <p class="help">Les matières sont des groupes de modules dans une UE
d'une formation donnée. Les matières servent surtout pour la d'une formation donnée. Les matières servent surtout pour la
présentation (bulletins, etc) mais <em>n'ont pas de rôle dans le calcul présentation (bulletins, etc) mais <em>n'ont pas de rôle dans le calcul
des notes.</em> des notes.</em>
@ -126,13 +126,21 @@ associé.
scu.get_request_args(), scu.get_request_args(),
( (
("ue_id", {"input_type": "hidden", "default": ue_id}), ("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", "numero",
{ {
"size": 2, "size": 2,
"explanation": "numéro (1,2,3,4...) pour affichage", "explanation": "numéro (1,2,3,4...) pour affichage",
"type": "int", "type": "int",
"default": default_numero,
"allow_null": False,
}, },
), ),
), ),
@ -140,7 +148,7 @@ associé.
) )
dest_url = url_for( 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: if tf[0] == 0:

View File

@ -659,6 +659,7 @@ def module_edit(
"explanation": "numéro (1, 2, 3, 4, ...) pour ordre d'affichage", "explanation": "numéro (1, 2, 3, 4, ...) pour ordre d'affichage",
"type": "int", "type": "int",
"default": default_num, "default": default_num,
"allow_null": False,
}, },
), ),
] ]

View File

@ -1,7 +1,7 @@
# -*- mode: python -*- # -*- mode: python -*-
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
SCOVERSION = "9.4.99" SCOVERSION = "9.5.0"
SCONAME = "ScoDoc" SCONAME = "ScoDoc"