diff --git a/vilesci/stammdaten/benutzerberechtigung_details.php b/vilesci/stammdaten/benutzerberechtigung_details.php index 18081c4b9..1cc1593e0 100644 --- a/vilesci/stammdaten/benutzerberechtigung_details.php +++ b/vilesci/stammdaten/benutzerberechtigung_details.php @@ -259,6 +259,70 @@ if(isset($_POST['uebertragen']) && $_POST['uebertragen_nach'] != '') } } +if(isset($_POST['setDate_multi']) && $_POST['setDate_multi'] != '') +{ + if(!$rechte->isBerechtigt('basis/berechtigung', null, 'suid')) + die($rechte->errormsg); + + if (isset($_POST['dataset'])) + { + $i = 0; + foreach ($_POST['dataset'] AS $benutzerberechtigung_id => $value) + { + // Nur markierte Einträge bearbeiten + if (!isset($value['check'])) + { + continue; + } + + $ber = new benutzerberechtigung(); + if(!$ber->load($benutzerberechtigung_id)) + { + die('Fehler beim Laden der Berechtigung'); + } + + $ber->ende = date('Y-m-d',strtotime("-1 days")); + $ber->updateamum = date('Y-m-d H:i:s'); + $ber->updatevon = $user; + + if(!$ber->save()) + { + $errorstr .= "Das Ende-Datum des Datensatzes mit der ID ".$benutzerberechtigung_id." konnte nicht gespeichert werden!".$ber->errormsg; + } + else + { + $i ++; + //Log schreiben + $log = new log(); + + $logdata = var_export((array) $ber, true); + $log->new = true; + $log->sql = $logdata; + $log->sqlundo = 'Kein Undo vorhanden'; + $log->executetime = date('Y-m-d H:i:s'); + $log->mitarbeiter_uid = $user; + $log->beschreibung = 'Berechtigung für '.$uid.' beendet'; + + if(!$log->save()) + { + $errorstr .= "Fehler beim schreiben des Log-Eintrags
"; + } + } + } + if ($errorstr == '') + { + $successstr .= "Ende-Datum bei ".$i." Rechten erfolgreich beendet
"; + } + } + + + + //$reloadstr .= ""; + +} + if(isset($_POST['schick'])) { if($rechte->isBerechtigt('basis/berechtigung', null, 'suid')) @@ -418,9 +482,10 @@ if (!$b = new berechtigung()) $b->getRollen(); foreach($b->result as $berechtigung) { - $rolle_arr[] = $berechtigung->rolle_kurzbz; + $rolle_arr[$berechtigung->rolle_kurzbz] = $berechtigung->beschreibung; } -sort($rolle_arr); +ksort($rolle_arr, SORT_STRING | SORT_FLAG_CASE); + $b->getBerechtigungen(); foreach($b->result as $berechtigung) { @@ -592,10 +657,10 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) //Rolle $htmlstr .= " "; @@ -683,8 +748,8 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) $htmlstr .= " - Rolle - Berechtigung + Rolle + Berechtigung Art Organisationseinheit Kostenstelle @@ -742,22 +807,32 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) //Rolle $htmlstr .= " "; - $htmlstr .= " "; $htmlstr .= " "; - for ($i = 0; $i < sizeof($rolle_arr); $i++) + foreach ($rolle_arr AS $key => $value) { - if ($b->rolle_kurzbz == $rolle_arr[$i]) + if ($b->rolle_kurzbz == $key) { - $sel = " selected"; + $sel = " selected='selected'"; } else $sel = ""; - $htmlstr .= ""; + $htmlstr .= ""; } $htmlstr .= " "; if ($b->rolle_kurzbz != '') { - $htmlstr .= " "; + $htmlstr .= " "; } $htmlstr.=""; @@ -827,13 +902,13 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) $htmlstr .= " "; //Gültig ab - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " ".$b->start.""; $htmlstr .= " "; $htmlstr .= " "; // Gültig bis - $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " ".$b->ende.""; $htmlstr .= " "; $htmlstr .= " "; @@ -842,7 +917,8 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) $htmlstr .= " "; $htmlstr .= " anmerkung))."' data-toggle='tooltip' @@ -856,36 +932,54 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) $htmlstr .= " + data-placement='auto'> "; - $htmlstr .= " "; - $htmlstr .= " "; - $htmlstr .= " "; + $htmlstr .= " "; + $htmlstr .= " "; + $htmlstr .= " "; $htmlstr .= " "; $htmlstr .= " "; } $htmlstr .= ""; $htmlstr .= '
- -
- -
- + +
+
+ +
+ +
+ +
-
'; $htmlstr .= ""; - + $htmlstr .= "
















"; } ?> @@ -910,7 +1004,203 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz'])) ?> - +