From 814ce1c78bacbd8b52a8eb0509e6155492657f1c Mon Sep 17 00:00:00 2001 From: Cris Date: Wed, 30 Mar 2022 10:42:10 +0200 Subject: [PATCH] =?UTF-8?q?Added:=20L=C3=B6schen=20von=20Zeitverf=C3=BCgba?= =?UTF-8?q?rkeiten=20mitloggen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Das Löschen von Zeitverfügbarkeiten wird nun in der Log-Tabelle festgehalten. --- .../lvplanung/AdminZeitverfuegbarkeit.php | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/application/controllers/lehre/lvplanung/AdminZeitverfuegbarkeit.php b/application/controllers/lehre/lvplanung/AdminZeitverfuegbarkeit.php index b43066c72..007b6974d 100644 --- a/application/controllers/lehre/lvplanung/AdminZeitverfuegbarkeit.php +++ b/application/controllers/lehre/lvplanung/AdminZeitverfuegbarkeit.php @@ -150,6 +150,10 @@ class AdminZeitverfuegbarkeit extends Auth_Controller $this->terminateWithJsonError('Wählen Sie einen Lehrenden aus der Zeitverfügbarkeit-Tabelle aus.'); } + // Load Zeitsperre + $result = $this->ZeitsperreModel->load($zeitsperre_id); + $delZsp = getData($result)[0]; + // Delete $result = $this->ZeitsperreModel->delete($zeitsperre_id); @@ -158,6 +162,12 @@ class AdminZeitverfuegbarkeit extends Auth_Controller $this->terminateWithJsonError(getError($result)); } + // Store Deletion query + $delQry = $this->db->last_query(); + + // Log deletion + $this->_logDeletion($delZsp, $delQry); + $this->outputJsonSuccess(array('msg' => $this->p->t('ui', 'geloescht'))); } @@ -271,4 +281,30 @@ class AdminZeitverfuegbarkeit extends Auth_Controller return success(); } + /** + * Log information of deleted Zeitsperre into log table. + * + * @param $delZsp object of deleted Zeitsperre + * @param $delQry string of performed delete query + * @return mixed + * @throws Exception + */ + private function _logDeletion($delZsp, $delQry) + { + $beschreibung = 'Zeitverfügbarkeitlöschung ' + . $delZsp->mitarbeiter_uid. ' ' + . (new DateTime($delZsp->vondatum))->format('d.m.Y') + . (is_null($delZsp->vonstunde) ? '(*)' : '('. $delZsp->vonstunde. ')') + . '-' + . (new DateTime($delZsp->bisdatum))->format('d.m.Y') + . (is_null($delZsp->bisstunde) ? '(*)' : '('. $delZsp->bisstunde. ')') + . ''; + + $this->load->model('system/Log_model', 'LogModel'); + return $this->LogModel->insert(array( + 'mitarbeiter_uid' => $this->_uid, + 'beschreibung' => substr($beschreibung, 0, 64), + 'sql' => $delQry + )); + } }