From 9527fd006f12d8cb00a2dc5d6100d6d977cbf385 Mon Sep 17 00:00:00 2001 From: Manfred Date: Mon, 27 Mar 2023 17:08:22 +0200 Subject: [PATCH] Rechte-Detailansicht --- .../benutzerberechtigung_detailliste.php | 166 ++++++++++++++++++ .../benutzerberechtigung_details.php | 50 +++--- 2 files changed, 193 insertions(+), 23 deletions(-) create mode 100644 vilesci/stammdaten/benutzerberechtigung_detailliste.php diff --git a/vilesci/stammdaten/benutzerberechtigung_detailliste.php b/vilesci/stammdaten/benutzerberechtigung_detailliste.php new file mode 100644 index 000000000..a5e352075 --- /dev/null +++ b/vilesci/stammdaten/benutzerberechtigung_detailliste.php @@ -0,0 +1,166 @@ + + * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at > + * Rudolf Hangl < rudolf.hangl@technikum-wien.at > + * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > + */ +require_once('../../config/vilesci.config.inc.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/berechtigung.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); +require_once('../../include/funktion.class.php'); +require_once('../../include/organisationseinheit.class.php'); +require_once('../../include/wawi_kostenstelle.class.php'); +require_once('../../include/benutzer.class.php'); + +$user = get_uid(); + +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); + +$uid = isset($_GET['uid']) && $_GET['uid']!='' ? $_GET['uid'] : die('UID muss übergeben werden'); +$benutzer = new benutzer(); +$benutzer->load($uid); + +if(!$rechte->isBerechtigt('basis/berechtigung')) + die('Sie habe keine Rechte um diese Seite anzuzeigen'); + +?> + + + Detaillierte Berechtigungsliste + + + + + + + + + + +

Detaillierte Berechtigungsliste von vorname.' '.$benutzer->nachname ?>

+ + getBerechtigungen($uid); + + $funktionsArray = array(); + $funktionen = new funktion(); + $funktionen->getAll(); + + foreach ($funktionen->result as $item) + { + $funktionsArray[$item->funktion_kurzbz] = $item->beschreibung; + } + + $kostenstelleArray = array(); + $kostenstellen = new wawi_kostenstelle(); + $kostenstellen->getAll(); + + foreach ($kostenstellen->result as $item) + { + $kostenstelleArray[$item->kostenstelle_id] = $item->bezeichnung.' ('.$item->kostenstelle_id.')'; + } + + $oeArray = array(); + $oes = new organisationseinheit(); + $oes->getAll(); + + foreach ($oes->result as $item) + { + $oeArray[$item->oe_kurzbz] = $item->organisationseinheittyp_kurzbz.' '.$item->bezeichnung; + } + $heute = strtotime(date('Y-m-d')); + + echo ' + + + + + + + + + + + '; + foreach ($rechte->berechtigungen AS $key) + { + + if ($key->ende!='' && strtotime($key->ende) < $heute) + { + $titel="Inaktiv"; + } + elseif ($key->start!='' && strtotime($key->start) > $heute) + { + $titel="Wartend"; + } + else + { + $titel="Aktiv"; + } + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + echo ''; + } + echo '
FunktionRolleRechtArtOrganisationseinheitKostenstelleGültig abGültig bisStatus
'.($key->funktion_kurzbz != '' ? $funktionsArray[$key->funktion_kurzbz] : '').''.($key->rolle_kurzbz != '' ? $key->rolle_kurzbz : '').''.($key->berechtigung_kurzbz != '' ? $key->berechtigung_kurzbz : '').''.($key->art != '' ? $key->art : '').''.($key->oe_kurzbz != '' ? $oeArray[$key->oe_kurzbz] : '').''.($key->kostenstelle_id != '' ? $kostenstelleArray[$key->kostenstelle_id] : '').''.($key->start != '' ? $key->start : '').''.($key->ende != '' ? $key->ende : '').''.$titel.'
'; + + ?> + + + diff --git a/vilesci/stammdaten/benutzerberechtigung_details.php b/vilesci/stammdaten/benutzerberechtigung_details.php index 1cc1593e0..ac7c2d355 100644 --- a/vilesci/stammdaten/benutzerberechtigung_details.php +++ b/vilesci/stammdaten/benutzerberechtigung_details.php @@ -65,7 +65,7 @@ $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); if (!$db = new basis_db()) - die($p->t("global/fehlerBeimOeffnenDerDatenbankverbindung")); + die('Fehler beim öffnen der Datenbankverbindung'); if(!$rechte->isBerechtigt('basis/berechtigung')) die('Sie haben keine Berechtigung fuer diese Seite'); @@ -554,14 +554,7 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) } } $htmlstr .= '
'.$message.'
'; - //$htmlstr .= "

".$errorstr."

".$successstr."

"; - //Formular zum Kopieren von Berechtigungen - //$htmlstr .= "
"; - //$htmlstr .= "Berechtigungen (aktive) kopieren von UID "; - //$htmlstr .= ""; - //$htmlstr .= ""; - //$htmlstr .= "
"; $i = 0; // Zusätzlich jede Funktion mit einer gültigen Berechtigung anzeigen @@ -605,6 +598,10 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) $htmlstr .= '

'; } } + if (count($bn) > 0) + { + $htmlstr .= "

Detailliste Rechte

"; + } } elseif(isset($_REQUEST['funktion_kurzbz']) && $_REQUEST['funktion_kurzbz']!='') { @@ -784,29 +781,32 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) if ($b->ende!='' && strtotime($b->ende) < $heute) { $titel="ccc"; - $style = 'style="border-left: 10px solid tomato; border-right: 10px solid transparent; text-align: center; vertical-align: middle"'; + $style = 'style="border-left: 10px solid tomato; border-right: 10px solid transparent; text-align: center; vertical-align: middle; background-color: #d0d7e0;"'; + $inaktiv_style = 'style="background-color: #d0d7e0;"'; $data = 'rot'; } elseif ($b->start!='' && strtotime($b->start) > $heute) { $titel="bbb"; $style = 'style="border-left: 10px solid gold; border-right: 10px solid transparent; text-align: center; vertical-align: middle"'; + $inaktiv_style = ''; $data = 'gelb'; } else { $titel="aaa"; $style = 'style="border-left: 10px solid LightGreen; border-right: 10px solid transparent; text-align: center; vertical-align: middle"'; + $inaktiv_style = ''; $data = 'gruen'; } // Auswahlcheckbox - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " ".$titel.""; $htmlstr .= " "; $htmlstr .= " "; //Rolle - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " art.""; $htmlstr .= " "; $htmlstr .= " "; @@ -858,11 +858,11 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) //Organisationseinheit if($funktion_kurzbz != '') { - $htmlstr .= " OE aus MA-Funktion"; + $htmlstr .= " OE aus MA-Funktion"; } else { - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " ".($b->oe_kurzbz != '' ? $oe_arr[$b->oe_kurzbz] : '').""; $htmlstr .= " "; $htmlstr .= " oe_kurzbz] : '')."'>"; @@ -870,7 +870,7 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) } //Kostenstelle - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " ".$b->kostenstelle_id.""; $htmlstr .= " "; $htmlstr .= " kostenstelle_id] : '')."'>"; @@ -897,24 +897,24 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) $htmlstr .= " ";*/ //Negativ-Checkbox - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " negativ?'checked="checked"':'').">"; $htmlstr .= " "; //Gültig ab - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " ".$b->start.""; $htmlstr .= " "; $htmlstr .= " "; // Gültig bis - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " ".$b->ende.""; $htmlstr .= " "; $htmlstr .= " "; //Anmerkung - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " "; - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= "