From 3e067407580bbd5ecc8c4bb09ac5e0dbcf1befc5 Mon Sep 17 00:00:00 2001 From: Harald Bamberger Date: Mon, 12 Oct 2026 14:25:31 +0200 Subject: [PATCH] add permissions cis/eigene_zeitsperren and cis/andere_zeitsperren and use them for zeitsperren and zeitsperrenma applications and api endpoints --- application/controllers/Cis/Zeitsperren.php | 2 +- application/controllers/Cis/Zeitsperrenma.php | 2 +- .../api/frontend/v1/MaZeitsperren.php | 14 ++++---- .../api/frontend/v1/Zeitsperren.php | 10 +++--- system/dbupdate_3.4.php | 1 + system/dbupdate_3.4/83538_cis4_employees.php | 35 +++++++++++++++++++ 6 files changed, 50 insertions(+), 14 deletions(-) create mode 100644 system/dbupdate_3.4/83538_cis4_employees.php diff --git a/application/controllers/Cis/Zeitsperren.php b/application/controllers/Cis/Zeitsperren.php index baa09b8c6..caee13c48 100644 --- a/application/controllers/Cis/Zeitsperren.php +++ b/application/controllers/Cis/Zeitsperren.php @@ -7,7 +7,7 @@ class Zeitsperren extends Auth_Controller public function __construct() { parent::__construct([ - 'index' => ['basis/cis:r'], + 'index' => ['cis/eigene_zeitsperren:r'], ]); // Load Libraries diff --git a/application/controllers/Cis/Zeitsperrenma.php b/application/controllers/Cis/Zeitsperrenma.php index fd864286c..851291622 100644 --- a/application/controllers/Cis/Zeitsperrenma.php +++ b/application/controllers/Cis/Zeitsperrenma.php @@ -13,7 +13,7 @@ class Zeitsperrenma extends Auth_Controller public function __construct() { parent::__construct([ - 'index' => ['basis/cis:r'] + 'index' => ['cis/andere_zeitsperren:r'] ]); } diff --git a/application/controllers/api/frontend/v1/MaZeitsperren.php b/application/controllers/api/frontend/v1/MaZeitsperren.php index 1cded3cbe..0045b15e8 100644 --- a/application/controllers/api/frontend/v1/MaZeitsperren.php +++ b/application/controllers/api/frontend/v1/MaZeitsperren.php @@ -7,14 +7,14 @@ class MaZeitsperren extends FHCAPI_Controller public function __construct() { parent::__construct([ - 'getAllActiveZeitsperren' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], - 'getAllZeitsperrenFixeMa' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], - 'getAllZeitsperrenLector' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], - 'getAllZeitsperrenOes' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], - 'getZeitsperrenAss' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], + 'getAllActiveZeitsperren' => ['cis/andere_zeitsperren:r', 'admin:r', 'assistenz:r'], + 'getAllZeitsperrenFixeMa' => ['cis/andere_zeitsperren:r', 'admin:r', 'assistenz:r'], + 'getAllZeitsperrenLector' => ['cis/andere_zeitsperren:r', 'admin:r', 'assistenz:r'], + 'getAllZeitsperrenOes' => ['cis/andere_zeitsperren:r', 'admin:r', 'assistenz:r'], + 'getZeitsperrenAss' => ['cis/andere_zeitsperren:r', 'admin:r', 'assistenz:r'], 'getStgLectors' => self::PERM_LOGGED, - 'loadZeitsperrenLectorStg' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], - 'loadZeitsperrenMa' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], + 'loadZeitsperrenLectorStg' => ['cis/andere_zeitsperren:r', 'admin:r', 'assistenz:r'], + 'loadZeitsperrenMa' => ['cis/andere_zeitsperren:r', 'admin:r', 'assistenz:r'], 'getDetailsMa' => self::PERM_LOGGED ]); diff --git a/application/controllers/api/frontend/v1/Zeitsperren.php b/application/controllers/api/frontend/v1/Zeitsperren.php index aa25e911d..79e2c3c23 100644 --- a/application/controllers/api/frontend/v1/Zeitsperren.php +++ b/application/controllers/api/frontend/v1/Zeitsperren.php @@ -7,14 +7,14 @@ class Zeitsperren extends FHCAPI_Controller public function __construct() { parent::__construct([ - 'getZeitsperrenUser' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], + 'getZeitsperrenUser' => ['cis/eigene_zeitsperren:r', 'admin:r', 'assistenz:r'], 'getTypenZeitsperren' => self::PERM_LOGGED, 'getTypenErreichbarkeit' => self::PERM_LOGGED, 'getStunden' => self::PERM_LOGGED, - 'loadZeitsperre' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], - 'add' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], - 'update' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], - 'delete' => ['basis/mitarbeiter:r', 'admin:r', 'assistenz:r'], + 'loadZeitsperre' => ['cis/eigene_zeitsperren:r', 'admin:r', 'assistenz:r'], + 'add' => ['cis/eigene_zeitsperren:rw', 'admin:rw', 'assistenz:rw'], + 'update' => ['cis/eigene_zeitsperren:rw', 'admin:rw', 'assistenz:rw'], + 'delete' => ['cis/eigene_zeitsperren:rw', 'admin:rw', 'assistenz:rw'], ]); // Load Libraries diff --git a/system/dbupdate_3.4.php b/system/dbupdate_3.4.php index 4a1b70d8c..6839af95e 100644 --- a/system/dbupdate_3.4.php +++ b/system/dbupdate_3.4.php @@ -105,6 +105,7 @@ require_once('dbupdate_3.4/78292_gehaltsanpassungtyp.php'); require_once('dbupdate_3.4/54225_reihungstest_ablauf_fuer_quereinsteiger.php'); require_once('dbupdate_3.4/77757_widgets_berechtigungen.php'); require_once('dbupdate_3.4/77048_cis4_mitarbeiter_studstatus_widget.php'); +require_once('dbupdate_3.4/83538_cis4_employees.php'); // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; diff --git a/system/dbupdate_3.4/83538_cis4_employees.php b/system/dbupdate_3.4/83538_cis4_employees.php new file mode 100644 index 000000000..ba33d6fd5 --- /dev/null +++ b/system/dbupdate_3.4/83538_cis4_employees.php @@ -0,0 +1,35 @@ +db_query("SELECT 1 FROM system.tbl_berechtigung WHERE berechtigung_kurzbz = 'cis/eigene_zeitsperren';")) +{ + if($db->db_num_rows($result) == 0) + { + $qry = "INSERT INTO system.tbl_berechtigung(berechtigung_kurzbz, beschreibung) VALUES('cis/eigene_zeitsperren', 'CI/VueJs Applikation Eigene Zeitsperren');"; + + if(!$db->db_query($qry)) + { + echo 'system.tbl_berechtigung '.$db->db_last_error().'
'; + } + else + { + echo 'system.tbl_berechtigung: Added permission "cis/eigene_zeitsperren"
'; + } + } +} +// Add permission: cis/andere_zeitsperren +if($result = @$db->db_query("SELECT 1 FROM system.tbl_berechtigung WHERE berechtigung_kurzbz = 'cis/andere_zeitsperren';")) +{ + if($db->db_num_rows($result) == 0) + { + $qry = "INSERT INTO system.tbl_berechtigung(berechtigung_kurzbz, beschreibung) VALUES('cis/andere_zeitsperren', 'CI/VueJs Applikation Zeitsperren anderer MA anzeigen');"; + + if(!$db->db_query($qry)) + { + echo 'system.tbl_berechtigung '.$db->db_last_error().'
'; + } + else + { + echo 'system.tbl_berechtigung: Added permission "cis/andere_zeitsperren"
'; + } + } +} \ No newline at end of file