diff --git a/vilesci/stammdaten/benutzerberechtigung_uebersicht.php b/vilesci/stammdaten/benutzerberechtigung_uebersicht.php index e1e0aec29..df365bbd3 100644 --- a/vilesci/stammdaten/benutzerberechtigung_uebersicht.php +++ b/vilesci/stammdaten/benutzerberechtigung_uebersicht.php @@ -16,24 +16,28 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. * * Authors: Christian Paminger < christian.paminger@technikum-wien.at > - * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at > - * Rudolf Hangl < rudolf.hangl@technikum-wien.at > - * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > - * Manfred Kindl + * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at > + * Rudolf Hangl < rudolf.hangl@technikum-wien.at > + * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > + * Manfred Kindl */ require_once('../../config/vilesci.config.inc.php'); require_once('../../include/functions.inc.php'); require_once('../../include/studiengang.class.php'); require_once('../../include/benutzerberechtigung.class.php'); require_once('../../include/benutzer.class.php'); +require_once('../../include/berechtigung.class.php'); echo ' Berechtigungen Uebersicht - - - +'; + +include('../../include/meta/jquery.php'); +include('../../include/meta/jquery-tablesorter.php'); + +echo ' @@ -73,24 +91,69 @@ $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); if(!$rechte->isBerechtigt('basis/berechtigung')) - die('Sie haben keine Berechtigung für diese Seite'); + die($rechte->errormsg); $htmlstr = ""; -if(isset($_GET['searchstr'])) - $searchstr = $_GET['searchstr']; -else - $searchstr = ''; +$searchstr = (isset($_GET['searchstr'])?$_GET['searchstr']:''); +$benutzerart = (isset($_GET['benutzerart'])?$_GET['benutzerart']:''); +$benutzeraktiv = (isset($_GET['aktiv'])?$_GET['aktiv']:'aktiv'); +$berechtigung_kurzbz = (isset($_GET['berechtigung_kurzbz'])?$_GET['berechtigung_kurzbz']:''); +$rolle_kurzbz = (isset($_GET['rolle_kurzbz'])?$_GET['rolle_kurzbz']:''); $htmlstr='
-
- BenutzerIn suchen: - - -
+
+ BenutzerIn suchen: + + + + +

+
+ Berechtigung: + + +

+
+ Rollen: + + +

