From f865d09033c0c9ccabb96dc14780e8df13328319 Mon Sep 17 00:00:00 2001 From: KarpAlex Date: Tue, 13 Jun 2023 16:14:38 +0200 Subject: [PATCH] manage Bismeldestichtage: added possibility to delete a report target date --- .../controllers/codex/Bismeldestichtag.php | 40 ++++++++++++++++++- application/views/codex/bismeldestichtag.php | 29 +++++++++----- public/js/apps/Bismeldestichtag/API.js | 12 ++++++ .../apps/Bismeldestichtag/Bismeldestichtag.js | 31 +++++++++++++- system/phrasesupdate.php | 20 ++++++++++ 5 files changed, 119 insertions(+), 13 deletions(-) diff --git a/application/controllers/codex/Bismeldestichtag.php b/application/controllers/codex/Bismeldestichtag.php index 98b76f5ae..ca175e1fc 100644 --- a/application/controllers/codex/Bismeldestichtag.php +++ b/application/controllers/codex/Bismeldestichtag.php @@ -15,8 +15,9 @@ class Bismeldestichtag extends Auth_Controller parent::__construct( array( 'index' => 'admin:r', + 'getStudiensemester' => 'admin:r', 'addBismeldestichtag' => 'admin:rw', - 'getStudiensemester' => 'admin:r' + 'deleteBismeldestichtag' => 'admin:rw' ) ); @@ -105,4 +106,41 @@ class Bismeldestichtag extends Auth_Controller )); } } + + public function deleteBismeldestichtag() + { + // get request data + $request = $this->getPostJSON(); + + // check request data + if (!property_exists($request, 'meldestichtag') || isEmptyString($request->meldestichtag)) + $this->terminateWithJsonError('Error occured: Meldestichtag missing'); + if (!property_exists($request, 'studiensemester_kurzbz') || isEmptyString($request->studiensemester_kurzbz)) + $this->terminateWithJsonError('Error occured: Studiensemester missing'); + + $meldestichtag = $request->meldestichtag; + $studiensemester_kurzbz = $request->studiensemester_kurzbz; + + // check if Bismeldestichtag already exists + $this->BismeldestichtagModel->addSelect('meldestichtag_id'); + $bismeldestichtagRes = $this->BismeldestichtagModel->loadWhere( + array('meldestichtag' => $meldestichtag, 'studiensemester_kurzbz' => $studiensemester_kurzbz) + ); + + if (hasData($bismeldestichtagRes)) + { + $meldestichtag_id = getData($bismeldestichtagRes)[0]->meldestichtag_id; + + // delete if Stichtag does exist + $this->outputJson($this->BismeldestichtagModel->delete( + array('meldestichtag_id' => $meldestichtag_id) + )); + + } + else + { + // return error if not exists + $this->outputJsonError('Bismeldestichtag does not exist'); + } + } } diff --git a/application/views/codex/bismeldestichtag.php b/application/views/codex/bismeldestichtag.php index 1953cf095..0166666af 100644 --- a/application/views/codex/bismeldestichtag.php +++ b/application/views/codex/bismeldestichtag.php @@ -35,16 +35,25 @@