forked from ScoDoc/ScoDoc
rename some old methods
This commit is contained in:
parent
2ca91fc4e9
commit
256e89605b
@ -317,6 +317,8 @@ def set_sco_dept(scodoc_dept: str):
|
|||||||
g.scodoc_dept_id = dept.id # l'id
|
g.scodoc_dept_id = dept.id # l'id
|
||||||
if not hasattr(g, "db_conn"):
|
if not hasattr(g, "db_conn"):
|
||||||
ndb.open_db_connection()
|
ndb.open_db_connection()
|
||||||
|
if not hasattr(g, "stored_get_formsemestre"):
|
||||||
|
g.stored_get_formsemestre = {}
|
||||||
|
|
||||||
|
|
||||||
def user_db_init():
|
def user_db_init():
|
||||||
|
@ -105,9 +105,7 @@ def get_sem_ues_modimpls(formsemestre_id, modimpls=None):
|
|||||||
modimpls = sco_moduleimpl.moduleimpl_list(formsemestre_id=formsemestre_id)
|
modimpls = sco_moduleimpl.moduleimpl_list(formsemestre_id=formsemestre_id)
|
||||||
uedict = {}
|
uedict = {}
|
||||||
for modimpl in modimpls:
|
for modimpl in modimpls:
|
||||||
mod = sco_edit_module.do_module_list(args={"module_id": modimpl["module_id"]})[
|
mod = sco_edit_module.module_list(args={"module_id": modimpl["module_id"]})[0]
|
||||||
0
|
|
||||||
]
|
|
||||||
modimpl["module"] = mod
|
modimpl["module"] = mod
|
||||||
if not mod["ue_id"] in uedict:
|
if not mod["ue_id"] in uedict:
|
||||||
ue = sco_edit_ue.do_ue_list(args={"ue_id": mod["ue_id"]})[0]
|
ue = sco_edit_ue.do_ue_list(args={"ue_id": mod["ue_id"]})[0]
|
||||||
@ -212,16 +210,19 @@ class NotesTable(object):
|
|||||||
valid_evals,
|
valid_evals,
|
||||||
mods_att,
|
mods_att,
|
||||||
self.expr_diagnostics,
|
self.expr_diagnostics,
|
||||||
) = sco_compute_moy.compute_modimpls_moyennes(self, formsemestre_id)
|
) = sco_compute_moy.formsemestre_compute_modimpls_moyennes(
|
||||||
|
self, formsemestre_id
|
||||||
|
)
|
||||||
self._mods_att = mods_att # liste des modules avec des notes en attente
|
self._mods_att = mods_att # liste des modules avec des notes en attente
|
||||||
self._matmoys = {} # moyennes par matieres
|
self._matmoys = {} # moyennes par matieres
|
||||||
self._valid_evals = {} # { evaluation_id : eval }
|
self._valid_evals = {} # { evaluation_id : eval }
|
||||||
for e in valid_evals:
|
for e in valid_evals:
|
||||||
self._valid_evals[e["evaluation_id"]] = e # Liste des modules et UE
|
self._valid_evals[e["evaluation_id"]] = e # Liste des modules et UE
|
||||||
uedict = {} # public member: { ue_id : ue }
|
uedict = {} # public member: { ue_id : ue }
|
||||||
self.uedict = uedict
|
self.uedict = uedict # les ues qui ont un modimpl dans ce semestre
|
||||||
for modimpl in self._modimpls:
|
for modimpl in self._modimpls:
|
||||||
mod = modimpl["module"] # has been added here by compute_modimpls_moyennes
|
# module has been added by formsemestre_compute_modimpls_moyennes
|
||||||
|
mod = modimpl["module"]
|
||||||
if not mod["ue_id"] in uedict:
|
if not mod["ue_id"] in uedict:
|
||||||
ue = sco_edit_ue.do_ue_list(args={"ue_id": mod["ue_id"]})[0]
|
ue = sco_edit_ue.do_ue_list(args={"ue_id": mod["ue_id"]})[0]
|
||||||
uedict[ue["ue_id"]] = ue
|
uedict[ue["ue_id"]] = ue
|
||||||
|
@ -27,10 +27,10 @@
|
|||||||
|
|
||||||
"""Calcul des moyennes de module
|
"""Calcul des moyennes de module
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import traceback
|
|
||||||
import pprint
|
import pprint
|
||||||
|
import traceback
|
||||||
|
|
||||||
|
from flask import url_for, g
|
||||||
import app.scodoc.sco_utils as scu
|
import app.scodoc.sco_utils as scu
|
||||||
import app.scodoc.notesdb as ndb
|
import app.scodoc.notesdb as ndb
|
||||||
from app.scodoc.sco_utils import (
|
from app.scodoc.sco_utils import (
|
||||||
@ -40,7 +40,7 @@ from app.scodoc.sco_utils import (
|
|||||||
EVALUATION_RATTRAPAGE,
|
EVALUATION_RATTRAPAGE,
|
||||||
EVALUATION_SESSION2,
|
EVALUATION_SESSION2,
|
||||||
)
|
)
|
||||||
from app.scodoc.sco_exceptions import ScoException
|
from app.scodoc.sco_exceptions import ScoValueError
|
||||||
from app import log
|
from app import log
|
||||||
from app.scodoc import sco_abs
|
from app.scodoc import sco_abs
|
||||||
from app.scodoc import sco_edit_module
|
from app.scodoc import sco_edit_module
|
||||||
@ -65,7 +65,8 @@ def moduleimpl_has_expression(mod):
|
|||||||
|
|
||||||
def formsemestre_expressions_use_abscounts(formsemestre_id):
|
def formsemestre_expressions_use_abscounts(formsemestre_id):
|
||||||
"""True si les notes de ce semestre dépendent des compteurs d'absences.
|
"""True si les notes de ce semestre dépendent des compteurs d'absences.
|
||||||
Cela n'est normalement pas le cas, sauf si des formules utilisateur utilisent ces compteurs.
|
Cela n'est normalement pas le cas, sauf si des formules utilisateur
|
||||||
|
utilisent ces compteurs.
|
||||||
"""
|
"""
|
||||||
# check presence of 'nbabs' in expressions
|
# check presence of 'nbabs' in expressions
|
||||||
ab = "nb_abs" # chaine recherchée
|
ab = "nb_abs" # chaine recherchée
|
||||||
@ -128,7 +129,7 @@ def compute_user_formula(
|
|||||||
coefs,
|
coefs,
|
||||||
coefs_mask,
|
coefs_mask,
|
||||||
formula,
|
formula,
|
||||||
diag_info={}, # infos supplementaires a placer ds messages d'erreur
|
diag_info=None, # infos supplementaires a placer ds messages d'erreur
|
||||||
use_abs=True,
|
use_abs=True,
|
||||||
):
|
):
|
||||||
"""Calcul moyenne a partir des notes et coefs, en utilisant la formule utilisateur (une chaine).
|
"""Calcul moyenne a partir des notes et coefs, en utilisant la formule utilisateur (une chaine).
|
||||||
@ -164,9 +165,14 @@ def compute_user_formula(
|
|||||||
if (user_moy > 20) or (user_moy < 0):
|
if (user_moy > 20) or (user_moy < 0):
|
||||||
etud = sco_etud.get_etud_info(etudid=etudid, filled=True)[0]
|
etud = sco_etud.get_etud_info(etudid=etudid, filled=True)[0]
|
||||||
|
|
||||||
raise ScoException(
|
raise ScoValueError(
|
||||||
"""valeur moyenne %s hors limite pour <a href="formsemestre_bulletinetud?formsemestre_id=%s&etudid=%s">%s</a>"""
|
f"""
|
||||||
% (user_moy, sem["formsemestre_id"], etudid, etud["nomprenom"])
|
Valeur moyenne {user_moy} hors limite pour
|
||||||
|
<a href="{url_for('notes.formsemestre_bulletinetud',
|
||||||
|
scodoc_dept=g.scodoc_dept,
|
||||||
|
formsemestre_id=sem["formsemestre_id"],
|
||||||
|
etudid=etudid
|
||||||
|
)}">{etud["nomprenom"]}</a>"""
|
||||||
)
|
)
|
||||||
except:
|
except:
|
||||||
log(
|
log(
|
||||||
@ -183,7 +189,7 @@ def compute_user_formula(
|
|||||||
return user_moy
|
return user_moy
|
||||||
|
|
||||||
|
|
||||||
def do_moduleimpl_moyennes(nt, mod):
|
def compute_moduleimpl_moyennes(nt, modimpl):
|
||||||
"""Retourne dict { etudid : note_moyenne } pour tous les etuds inscrits
|
"""Retourne dict { etudid : note_moyenne } pour tous les etuds inscrits
|
||||||
au moduleimpl mod, la liste des evaluations "valides" (toutes notes entrées
|
au moduleimpl mod, la liste des evaluations "valides" (toutes notes entrées
|
||||||
ou en attente), et att (vrai s'il y a des notes en attente dans ce module).
|
ou en attente), et att (vrai s'il y a des notes en attente dans ce module).
|
||||||
@ -193,12 +199,12 @@ def do_moduleimpl_moyennes(nt, mod):
|
|||||||
S'il manque des notes et que le coef n'est pas nul,
|
S'il manque des notes et que le coef n'est pas nul,
|
||||||
la moyenne n'est pas calculée: NA
|
la moyenne n'est pas calculée: NA
|
||||||
Ne prend en compte que les evaluations où toutes les notes sont entrées.
|
Ne prend en compte que les evaluations où toutes les notes sont entrées.
|
||||||
Le résultat est une note sur 20.
|
Le résultat note_moyenne est une note sur 20.
|
||||||
"""
|
"""
|
||||||
diag_info = {} # message d'erreur formule
|
diag_info = {} # message d'erreur formule
|
||||||
moduleimpl_id = mod["moduleimpl_id"]
|
moduleimpl_id = modimpl["moduleimpl_id"]
|
||||||
is_malus = mod["module"]["module_type"] == scu.MODULE_MALUS
|
is_malus = modimpl["module"]["module_type"] == scu.MODULE_MALUS
|
||||||
sem = sco_formsemestre.get_formsemestre(mod["formsemestre_id"])
|
sem = sco_formsemestre.get_formsemestre(modimpl["formsemestre_id"])
|
||||||
etudids = sco_moduleimpl.moduleimpl_listeetuds(
|
etudids = sco_moduleimpl.moduleimpl_listeetuds(
|
||||||
moduleimpl_id
|
moduleimpl_id
|
||||||
) # tous, y compris demissions
|
) # tous, y compris demissions
|
||||||
@ -207,7 +213,7 @@ def do_moduleimpl_moyennes(nt, mod):
|
|||||||
[
|
[
|
||||||
x["etudid"]
|
x["etudid"]
|
||||||
for x in sco_formsemestre_inscriptions.do_formsemestre_inscription_listinscrits(
|
for x in sco_formsemestre_inscriptions.do_formsemestre_inscription_listinscrits(
|
||||||
mod["formsemestre_id"]
|
modimpl["formsemestre_id"]
|
||||||
)
|
)
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
@ -218,7 +224,7 @@ def do_moduleimpl_moyennes(nt, mod):
|
|||||||
key=lambda x: (x["numero"], x["jour"], x["heure_debut"])
|
key=lambda x: (x["numero"], x["jour"], x["heure_debut"])
|
||||||
) # la plus ancienne en tête
|
) # la plus ancienne en tête
|
||||||
|
|
||||||
user_expr = moduleimpl_has_expression(mod)
|
user_expr = moduleimpl_has_expression(modimpl)
|
||||||
attente = False
|
attente = False
|
||||||
# recupere les notes de toutes les evaluations
|
# recupere les notes de toutes les evaluations
|
||||||
eval_rattr = None
|
eval_rattr = None
|
||||||
@ -268,7 +274,7 @@ def do_moduleimpl_moyennes(nt, mod):
|
|||||||
]
|
]
|
||||||
#
|
#
|
||||||
R = {}
|
R = {}
|
||||||
formula = scu.unescape_html(mod["computation_expr"])
|
formula = scu.unescape_html(modimpl["computation_expr"])
|
||||||
formula_use_abs = "abs" in formula
|
formula_use_abs = "abs" in formula
|
||||||
|
|
||||||
for etudid in insmod_set: # inscrits au semestre et au module
|
for etudid in insmod_set: # inscrits au semestre et au module
|
||||||
@ -365,7 +371,7 @@ def do_moduleimpl_moyennes(nt, mod):
|
|||||||
return R, valid_evals, attente, diag_info
|
return R, valid_evals, attente, diag_info
|
||||||
|
|
||||||
|
|
||||||
def compute_modimpls_moyennes(nt, formsemestre_id):
|
def formsemestre_compute_modimpls_moyennes(nt, formsemestre_id):
|
||||||
"""retourne dict { moduleimpl_id : { etudid, note_moyenne_dans_ce_module } },
|
"""retourne dict { moduleimpl_id : { etudid, note_moyenne_dans_ce_module } },
|
||||||
la liste des moduleimpls, la liste des evaluations valides,
|
la liste des moduleimpls, la liste des evaluations valides,
|
||||||
liste des moduleimpls avec notes en attente.
|
liste des moduleimpls avec notes en attente.
|
||||||
@ -383,15 +389,16 @@ def compute_modimpls_moyennes(nt, formsemestre_id):
|
|||||||
mods_att = []
|
mods_att = []
|
||||||
expr_diags = []
|
expr_diags = []
|
||||||
for modimpl in modimpls:
|
for modimpl in modimpls:
|
||||||
mod = sco_edit_module.do_module_list(args={"module_id": modimpl["module_id"]})[
|
mod = sco_edit_module.module_list(args={"module_id": modimpl["module_id"]})[0]
|
||||||
0
|
|
||||||
]
|
|
||||||
modimpl["module"] = mod # add module dict to moduleimpl (used by nt)
|
modimpl["module"] = mod # add module dict to moduleimpl (used by nt)
|
||||||
moduleimpl_id = modimpl["moduleimpl_id"]
|
moduleimpl_id = modimpl["moduleimpl_id"]
|
||||||
assert moduleimpl_id not in D
|
assert moduleimpl_id not in D
|
||||||
D[moduleimpl_id], valid_evals_mod, attente, expr_diag = do_moduleimpl_moyennes(
|
(
|
||||||
nt, modimpl
|
D[moduleimpl_id],
|
||||||
)
|
valid_evals_mod,
|
||||||
|
attente,
|
||||||
|
expr_diag,
|
||||||
|
) = compute_moduleimpl_moyennes(nt, modimpl)
|
||||||
valid_evals_per_mod[moduleimpl_id] = valid_evals_mod
|
valid_evals_per_mod[moduleimpl_id] = valid_evals_mod
|
||||||
valid_evals += valid_evals_mod
|
valid_evals += valid_evals_mod
|
||||||
if attente:
|
if attente:
|
||||||
|
@ -313,13 +313,13 @@ def invalidate_sems_in_formation(formation_id):
|
|||||||
|
|
||||||
def module_move(module_id, after=0, redirect=1):
|
def module_move(module_id, after=0, redirect=1):
|
||||||
"""Move before/after previous one (decrement/increment numero)"""
|
"""Move before/after previous one (decrement/increment numero)"""
|
||||||
module = sco_edit_module.do_module_list({"module_id": module_id})[0]
|
module = sco_edit_module.module_list({"module_id": module_id})[0]
|
||||||
redirect = int(redirect)
|
redirect = int(redirect)
|
||||||
after = int(after) # 0: deplace avant, 1 deplace apres
|
after = int(after) # 0: deplace avant, 1 deplace apres
|
||||||
if after not in (0, 1):
|
if after not in (0, 1):
|
||||||
raise ValueError('invalid value for "after"')
|
raise ValueError('invalid value for "after"')
|
||||||
formation_id = module["formation_id"]
|
formation_id = module["formation_id"]
|
||||||
others = sco_edit_module.do_module_list({"matiere_id": module["matiere_id"]})
|
others = sco_edit_module.module_list({"matiere_id": module["matiere_id"]})
|
||||||
# log('others=%s' % others)
|
# log('others=%s' % others)
|
||||||
if len(others) > 1:
|
if len(others) > 1:
|
||||||
idx = [p["module_id"] for p in others].index(module_id)
|
idx = [p["module_id"] for p in others].index(module_id)
|
||||||
|
@ -174,7 +174,7 @@ def do_matiere_delete(oid):
|
|||||||
raise ScoLockedFormError()
|
raise ScoLockedFormError()
|
||||||
log("do_matiere_delete: matiere_id=%s" % oid)
|
log("do_matiere_delete: matiere_id=%s" % oid)
|
||||||
# delete all modules in this matiere
|
# delete all modules in this matiere
|
||||||
mods = sco_edit_module.do_module_list({"matiere_id": oid})
|
mods = sco_edit_module.module_list({"matiere_id": oid})
|
||||||
for mod in mods:
|
for mod in mods:
|
||||||
sco_edit_module.do_module_delete(mod["module_id"])
|
sco_edit_module.do_module_delete(mod["module_id"])
|
||||||
_matiereEditor.delete(cnx, oid)
|
_matiereEditor.delete(cnx, oid)
|
||||||
|
@ -94,7 +94,7 @@ _moduleEditor = ndb.EditableTable(
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def do_module_list(*args, **kw):
|
def module_list(*args, **kw):
|
||||||
"list modules"
|
"list modules"
|
||||||
cnx = ndb.GetDBConnexion()
|
cnx = ndb.GetDBConnexion()
|
||||||
return _moduleEditor.list(cnx, *args, **kw)
|
return _moduleEditor.list(cnx, *args, **kw)
|
||||||
@ -138,7 +138,7 @@ def module_create(matiere_id=None):
|
|||||||
_MODULE_HELP,
|
_MODULE_HELP,
|
||||||
]
|
]
|
||||||
# cherche le numero adequat (pour placer le module en fin de liste)
|
# cherche le numero adequat (pour placer le module en fin de liste)
|
||||||
Mods = do_module_list(args={"matiere_id": matiere_id})
|
Mods = module_list(args={"matiere_id": matiere_id})
|
||||||
if Mods:
|
if Mods:
|
||||||
default_num = max([m["numero"] for m in Mods]) + 10
|
default_num = max([m["numero"] for m in Mods]) + 10
|
||||||
else:
|
else:
|
||||||
@ -252,7 +252,7 @@ def do_module_delete(oid):
|
|||||||
"delete module"
|
"delete module"
|
||||||
from app.scodoc import sco_formations
|
from app.scodoc import sco_formations
|
||||||
|
|
||||||
mod = do_module_list({"module_id": oid})[0]
|
mod = module_list({"module_id": oid})[0]
|
||||||
if module_is_locked(mod["module_id"]):
|
if module_is_locked(mod["module_id"]):
|
||||||
raise ScoLockedFormError()
|
raise ScoLockedFormError()
|
||||||
|
|
||||||
@ -285,7 +285,7 @@ def module_delete(module_id=None):
|
|||||||
"""Delete a module"""
|
"""Delete a module"""
|
||||||
if not module_id:
|
if not module_id:
|
||||||
raise ScoValueError("invalid module !")
|
raise ScoValueError("invalid module !")
|
||||||
Mods = do_module_list(args={"module_id": module_id})
|
Mods = module_list(args={"module_id": module_id})
|
||||||
if not Mods:
|
if not Mods:
|
||||||
raise ScoValueError("Module inexistant !")
|
raise ScoValueError("Module inexistant !")
|
||||||
Mod = Mods[0]
|
Mod = Mods[0]
|
||||||
@ -317,7 +317,7 @@ def do_module_edit(val):
|
|||||||
from app.scodoc import sco_edit_formation
|
from app.scodoc import sco_edit_formation
|
||||||
|
|
||||||
# check
|
# check
|
||||||
mod = do_module_list({"module_id": val["module_id"]})[0]
|
mod = module_list({"module_id": val["module_id"]})[0]
|
||||||
if module_is_locked(mod["module_id"]):
|
if module_is_locked(mod["module_id"]):
|
||||||
# formation verrouillée: empeche de modifier certains champs:
|
# formation verrouillée: empeche de modifier certains champs:
|
||||||
protected_fields = ("coefficient", "ue_id", "matiere_id", "semestre_id")
|
protected_fields = ("coefficient", "ue_id", "matiere_id", "semestre_id")
|
||||||
@ -332,7 +332,7 @@ def do_module_edit(val):
|
|||||||
|
|
||||||
def check_module_code_unicity(code, field, formation_id, module_id=None):
|
def check_module_code_unicity(code, field, formation_id, module_id=None):
|
||||||
"true si code module unique dans la formation"
|
"true si code module unique dans la formation"
|
||||||
Mods = do_module_list(args={"code": code, "formation_id": formation_id})
|
Mods = module_list(args={"code": code, "formation_id": formation_id})
|
||||||
if module_id: # edition: supprime le module en cours
|
if module_id: # edition: supprime le module en cours
|
||||||
Mods = [m for m in Mods if m["module_id"] != module_id]
|
Mods = [m for m in Mods if m["module_id"] != module_id]
|
||||||
|
|
||||||
@ -346,7 +346,7 @@ def module_edit(module_id=None):
|
|||||||
|
|
||||||
if not module_id:
|
if not module_id:
|
||||||
raise ScoValueError("invalid module !")
|
raise ScoValueError("invalid module !")
|
||||||
Mod = do_module_list(args={"module_id": module_id})
|
Mod = module_list(args={"module_id": module_id})
|
||||||
if not Mod:
|
if not Mod:
|
||||||
raise ScoValueError("invalid module !")
|
raise ScoValueError("invalid module !")
|
||||||
Mod = Mod[0]
|
Mod = Mod[0]
|
||||||
@ -521,7 +521,7 @@ def edit_module_set_code_apogee(id=None, value=None):
|
|||||||
value = value.strip("-_ \t")
|
value = value.strip("-_ \t")
|
||||||
log("edit_module_set_code_apogee: module_id=%s code_apogee=%s" % (module_id, value))
|
log("edit_module_set_code_apogee: module_id=%s code_apogee=%s" % (module_id, value))
|
||||||
|
|
||||||
modules = do_module_list(args={"module_id": module_id})
|
modules = module_list(args={"module_id": module_id})
|
||||||
if not modules:
|
if not modules:
|
||||||
return "module invalide" # should not occur
|
return "module invalide" # should not occur
|
||||||
|
|
||||||
@ -531,7 +531,7 @@ def edit_module_set_code_apogee(id=None, value=None):
|
|||||||
return value
|
return value
|
||||||
|
|
||||||
|
|
||||||
def module_list(formation_id):
|
def module_table(formation_id):
|
||||||
"""Liste des modules de la formation
|
"""Liste des modules de la formation
|
||||||
(XXX inutile ou a revoir)
|
(XXX inutile ou a revoir)
|
||||||
"""
|
"""
|
||||||
@ -548,7 +548,7 @@ def module_list(formation_id):
|
|||||||
]
|
]
|
||||||
editable = current_user.has_permission(Permission.ScoChangeFormation)
|
editable = current_user.has_permission(Permission.ScoChangeFormation)
|
||||||
|
|
||||||
for Mod in do_module_list(args={"formation_id": formation_id}):
|
for Mod in module_list(args={"formation_id": formation_id}):
|
||||||
H.append('<li class="notes_module_list">%s' % Mod)
|
H.append('<li class="notes_module_list">%s' % Mod)
|
||||||
if editable:
|
if editable:
|
||||||
H.append('<a href="module_edit?module_id=%(module_id)s">modifier</a>' % Mod)
|
H.append('<a href="module_edit?module_id=%(module_id)s">modifier</a>' % Mod)
|
||||||
@ -595,7 +595,7 @@ def formation_add_malus_modules(formation_id, titre=None, redirect=True):
|
|||||||
nb_mod_malus = len(
|
nb_mod_malus = len(
|
||||||
[
|
[
|
||||||
mod
|
mod
|
||||||
for mod in do_module_list(args={"ue_id": ue["ue_id"]})
|
for mod in module_list(args={"ue_id": ue["ue_id"]})
|
||||||
if mod["module_type"] == scu.MODULE_MALUS
|
if mod["module_type"] == scu.MODULE_MALUS
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
@ -382,7 +382,7 @@ def _add_ue_semestre_id(ue_list):
|
|||||||
qui les place à la fin de la liste.
|
qui les place à la fin de la liste.
|
||||||
"""
|
"""
|
||||||
for ue in ue_list:
|
for ue in ue_list:
|
||||||
Modlist = sco_edit_module.do_module_list(args={"ue_id": ue["ue_id"]})
|
Modlist = sco_edit_module.module_list(args={"ue_id": ue["ue_id"]})
|
||||||
if Modlist:
|
if Modlist:
|
||||||
ue["semestre_id"] = Modlist[0]["semestre_id"]
|
ue["semestre_id"] = Modlist[0]["semestre_id"]
|
||||||
else:
|
else:
|
||||||
@ -648,7 +648,7 @@ du programme" (menu "Semestre") si vous avez un semestre en cours);
|
|||||||
H.append("</a>")
|
H.append("</a>")
|
||||||
|
|
||||||
H.append('<ul class="notes_module_list">')
|
H.append('<ul class="notes_module_list">')
|
||||||
Modlist = sco_edit_module.do_module_list(
|
Modlist = sco_edit_module.module_list(
|
||||||
args={"matiere_id": Mat["matiere_id"]}
|
args={"matiere_id": Mat["matiere_id"]}
|
||||||
)
|
)
|
||||||
im = 0
|
im = 0
|
||||||
@ -970,7 +970,7 @@ def formation_table_recap(formation_id, format="html"):
|
|||||||
for UE in ue_list:
|
for UE in ue_list:
|
||||||
Matlist = sco_edit_matiere.do_matiere_list(args={"ue_id": UE["ue_id"]})
|
Matlist = sco_edit_matiere.do_matiere_list(args={"ue_id": UE["ue_id"]})
|
||||||
for Mat in Matlist:
|
for Mat in Matlist:
|
||||||
Modlist = sco_edit_module.do_module_list(
|
Modlist = sco_edit_module.module_list(
|
||||||
args={"matiere_id": Mat["matiere_id"]}
|
args={"matiere_id": Mat["matiere_id"]}
|
||||||
)
|
)
|
||||||
for Mod in Modlist:
|
for Mod in Modlist:
|
||||||
@ -1049,5 +1049,5 @@ def ue_list_semestre_ids(ue):
|
|||||||
Mais cela n'a pas toujours été le cas dans les programmes pédagogiques officiels,
|
Mais cela n'a pas toujours été le cas dans les programmes pédagogiques officiels,
|
||||||
aussi ScoDoc laisse le choix.
|
aussi ScoDoc laisse le choix.
|
||||||
"""
|
"""
|
||||||
Modlist = sco_edit_module.do_module_list(args={"ue_id": ue["ue_id"]})
|
Modlist = sco_edit_module.module_list(args={"ue_id": ue["ue_id"]})
|
||||||
return sorted(list(set([mod["semestre_id"] for mod in Modlist])))
|
return sorted(list(set([mod["semestre_id"] for mod in Modlist])))
|
||||||
|
@ -302,7 +302,7 @@ def do_evaluation_create(
|
|||||||
|
|
||||||
# news
|
# news
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
||||||
mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
mod["moduleimpl_id"] = M["moduleimpl_id"]
|
mod["moduleimpl_id"] = M["moduleimpl_id"]
|
||||||
mod["url"] = "Notes/moduleimpl_status?moduleimpl_id=%(moduleimpl_id)s" % mod
|
mod["url"] = "Notes/moduleimpl_status?moduleimpl_id=%(moduleimpl_id)s" % mod
|
||||||
sco_news.add(
|
sco_news.add(
|
||||||
@ -360,7 +360,7 @@ def do_evaluation_delete(evaluation_id):
|
|||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
||||||
sco_cache.invalidate_formsemestre(formsemestre_id=M["formsemestre_id"])
|
sco_cache.invalidate_formsemestre(formsemestre_id=M["formsemestre_id"])
|
||||||
# news
|
# news
|
||||||
mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
mod["moduleimpl_id"] = M["moduleimpl_id"]
|
mod["moduleimpl_id"] = M["moduleimpl_id"]
|
||||||
mod["url"] = (
|
mod["url"] = (
|
||||||
scu.NotesURL() + "/moduleimpl_status?moduleimpl_id=%(moduleimpl_id)s" % mod
|
scu.NotesURL() + "/moduleimpl_status?moduleimpl_id=%(moduleimpl_id)s" % mod
|
||||||
@ -410,7 +410,7 @@ def do_evaluation_etat(evaluation_id, partition_id=None, select_first_partition=
|
|||||||
# ---- Liste des groupes complets et incomplets
|
# ---- Liste des groupes complets et incomplets
|
||||||
E = do_evaluation_list(args={"evaluation_id": evaluation_id})[0]
|
E = do_evaluation_list(args={"evaluation_id": evaluation_id})[0]
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
||||||
Mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
Mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
is_malus = Mod["module_type"] == scu.MODULE_MALUS # True si module de malus
|
is_malus = Mod["module_type"] == scu.MODULE_MALUS # True si module de malus
|
||||||
formsemestre_id = M["formsemestre_id"]
|
formsemestre_id = M["formsemestre_id"]
|
||||||
# Si partition_id is None, prend 'all' ou bien la premiere:
|
# Si partition_id is None, prend 'all' ou bien la premiere:
|
||||||
@ -852,7 +852,7 @@ def formsemestre_evaluations_delai_correction(formsemestre_id, format="html"):
|
|||||||
T = []
|
T = []
|
||||||
for e in evals:
|
for e in evals:
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=e["moduleimpl_id"])[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=e["moduleimpl_id"])[0]
|
||||||
Mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
Mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
if (e["evaluation_type"] != scu.EVALUATION_NORMALE) or (
|
if (e["evaluation_type"] != scu.EVALUATION_NORMALE) or (
|
||||||
Mod["module_type"] == scu.MODULE_MALUS
|
Mod["module_type"] == scu.MODULE_MALUS
|
||||||
):
|
):
|
||||||
@ -1033,7 +1033,7 @@ def evaluation_describe(evaluation_id="", edit_in_place=True):
|
|||||||
E = do_evaluation_list({"evaluation_id": evaluation_id})[0]
|
E = do_evaluation_list({"evaluation_id": evaluation_id})[0]
|
||||||
moduleimpl_id = E["moduleimpl_id"]
|
moduleimpl_id = E["moduleimpl_id"]
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
||||||
Mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
Mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
formsemestre_id = M["formsemestre_id"]
|
formsemestre_id = M["formsemestre_id"]
|
||||||
u = sco_users.user_info(M["responsable_id"])
|
u = sco_users.user_info(M["responsable_id"])
|
||||||
resp = u["prenomnom"]
|
resp = u["prenomnom"]
|
||||||
@ -1171,7 +1171,7 @@ def evaluation_create_form(
|
|||||||
else:
|
else:
|
||||||
min_note_max_str = "0"
|
min_note_max_str = "0"
|
||||||
#
|
#
|
||||||
Mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
Mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
#
|
#
|
||||||
help = """<div class="help"><p class="help">
|
help = """<div class="help"><p class="help">
|
||||||
Le coefficient d'une évaluation n'est utilisé que pour pondérer les évaluations au sein d'un module.
|
Le coefficient d'une évaluation n'est utilisé que pour pondérer les évaluations au sein d'un module.
|
||||||
|
@ -114,7 +114,7 @@ def formation_export(formation_id, export_ids=False, export_tags=True, format=No
|
|||||||
if not export_ids:
|
if not export_ids:
|
||||||
del mat["matiere_id"]
|
del mat["matiere_id"]
|
||||||
del mat["ue_id"]
|
del mat["ue_id"]
|
||||||
mods = sco_edit_module.do_module_list({"matiere_id": matiere_id})
|
mods = sco_edit_module.module_list({"matiere_id": matiere_id})
|
||||||
mat["module"] = mods
|
mat["module"] = mods
|
||||||
for mod in mods:
|
for mod in mods:
|
||||||
if export_tags:
|
if export_tags:
|
||||||
@ -130,7 +130,9 @@ def formation_export(formation_id, export_ids=False, export_tags=True, format=No
|
|||||||
if mod["ects"] is None:
|
if mod["ects"] is None:
|
||||||
del mod["ects"]
|
del mod["ects"]
|
||||||
|
|
||||||
return scu.sendResult(F, name="formation", format=format, force_outer_xml_tag=False, attached=True)
|
return scu.sendResult(
|
||||||
|
F, name="formation", format=format, force_outer_xml_tag=False, attached=True
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def formation_import_xml(doc: str, import_tags=True):
|
def formation_import_xml(doc: str, import_tags=True):
|
||||||
|
@ -209,7 +209,7 @@ def do_formsemestre_createwithmodules(edit=False):
|
|||||||
for ue in uelist:
|
for ue in uelist:
|
||||||
matlist = sco_edit_matiere.do_matiere_list({"ue_id": ue["ue_id"]})
|
matlist = sco_edit_matiere.do_matiere_list({"ue_id": ue["ue_id"]})
|
||||||
for mat in matlist:
|
for mat in matlist:
|
||||||
modsmat = sco_edit_module.do_module_list({"matiere_id": mat["matiere_id"]})
|
modsmat = sco_edit_module.module_list({"matiere_id": mat["matiere_id"]})
|
||||||
# XXX debug checks
|
# XXX debug checks
|
||||||
for m in modsmat:
|
for m in modsmat:
|
||||||
if m["ue_id"] != ue["ue_id"]:
|
if m["ue_id"] != ue["ue_id"]:
|
||||||
@ -767,7 +767,7 @@ def do_formsemestre_createwithmodules(edit=False):
|
|||||||
"responsable_id": tf[2]["MI" + str(module_id)],
|
"responsable_id": tf[2]["MI" + str(module_id)],
|
||||||
}
|
}
|
||||||
moduleimpl_id = sco_moduleimpl.do_moduleimpl_create(modargs)
|
moduleimpl_id = sco_moduleimpl.do_moduleimpl_create(modargs)
|
||||||
mod = sco_edit_module.do_module_list({"module_id": module_id})[0]
|
mod = sco_edit_module.module_list({"module_id": module_id})[0]
|
||||||
msg += ["création de %s (%s)" % (mod["code"], mod["titre"])]
|
msg += ["création de %s (%s)" % (mod["code"], mod["titre"])]
|
||||||
# INSCRIPTIONS DES ETUDIANTS
|
# INSCRIPTIONS DES ETUDIANTS
|
||||||
log(
|
log(
|
||||||
@ -813,7 +813,7 @@ def do_formsemestre_createwithmodules(edit=False):
|
|||||||
sco_moduleimpl.do_moduleimpl_edit(
|
sco_moduleimpl.do_moduleimpl_edit(
|
||||||
modargs, formsemestre_id=formsemestre_id
|
modargs, formsemestre_id=formsemestre_id
|
||||||
)
|
)
|
||||||
mod = sco_edit_module.do_module_list({"module_id": module_id})[0]
|
mod = sco_edit_module.module_list({"module_id": module_id})[0]
|
||||||
|
|
||||||
if msg:
|
if msg:
|
||||||
msg_html = (
|
msg_html = (
|
||||||
@ -849,7 +849,7 @@ def formsemestre_delete_moduleimpls(formsemestre_id, module_ids_to_del):
|
|||||||
moduleimpl_id = sco_moduleimpl.moduleimpl_list(
|
moduleimpl_id = sco_moduleimpl.moduleimpl_list(
|
||||||
formsemestre_id=formsemestre_id, module_id=module_id
|
formsemestre_id=formsemestre_id, module_id=module_id
|
||||||
)[0]["moduleimpl_id"]
|
)[0]["moduleimpl_id"]
|
||||||
mod = sco_edit_module.do_module_list({"module_id": module_id})[0]
|
mod = sco_edit_module.module_list({"module_id": module_id})[0]
|
||||||
# Evaluations dans ce module ?
|
# Evaluations dans ce module ?
|
||||||
evals = sco_evaluations.do_evaluation_list({"moduleimpl_id": moduleimpl_id})
|
evals = sco_evaluations.do_evaluation_list({"moduleimpl_id": moduleimpl_id})
|
||||||
if evals:
|
if evals:
|
||||||
|
@ -229,7 +229,7 @@ def _make_table_notes(
|
|||||||
E = evals[0]
|
E = evals[0]
|
||||||
moduleimpl_id = E["moduleimpl_id"]
|
moduleimpl_id = E["moduleimpl_id"]
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
||||||
Mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
Mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
sem = sco_formsemestre.get_formsemestre(M["formsemestre_id"])
|
sem = sco_formsemestre.get_formsemestre(M["formsemestre_id"])
|
||||||
# (debug) check that all evals are in same module:
|
# (debug) check that all evals are in same module:
|
||||||
for e in evals:
|
for e in evals:
|
||||||
|
@ -148,7 +148,7 @@ def moduleimpl_withmodule_list(
|
|||||||
for mi in modimpls:
|
for mi in modimpls:
|
||||||
module_id = mi["module_id"]
|
module_id = mi["module_id"]
|
||||||
if not mi["module_id"] in modules:
|
if not mi["module_id"] in modules:
|
||||||
modules[module_id] = sco_edit_module.do_module_list(
|
modules[module_id] = sco_edit_module.module_list(
|
||||||
args={"module_id": module_id}
|
args={"module_id": module_id}
|
||||||
)[0]
|
)[0]
|
||||||
mi["module"] = modules[module_id]
|
mi["module"] = modules[module_id]
|
||||||
|
@ -65,7 +65,7 @@ def moduleimpl_inscriptions_edit(moduleimpl_id, etuds=[], submitted=False):
|
|||||||
"""
|
"""
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
||||||
formsemestre_id = M["formsemestre_id"]
|
formsemestre_id = M["formsemestre_id"]
|
||||||
mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
sem = sco_formsemestre.get_formsemestre(formsemestre_id)
|
sem = sco_formsemestre.get_formsemestre(formsemestre_id)
|
||||||
# -- check lock
|
# -- check lock
|
||||||
if not sem["etat"]:
|
if not sem["etat"]:
|
||||||
|
@ -158,7 +158,7 @@ def moduleimpl_status(moduleimpl_id=None, partition_id=None):
|
|||||||
"""Tableau de bord module (liste des evaluations etc)"""
|
"""Tableau de bord module (liste des evaluations etc)"""
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=moduleimpl_id)[0]
|
||||||
formsemestre_id = M["formsemestre_id"]
|
formsemestre_id = M["formsemestre_id"]
|
||||||
Mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
Mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
sem = sco_formsemestre.get_formsemestre(formsemestre_id)
|
sem = sco_formsemestre.get_formsemestre(formsemestre_id)
|
||||||
F = sco_formations.formation_list(args={"formation_id": sem["formation_id"]})[0]
|
F = sco_formations.formation_list(args={"formation_id": sem["formation_id"]})[0]
|
||||||
ModInscrits = sco_moduleimpl.do_moduleimpl_inscription_list(
|
ModInscrits = sco_moduleimpl.do_moduleimpl_inscription_list(
|
||||||
|
@ -247,7 +247,7 @@ class PlacementRunner:
|
|||||||
self.moduleimpl_data = sco_moduleimpl.moduleimpl_list(
|
self.moduleimpl_data = sco_moduleimpl.moduleimpl_list(
|
||||||
moduleimpl_id=self.moduleimpl_id
|
moduleimpl_id=self.moduleimpl_id
|
||||||
)[0]
|
)[0]
|
||||||
self.module_data = sco_edit_module.do_module_list(
|
self.module_data = sco_edit_module.module_list(
|
||||||
args={"module_id": self.moduleimpl_data["module_id"]}
|
args={"module_id": self.moduleimpl_data["module_id"]}
|
||||||
)[0]
|
)[0]
|
||||||
self.sem = sco_formsemestre.get_formsemestre(
|
self.sem = sco_formsemestre.get_formsemestre(
|
||||||
|
@ -252,7 +252,7 @@ def do_evaluation_upload_xls():
|
|||||||
# news
|
# news
|
||||||
E = sco_evaluations.do_evaluation_list({"evaluation_id": evaluation_id})[0]
|
E = sco_evaluations.do_evaluation_list({"evaluation_id": evaluation_id})[0]
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
||||||
mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
mod["moduleimpl_id"] = M["moduleimpl_id"]
|
mod["moduleimpl_id"] = M["moduleimpl_id"]
|
||||||
mod["url"] = url_for(
|
mod["url"] = url_for(
|
||||||
"notes.moduleimpl_status",
|
"notes.moduleimpl_status",
|
||||||
@ -337,7 +337,7 @@ def do_evaluation_set_missing(evaluation_id, value, dialog_confirmed=False):
|
|||||||
nb_changed, _, _ = _notes_add(current_user, evaluation_id, L, comment)
|
nb_changed, _, _ = _notes_add(current_user, evaluation_id, L, comment)
|
||||||
# news
|
# news
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
||||||
mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
mod["moduleimpl_id"] = M["moduleimpl_id"]
|
mod["moduleimpl_id"] = M["moduleimpl_id"]
|
||||||
mod["url"] = url_for(
|
mod["url"] = url_for(
|
||||||
"notes.moduleimpl_status",
|
"notes.moduleimpl_status",
|
||||||
@ -426,7 +426,7 @@ def evaluation_suppress_alln(evaluation_id, dialog_confirmed=False):
|
|||||||
]
|
]
|
||||||
# news
|
# news
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
||||||
mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
mod["moduleimpl_id"] = M["moduleimpl_id"]
|
mod["moduleimpl_id"] = M["moduleimpl_id"]
|
||||||
mod["url"] = "Notes/moduleimpl_status?moduleimpl_id=%(moduleimpl_id)s" % mod
|
mod["url"] = "Notes/moduleimpl_status?moduleimpl_id=%(moduleimpl_id)s" % mod
|
||||||
sco_news.add(
|
sco_news.add(
|
||||||
@ -767,7 +767,7 @@ def feuille_saisie_notes(evaluation_id, group_ids=[]):
|
|||||||
E = evals[0]
|
E = evals[0]
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
||||||
formsemestre_id = M["formsemestre_id"]
|
formsemestre_id = M["formsemestre_id"]
|
||||||
Mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
Mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
sem = sco_formsemestre.get_formsemestre(M["formsemestre_id"])
|
sem = sco_formsemestre.get_formsemestre(M["formsemestre_id"])
|
||||||
mod_responsable = sco_users.user_info(M["responsable_id"])
|
mod_responsable = sco_users.user_info(M["responsable_id"])
|
||||||
if E["jour"]:
|
if E["jour"]:
|
||||||
@ -845,7 +845,7 @@ def has_existing_decision(M, E, etudid):
|
|||||||
return True
|
return True
|
||||||
dec_ues = nt.get_etud_decision_ues(etudid)
|
dec_ues = nt.get_etud_decision_ues(etudid)
|
||||||
if dec_ues:
|
if dec_ues:
|
||||||
mod = sco_edit_module.do_module_list({"module_id": M["module_id"]})[0]
|
mod = sco_edit_module.module_list({"module_id": M["module_id"]})[0]
|
||||||
ue_id = mod["ue_id"]
|
ue_id = mod["ue_id"]
|
||||||
if ue_id in dec_ues:
|
if ue_id in dec_ues:
|
||||||
return True # decision pour l'UE a laquelle appartient cette evaluation
|
return True # decision pour l'UE a laquelle appartient cette evaluation
|
||||||
@ -1225,7 +1225,7 @@ def save_note(etudid=None, evaluation_id=None, value=None, comment=""):
|
|||||||
)
|
)
|
||||||
E = sco_evaluations.do_evaluation_list({"evaluation_id": evaluation_id})[0]
|
E = sco_evaluations.do_evaluation_list({"evaluation_id": evaluation_id})[0]
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
||||||
Mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
Mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
Mod["url"] = url_for(
|
Mod["url"] = url_for(
|
||||||
"notes.moduleimpl_status",
|
"notes.moduleimpl_status",
|
||||||
scodoc_dept=g.scodoc_dept,
|
scodoc_dept=g.scodoc_dept,
|
||||||
|
@ -242,7 +242,7 @@ def module_tag_set(module_id="", taglist=None):
|
|||||||
taglist = [t.strip() for t in taglist]
|
taglist = [t.strip() for t in taglist]
|
||||||
# log("module_tag_set: module_id=%s taglist=%s" % (module_id, taglist))
|
# log("module_tag_set: module_id=%s taglist=%s" % (module_id, taglist))
|
||||||
# Sanity check:
|
# Sanity check:
|
||||||
Mod = sco_edit_module.do_module_list(args={"module_id": module_id})
|
Mod = sco_edit_module.module_list(args={"module_id": module_id})
|
||||||
if not Mod:
|
if not Mod:
|
||||||
raise ScoValueError("invalid module !")
|
raise ScoValueError("invalid module !")
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ def start_scodoc_request():
|
|||||||
"""Affecte toutes les requêtes, de tous les blueprints"""
|
"""Affecte toutes les requêtes, de tous les blueprints"""
|
||||||
# current_app.logger.info(f"start_scodoc_request")
|
# current_app.logger.info(f"start_scodoc_request")
|
||||||
ndb.open_db_connection()
|
ndb.open_db_connection()
|
||||||
if current_user.is_authenticated:
|
if current_user and current_user.is_authenticated:
|
||||||
current_user.last_seen = datetime.datetime.utcnow()
|
current_user.last_seen = datetime.datetime.utcnow()
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
# caches locaux (durée de vie=la requête en cours)
|
# caches locaux (durée de vie=la requête en cours)
|
||||||
|
@ -396,7 +396,7 @@ sco_publish(
|
|||||||
sco_edit_module.edit_module_set_code_apogee,
|
sco_edit_module.edit_module_set_code_apogee,
|
||||||
Permission.ScoChangeFormation,
|
Permission.ScoChangeFormation,
|
||||||
)
|
)
|
||||||
sco_publish("/module_list", sco_edit_module.module_list, Permission.ScoView)
|
sco_publish("/module_list", sco_edit_module.module_table, Permission.ScoView)
|
||||||
sco_publish("/module_tag_search", sco_tag_module.module_tag_search, Permission.ScoView)
|
sco_publish("/module_tag_search", sco_tag_module.module_tag_search, Permission.ScoView)
|
||||||
sco_publish(
|
sco_publish(
|
||||||
"/module_tag_set",
|
"/module_tag_set",
|
||||||
@ -1528,7 +1528,7 @@ def evaluation_delete(evaluation_id):
|
|||||||
raise ValueError("Evalution inexistante ! (%s)" % evaluation_id)
|
raise ValueError("Evalution inexistante ! (%s)" % evaluation_id)
|
||||||
E = El[0]
|
E = El[0]
|
||||||
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
M = sco_moduleimpl.moduleimpl_list(moduleimpl_id=E["moduleimpl_id"])[0]
|
||||||
Mod = sco_edit_module.do_module_list(args={"module_id": M["module_id"]})[0]
|
Mod = sco_edit_module.module_list(args={"module_id": M["module_id"]})[0]
|
||||||
tit = "Suppression de l'évaluation %(description)s (%(jour)s)" % E
|
tit = "Suppression de l'évaluation %(description)s (%(jour)s)" % E
|
||||||
etat = sco_evaluations.do_evaluation_etat(evaluation_id)
|
etat = sco_evaluations.do_evaluation_etat(evaluation_id)
|
||||||
H = [
|
H = [
|
||||||
@ -2429,7 +2429,7 @@ def check_sem_integrity(formsemestre_id, fix=False):
|
|||||||
bad_sem = []
|
bad_sem = []
|
||||||
formations_set = set() # les formations mentionnées dans les UE et modules
|
formations_set = set() # les formations mentionnées dans les UE et modules
|
||||||
for modimpl in modimpls:
|
for modimpl in modimpls:
|
||||||
mod = sco_edit_module.do_module_list({"module_id": modimpl["module_id"]})[0]
|
mod = sco_edit_module.module_list({"module_id": modimpl["module_id"]})[0]
|
||||||
formations_set.add(mod["formation_id"])
|
formations_set.add(mod["formation_id"])
|
||||||
ue = sco_edit_ue.do_ue_list({"ue_id": mod["ue_id"]})[0]
|
ue = sco_edit_ue.do_ue_list({"ue_id": mod["ue_id"]})[0]
|
||||||
formations_set.add(ue["formation_id"])
|
formations_set.add(ue["formation_id"])
|
||||||
@ -2495,7 +2495,7 @@ def check_form_integrity(formation_id, fix=False):
|
|||||||
for ue in ues:
|
for ue in ues:
|
||||||
mats = sco_edit_matiere.do_matiere_list(args={"ue_id": ue["ue_id"]})
|
mats = sco_edit_matiere.do_matiere_list(args={"ue_id": ue["ue_id"]})
|
||||||
for mat in mats:
|
for mat in mats:
|
||||||
mods = sco_edit_module.do_module_list({"matiere_id": mat["matiere_id"]})
|
mods = sco_edit_module.module_list({"matiere_id": mat["matiere_id"]})
|
||||||
for mod in mods:
|
for mod in mods:
|
||||||
if mod["ue_id"] != ue["ue_id"]:
|
if mod["ue_id"] != ue["ue_id"]:
|
||||||
if fix:
|
if fix:
|
||||||
|
@ -52,7 +52,7 @@ def run_scenario1():
|
|||||||
]
|
]
|
||||||
|
|
||||||
# --- Implémentation des modules
|
# --- Implémentation des modules
|
||||||
modules = sco_edit_module.do_module_list({"formation_id": formation_id})
|
modules = sco_edit_module.module_list({"formation_id": formation_id})
|
||||||
mods_imp = []
|
mods_imp = []
|
||||||
for mod in modules:
|
for mod in modules:
|
||||||
mi = G.create_moduleimpl(
|
mi = G.create_moduleimpl(
|
||||||
|
@ -203,7 +203,7 @@ class ScoFake(object):
|
|||||||
module_type=None,
|
module_type=None,
|
||||||
):
|
):
|
||||||
oid = sco_edit_module.do_module_create(locals())
|
oid = sco_edit_module.do_module_create(locals())
|
||||||
oids = sco_edit_module.do_module_list(args={"module_id": oid})
|
oids = sco_edit_module.module_list(args={"module_id": oid})
|
||||||
if not oids:
|
if not oids:
|
||||||
raise ScoValueError("module not created ! (oid=%s)" % oid)
|
raise ScoValueError("module not created ! (oid=%s)" % oid)
|
||||||
return oids[0]
|
return oids[0]
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
# - moduleimpl_list
|
# - moduleimpl_list
|
||||||
# - do_module_impl_with_module_list
|
# - do_module_impl_with_module_list
|
||||||
# - do_formsemestre_delete
|
# - do_formsemestre_delete
|
||||||
# - do_module_list
|
# - module_list
|
||||||
# - do_module_delete
|
# - do_module_delete
|
||||||
# - do_matiere_list
|
# - do_matiere_list
|
||||||
# - do_matiere_delete
|
# - do_matiere_delete
|
||||||
@ -290,12 +290,12 @@ def test_formations(test_client):
|
|||||||
|
|
||||||
# RIEN NE SE PASSE AVEC CES FONCTIONS
|
# RIEN NE SE PASSE AVEC CES FONCTIONS
|
||||||
|
|
||||||
li_module = sco_edit_module.do_module_list()
|
li_module = sco_edit_module.module_list()
|
||||||
assert len(li_module) == 4
|
assert len(li_module) == 4
|
||||||
sco_edit_module.do_module_delete(oid=modt["module_id"]) # on supprime le semestre
|
sco_edit_module.do_module_delete(oid=modt["module_id"]) # on supprime le semestre
|
||||||
# sco_formsemestre_edit.formsemestre_delete_moduleimpls( formsemestre_id=sem2["formsemestre_id"], module_ids_to_del=[modt["module_id"]])
|
# sco_formsemestre_edit.formsemestre_delete_moduleimpls( formsemestre_id=sem2["formsemestre_id"], module_ids_to_del=[modt["module_id"]])
|
||||||
# deuxieme methode de supression d'un module
|
# deuxieme methode de supression d'un module
|
||||||
li_module2 = sco_edit_module.do_module_list()
|
li_module2 = sco_edit_module.module_list()
|
||||||
|
|
||||||
assert len(li_module2) == 3 # verification de la suppression du module
|
assert len(li_module2) == 3 # verification de la suppression du module
|
||||||
|
|
||||||
@ -355,7 +355,7 @@ def test_import_formation(test_client):
|
|||||||
)
|
)
|
||||||
]
|
]
|
||||||
# et les modules
|
# et les modules
|
||||||
modules = sco_edit_module.do_module_list({"formation_id": formation_id})
|
modules = sco_edit_module.module_list({"formation_id": formation_id})
|
||||||
for mod in modules:
|
for mod in modules:
|
||||||
mi = G.create_moduleimpl(
|
mi = G.create_moduleimpl(
|
||||||
module_id=mod["module_id"],
|
module_id=mod["module_id"],
|
||||||
|
Loading…
Reference in New Issue
Block a user