From 2cee36d7b57257f875afdafab587c9afb165b494 Mon Sep 17 00:00:00 2001 From: Johann Hoffmann Date: Wed, 17 Dec 2025 14:29:05 +0100 Subject: [PATCH] try/catch around moodle event & proper error message --- .../controllers/api/frontend/v1/Noten.php | 30 +++++++++---------- .../Cis/Benotungstool/Benotungstool.js | 1 + 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/application/controllers/api/frontend/v1/Noten.php b/application/controllers/api/frontend/v1/Noten.php index 92952bb1c..d4321c5a5 100644 --- a/application/controllers/api/frontend/v1/Noten.php +++ b/application/controllers/api/frontend/v1/Noten.php @@ -130,21 +130,21 @@ class Noten extends FHCAPI_Controller } // send $grades reference to moodle addon - // TODO: DONT LET FAULTY MOODLE TOKEN BREAK THE STARTUP - -// Events::trigger( -// 'getExternalGrades', -// function & () use (&$grades) -// { -// return $grades; -// }, -// [ -// 'lvid' => $lv_id, -// 'stsem' => $sem_kurzbz -// ] -// ); - - + try { + Events::trigger( + 'getExternalGrades', + function & () use (&$grades) + { + return $grades; + }, + [ + 'lvid' => $lv_id, + 'stsem' => $sem_kurzbz + ] + ); + } catch (Throwable $t) { + $this->addMeta('getExternalGradesError', $t->getMessage()); + } // calculate notenvorschläge from teilnoten foreach($studentenData as $student) { diff --git a/public/js/components/Cis/Benotungstool/Benotungstool.js b/public/js/components/Cis/Benotungstool/Benotungstool.js index 9d0da55b5..fb4bede2a 100644 --- a/public/js/components/Cis/Benotungstool/Benotungstool.js +++ b/public/js/components/Cis/Benotungstool/Benotungstool.js @@ -1105,6 +1105,7 @@ export const Benotungstool = { this.$api.call(ApiNoten.getStudentenNoten(lv_id, sem_kurzbz)) .then(res => { if(res?.data) this.setupData(res.data) + if(res?.meta?.getExternalGradesError) this.$fhcAlert.alertError(res.meta.getExternalGradesError) }).finally(()=> { this.loading = false })