@@ -101,28 +164,69 @@ if(isset($_GET['searchstr'])) { $benutzer = new benutzer(); $searchItems = explode(' ',$searchstr); - $benutzer->search($searchItems,"",null); + if ($benutzeraktiv == 'aktiv') + $benutzer->search($searchItems,"",true); + if ($benutzeraktiv == 'inaktiv') + $benutzer->search($searchItems,"",false); + if ($benutzeraktiv == '') + $benutzer->search($searchItems,"",null); if(count($benutzer->result)!=0) { $htmlstr .= "\n"; - $htmlstr .= ""; - $htmlstr .= "\n"; + $htmlstr .= ""; + $htmlstr .= "\n"; foreach($benutzer->result as $row) { - $benutzerrolle = new benutzerberechtigung(); - $benutzerrolle->loadBenutzerRollen($row->uid); - $aktiv = new benutzer(); - $aktiv->load($row->uid); + if ($benutzerart == 'mitarbeiter' && $row->mitarbeiter_uid != '') + { + if ($benutzerart == 'mitarbeiter' && $row->mitarbeiter_uid != '') + { + $benutzerrolle = new benutzerberechtigung(); + $benutzerrolle->loadBenutzerRollen($row->uid); + $aktiv = new benutzer(); + $aktiv->load($row->uid); + + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + } + } + elseif ($benutzerart == 'studierende' && $row->mitarbeiter_uid == '') + { + $benutzerrolle = new benutzerberechtigung(); + $benutzerrolle->loadBenutzerRollen($row->uid); + $aktiv = new benutzer(); + $aktiv->load($row->uid); - $htmlstr .= " \n"; - $htmlstr .= " \n"; - $htmlstr .= " \n"; - $htmlstr .= " \n"; - $htmlstr .= " \n"; - $htmlstr .= " \n"; - $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + } + elseif ($benutzerart == '') + { + $benutzerrolle = new benutzerberechtigung(); + $benutzerrolle->loadBenutzerRollen($row->uid); + $aktiv = new benutzer(); + $aktiv->load($row->uid); + + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + $htmlstr .= " \n"; + } } $htmlstr .= "
NachnameVornameUIDAktivAktion
NachnameVornameUIDAktivAktion
".$row->nachname."".$row->vorname."".$row->uid."".($aktiv->bnaktiv?"Ja":"Nein")."".(count($benutzerrolle->berechtigungen)!=0?"Rechte bearbeiten":"Rechte vergeben")."
".$row->nachname."".$row->vorname."".$row->uid."".($aktiv->bnaktiv?"Ja":"Nein")."".(count($benutzerrolle->berechtigungen)!=0?"Rechte bearbeiten":"Rechte vergeben")."
".$row->nachname."".$row->vorname."".$row->uid."".($aktiv->bnaktiv?"Ja":"Nein")."".(count($benutzerrolle->berechtigungen)!=0?"Rechte bearbeiten":"Rechte vergeben")."
".$row->nachname."".$row->vorname."".$row->uid."".($aktiv->bnaktiv?"Ja":"Nein")."".(count($benutzerrolle->berechtigungen)!=0?"Rechte bearbeiten":"Rechte vergeben")."
\n"; } @@ -132,7 +236,156 @@ if(isset($_GET['searchstr'])) } } - echo $htmlstr; +//Berechtigungen suchen und Tabelle anzeigen +if($berechtigung_kurzbz != '') +{ + $berechtigungen = new benutzerberechtigung(); + $berechtigungen->getBenutzerFromBerechtigung($berechtigung_kurzbz); + + if(isset($berechtigungen->result) && count($berechtigungen->result) != 0) + { + $htmlstr .= "\n"; + $htmlstr .= ""; + $htmlstr .= "\n"; + + foreach($berechtigungen->result as $row) + { + $benutzer = new benutzer(); + $benutzer->load($row->uid); + + $heute = strtotime(date('Y-m-d')); + + if ($row->ende!='' && strtotime($row->ende) < $heute) + { + $color1 = '#f79c9c'; + $color2 = '#cc0202'; + } + elseif ($row->start!='' && strtotime($row->start) > $heute) + { + $color1 = '#faf7b9'; + $color2 = '#cfde00'; + } + else + { + $color1 = '#d1fab9'; + $color2 = '#00de00'; + } + $status='
'; + + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + if ($row->uid != '') + $htmlstr .= ' '; + elseif ($row->funktion_kurzbz != '') + $htmlstr .= ' '; + elseif ($row->rolle_kurzbz != '') + $htmlstr .= ' '; + + $htmlstr .= ' '; + } + $htmlstr .= '
BerechtigungRolleFunktionNachnameVornameUIDArtBenutzer AktivStatusAktion
'.$row->berechtigung_kurzbz.''.($row->rolle_kurzbz != ''?$row->rolle_kurzbz:'').''.($row->funktion_kurzbz != ''?$row->funktion_kurzbz:'').''.($benutzer->nachname != ''?$benutzer->nachname:'').''.($benutzer->vorname != ''?$benutzer->vorname:'').''.($row->uid != ''?$row->uid:'').''.$row->art.''.(isset($row->uid)?$benutzer->bnaktiv?'Ja':'Nein':'').''.$status.'Benutzerrechte bearbeitenFunktionsrechte bearbeitenRollenrechte bearbeiten
'; + } + else + { + $htmlstr .= "Für diese Berechtigung sind keine Einträge vorhanden"; + } +} + +//Rollen suchen und Tabelle anzeigen +if($rolle_kurzbz != '') +{ + $rollen = new benutzerberechtigung(); + $rollen->getBenutzerFromRolle($rolle_kurzbz); + + if(isset($rollen->result) && count($rollen->result) != 0) + { + $htmlstr .= "\n"; + $htmlstr .= ""; + $htmlstr .= "\n"; + + foreach($rollen->result as $row) + { + $benutzer = new benutzer(); + $benutzer->load($row->uid); + + $heute = strtotime(date('Y-m-d')); + + if ($row->ende!='' && strtotime($row->ende) < $heute) + { + $color1 = '#f79c9c'; + $color2 = '#cc0202'; + } + elseif ($row->start!='' && strtotime($row->start) > $heute) + { + $color1 = '#faf7b9'; + $color2 = '#cfde00'; + } + else + { + $color1 = '#d1fab9'; + $color2 = '#00de00'; + } + $status='
'; + + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + $htmlstr .= ' '; + } + $htmlstr .= '
RolleFunktionNachnameVornameUIDArtBenutzer AktivStatusAktion
'.$row->rolle_kurzbz.''.($row->funktion_kurzbz != ''?$row->funktion_kurzbz:'').''.($benutzer->nachname != ''?$benutzer->nachname:'').''.($benutzer->vorname != ''?$benutzer->vorname:'').''.($row->uid != ''?$row->uid:'').''.$row->art.''.(isset($row->uid)?$benutzer->bnaktiv?'Ja':'Nein':'').''.$status.'Rechte bearbeiten
'; + } + else + { + $htmlstr .= "Für diese Berechtigung sind keine Einträge vorhanden"; + } +} + + echo $htmlstr; ?>