mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-25 16:44:28 +00:00
Berechtigungspruefung mittels mitarbeiter/zeitsperre:begrenzt, Update Berechtigung für Anzeige in Vilesci-Menue, Einbau Redirect
This commit is contained in:
@@ -53,7 +53,7 @@ $menu=array
|
|||||||
(
|
(
|
||||||
'name'=>'Mitarbeiter','permissions'=>array('admin','lv-plan','support'),
|
'name'=>'Mitarbeiter','permissions'=>array('admin','lv-plan','support'),
|
||||||
'Übersicht'=>array('name'=>'Zeitwünsche', 'link'=>'personen/lektor_uebersicht.php', 'target'=>'main','permissions'=>array('mitarbeiter')),
|
'Übersicht'=>array('name'=>'Zeitwünsche', 'link'=>'personen/lektor_uebersicht.php', 'target'=>'main','permissions'=>array('mitarbeiter')),
|
||||||
'Zeitsperren'=>array('name'=>'Zeitsperren', 'link'=>'personen/urlaubsverwaltung.php', 'target'=>'main','permissions'=>array('mitarbeiter/zeitsperre')),
|
'Zeitsperren'=>array('name'=>'Zeitsperren', 'link'=>'personen/urlaubsverwaltung.php', 'target'=>'main','permissions'=>array('mitarbeiter/zeitsperre:begrenzt')),
|
||||||
),
|
),
|
||||||
|
|
||||||
'Vorrueckung'=> array
|
'Vorrueckung'=> array
|
||||||
@@ -119,7 +119,7 @@ $menu=array
|
|||||||
(
|
(
|
||||||
'name'=>'Mitarbeiter','permissions'=>array('admin','mitarbeiter','support'),
|
'name'=>'Mitarbeiter','permissions'=>array('admin','mitarbeiter','support'),
|
||||||
'Übersicht'=>array('name'=>'Übersicht', 'link'=>'personen/lektor_uebersicht.php', 'target'=>'main'),
|
'Übersicht'=>array('name'=>'Übersicht', 'link'=>'personen/lektor_uebersicht.php', 'target'=>'main'),
|
||||||
'Zeitsperren'=>array('name'=>'Zeitsperren/Urlaub', 'link'=>'personen/urlaubsverwaltung.php', 'target'=>'main','permissions'=>array('mitarbeiter/zeitsperre')),
|
'Zeitsperren'=>array('name'=>'Zeitsperren/Urlaub', 'link'=>'personen/urlaubsverwaltung.php', 'target'=>'main','permissions'=>array('mitarbeiter/zeitsperre:begrenzt')),
|
||||||
),
|
),
|
||||||
'Betriebsmittel'=>array('name'=>'Betriebsmittel', 'link'=>'stammdaten/betriebsmittel_frameset.php', 'target'=>'main','permissions'=>array('basis/betriebsmittel')),
|
'Betriebsmittel'=>array('name'=>'Betriebsmittel', 'link'=>'stammdaten/betriebsmittel_frameset.php', 'target'=>'main','permissions'=>array('basis/betriebsmittel')),
|
||||||
'AnwesenheitslistenBarcode'=>array('name'=>'Anwesenheitslisten mit Barcodes', 'link'=>'personen/anwesenheitslisten_barcode.php', 'target'=>'main','permissions'=>array('basis/person')),
|
'AnwesenheitslistenBarcode'=>array('name'=>'Anwesenheitslisten mit Barcodes', 'link'=>'personen/anwesenheitslisten_barcode.php', 'target'=>'main','permissions'=>array('basis/person')),
|
||||||
|
|||||||
@@ -131,34 +131,38 @@ echo ' <script type="text/javascript" src="../../include/js/jquery.ui.datepicker
|
|||||||
<h2>Zeitsperren (Urlaube) der MitarbeiterInnen</h2>
|
<h2>Zeitsperren (Urlaube) der MitarbeiterInnen</h2>
|
||||||
';
|
';
|
||||||
|
|
||||||
|
|
||||||
|
$redirect = basename($_SERVER['REQUEST_URI'], '?' . $_SERVER['QUERY_STRING']);
|
||||||
|
|
||||||
//Rechte Pruefen
|
//Rechte Pruefen
|
||||||
$rechte = new benutzerberechtigung();
|
$rechte = new benutzerberechtigung();
|
||||||
$rechte->getBerechtigungen($user, true);
|
$rechte->getBerechtigungen($user);
|
||||||
|
$berechtigt = false;
|
||||||
|
|
||||||
if(!$rechte->isBerechtigt('mitarbeiter/zeitsperre', null, 'suid'))
|
$bf = new benutzerfunktion();
|
||||||
die('Sie haben keine Berechtigung für diese Seite');
|
$bf->getBenutzerFunktionByUid($uid);
|
||||||
|
foreach ($bf->result as $oe)
|
||||||
|
{
|
||||||
|
if($oe->funktion_kurzbz == "oezuordnung")
|
||||||
|
if($rechte->isBerechtigt('mitarbeiter/zeitsperre:begrenzt', $oe->oe_kurzbz, 'suid'))
|
||||||
|
$berechtigt = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if($uid && !$berechtigt && $uid != $user)
|
||||||
|
die("Sie haben keine Berechtigung um Mitarbeiter*in " . $uid . " zu bearbeiten!<br><br> <a href='$redirect'>Zurück</a>");
|
||||||
|
|
||||||
//Formular zur Eingabe der UID
|
//Formular zur Eingabe der UID
|
||||||
echo '<form accept-charset="UTF-8" action="'.$_SERVER['PHP_SELF'].'" mehtod="GET">';
|
echo '<form accept-charset="UTF-8" action="'.$_SERVER['PHP_SELF'].'" method="GET">';
|
||||||
echo 'Zeitsperren der UID <INPUT type="hidden" id="uid" name="uid" value="uid">
|
echo 'Zeitsperren der UID <INPUT type="hidden" id="uid" name="uid" value="uid">
|
||||||
<input type="text" id="ma_name" name="uid" value="'.$uid.'">';
|
<input type="text" id="ma_name" name="uid" value="'.$uid.'">';
|
||||||
echo '<input type="submit" name="submit" value="Anzeigen">';
|
echo '<input type="submit" name="submit" value="Anzeigen">';
|
||||||
echo '</form>';
|
echo '</form>';
|
||||||
|
|
||||||
//OEs mit Leitungsfunktion User laden
|
|
||||||
$bf = new benutzerfunktion();
|
|
||||||
$oes = $bf->getBenutzerFunktionByUid($user, 'Leitung');
|
|
||||||
|
|
||||||
$leitungInOes = array();
|
|
||||||
foreach ($bf->result as $oe)
|
|
||||||
{
|
|
||||||
$leitungInOes[] = $oe->oe_kurzbz;
|
|
||||||
}
|
|
||||||
|
|
||||||
//Loeschen von Zeitsperren
|
//Loeschen von Zeitsperren
|
||||||
if($action=='delete')
|
if($action=='delete')
|
||||||
{
|
{
|
||||||
if(!$rechte->isBerechtigt('mitarbeiter/zeitsperre', null, 'suid'))
|
if(!$berechtigt)
|
||||||
die('Sie haben keine Berechtigung für diese Aktion');
|
die('Sie haben keine Berechtigung für diese Aktion');
|
||||||
|
|
||||||
if($zeitsperre_id!='' && is_numeric($zeitsperre_id))
|
if($zeitsperre_id!='' && is_numeric($zeitsperre_id))
|
||||||
@@ -176,7 +180,7 @@ if($action=='delete')
|
|||||||
//Kopieren einer Zeitsperre
|
//Kopieren einer Zeitsperre
|
||||||
if($action=='copy')
|
if($action=='copy')
|
||||||
{
|
{
|
||||||
if(!$rechte->isBerechtigt('mitarbeiter/zeitsperre', null, 'suid'))
|
if(!$berechtigt)
|
||||||
die('Sie haben keine Berechtigung für diese Aktion');
|
die('Sie haben keine Berechtigung für diese Aktion');
|
||||||
|
|
||||||
if($zeitsperre_id!='' && is_numeric($zeitsperre_id))
|
if($zeitsperre_id!='' && is_numeric($zeitsperre_id))
|
||||||
@@ -199,7 +203,7 @@ if($action=='copy')
|
|||||||
|
|
||||||
if(isset($_POST['save']))
|
if(isset($_POST['save']))
|
||||||
{
|
{
|
||||||
if(!$rechte->isBerechtigt('mitarbeiter/zeitsperre', null, 'suid'))
|
if(!$berechtigt)
|
||||||
die('Sie haben keine Berechtigung für diese Aktion');
|
die('Sie haben keine Berechtigung für diese Aktion');
|
||||||
|
|
||||||
//Speichern der Daten
|
//Speichern der Daten
|
||||||
@@ -253,23 +257,9 @@ if($errormsg!='')
|
|||||||
if($message!='')
|
if($message!='')
|
||||||
echo "<br><div class='insertok'>$message</div><br>";
|
echo "<br><div class='insertok'>$message</div><br>";
|
||||||
|
|
||||||
//Check, if user Leitungsfunktion für die OE des gewünschten uid besitzt
|
|
||||||
$ber = false;
|
|
||||||
$bf = new benutzerfunktion();
|
|
||||||
$bf->getBenutzerFunktionByUid($uid);
|
|
||||||
foreach ($bf->result as $oe)
|
|
||||||
{
|
|
||||||
if(in_array($oe->oe_kurzbz, $leitungInOes))
|
|
||||||
{
|
|
||||||
$ber = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if($uid!='' && !$ber)
|
|
||||||
echo( "Keine Berechtigungen, um Abwesenheiten von " . $uid . " zu bearbeiten!");
|
|
||||||
|
|
||||||
//Zeitsperren des Mitarbeiters anzeigen
|
//Zeitsperren des Mitarbeiters anzeigen
|
||||||
if($uid!='' && $ber)
|
if($uid!='')
|
||||||
{
|
{
|
||||||
$mitarbeiter = new mitarbeiter();
|
$mitarbeiter = new mitarbeiter();
|
||||||
if(!$mitarbeiter->load($uid))
|
if(!$mitarbeiter->load($uid))
|
||||||
|
|||||||
Reference in New Issue
Block a user