diff --git a/app/api/assiduites.py b/app/api/assiduites.py index f5195f529a..33a2413623 100644 --- a/app/api/assiduites.py +++ b/app/api/assiduites.py @@ -873,7 +873,13 @@ def _edit_singular(assiduite_unique, data): else: force = scu.is_assiduites_module_forced(dept_id=etud.dept_id) - if force: + external_data = ( + external_data + if external_data is not None and isinstance(external_data, dict) + else assiduite_unique.external_data + ) + + if force and not external_data.get("module", False): errors.append( "param 'moduleimpl_id' : le moduleimpl_id ne peut pas être nul" ) diff --git a/app/static/js/assiduites.js b/app/static/js/assiduites.js index 74c0c4b9ce..21b5c1d0fa 100644 --- a/app/static/js/assiduites.js +++ b/app/static/js/assiduites.js @@ -755,9 +755,7 @@ function isConflictSameAsPeriod(conflict, period = undefined) { * @returns {Date} la date sélectionnée */ function getDate() { - const date = new Date( - document.querySelector("#tl_date").getAttribute("value") - ); + const date = new Date(document.querySelector("#tl_date").value); date.setHours(0, 0, 0, 0); return date; } @@ -1804,7 +1802,9 @@ function getModuleImpl(assiduite) { assiduite.external_data != null && assiduite.external_data.hasOwnProperty("module") ) { - return assiduite.external_data.module; + return assiduite.external_data.module == "Autre" + ? "Tout module" + : assiduite.external_data.module; } else { return "Pas de module"; }