diff --git a/vilesci/stammdaten/benutzerberechtigung_details.php b/vilesci/stammdaten/benutzerberechtigung_details.php
index b230d702f..62afdaa04 100644
--- a/vilesci/stammdaten/benutzerberechtigung_details.php
+++ b/vilesci/stammdaten/benutzerberechtigung_details.php
@@ -317,6 +317,88 @@ if(isset($_POST['setDate_multi']) && $_POST['setDate_multi'] != '')
+ //$reloadstr .= "";
+
+}
+
+if(isset($_POST['save_anmerkung_multi']) && $_POST['anmerkung_multi'] != '')
+{
+ if(!$rechte->isBerechtigt('basis/berechtigung', null, 'su'))
+ die($rechte->errormsg);
+
+ $anmerkungNeu = $_POST['anmerkung_multi'];
+
+ 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');
+ }
+
+ // Bestehende Anmerkungen belassen und neue Ergänzen
+ if ($ber->anmerkung != '')
+ {
+ $ber->anmerkung = $ber->anmerkung.'; '.$anmerkungNeu;
+ }
+ else
+ {
+ $ber->anmerkung = $anmerkungNeu;
+ }
+
+ // Wenn Anmerkung länger als 256 Zeichen ist (DB-Beschränkung), String kürzen und Warnung ausgeben
+ if (strlen($ber->anmerkung) > 256)
+ {
+ $ber->anmerkung = cutString($ber->anmerkung, 256, '...');
+ $errorstr .= "Die Anmerkung bei der ID ".$benutzerberechtigung_id." übersteigt die maximale Länge von 256 Zeichen und wurde nicht vollständig gespeichert
";
+ }
+
+ $ber->updateamum = date('Y-m-d H:i:s');
+ $ber->updatevon = $user;
+
+ if(!$ber->save())
+ {
+ $errorstr .= "Die Anmerkung 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 = 'Anmerkung bearbeitet';
+
+ if(!$log->save())
+ {
+ $errorstr .= "Fehler beim schreiben des Log-Eintrags
";
+ }
+ }
+ }
+ if ($i > 0)
+ {
+ $successstr .= "Anmerkung bei ".$i." Einträgen erfolgreich gespeichert
";
+ }
+ }
+
+
+
//$reloadstr .= "";
@@ -424,6 +506,10 @@ if(isset($_POST['schick']))
}
}
}
+ if ($errorstr == '')
+ {
+ $successstr .= "Änderungen erfolgreich gespeichert
";
+ }
}
}
else
@@ -539,20 +625,23 @@ if (isset($_REQUEST['uid']) || isset($_REQUEST['funktion_kurzbz']))
$htmlstr .= "Berechtigungen von ".$name->nachname." ".$name->vorname." (".$uid.")";
$message = '';
$class = '';
+ $messageString = '';
if ($errorstr != '' || $successstr != '')
{
if ($successstr != '')
{
$class = 'class="alert alert-success"';
$message = $successstr;
+ $messageString .= '