diff --git a/app/scodoc/sco_edit_module.py b/app/scodoc/sco_edit_module.py index 8359d12b..4053bde0 100644 --- a/app/scodoc/sco_edit_module.py +++ b/app/scodoc/sco_edit_module.py @@ -712,15 +712,17 @@ def module_edit(module_id=None): ) ) else: - # l'UE peut changer + # l'UE de rattachement peut changer tf[2]["ue_id"], tf[2]["matiere_id"] = tf[2]["ue_matiere_id"].split("!") old_ue_id = a_module.ue.id new_ue_id = int(tf[2]["ue_id"]) if (old_ue_id != new_ue_id) and in_use: - # pas changer de semestre un module utilisé ! - raise ScoValueError( - "Module utilisé: il ne peut pas être changé de semestre !" - ) + new_ue = UniteEns.query.get_or_404(new_ue_id) + if new_ue.semestre_idx != a_module.ue.semestre_idx: + # pas changer de semestre un module utilisé ! + raise ScoValueError( + "Module utilisé: il ne peut pas être changé de semestre !" + ) # En APC, force le semestre égal à celui de l'UE if is_apc: selected_ue = UniteEns.query.get(tf[2]["ue_id"])