diff --git a/cis/testtool/admin/auswertung.php b/cis/testtool/admin/auswertung.php index dbc7d6fdb..1f6e9f26a 100644 --- a/cis/testtool/admin/auswertung.php +++ b/cis/testtool/admin/auswertung.php @@ -22,13 +22,12 @@ */ require_once('../../../config/cis.config.inc.php'); - require_once('../../../include/basis_db.class.php'); - if (!$db = new basis_db()) - die('Fehler beim Oeffnen der Datenbankverbindung'); - require_once('../../../include/functions.inc.php'); require_once('../../../include/studiengang.class.php'); +if (!$db = new basis_db()) + die('Fehler beim Oeffnen der Datenbankverbindung'); + function sortByField($multArray,$sortField,$desc=true) { $tmpKey=''; diff --git a/cis/testtool/admin/edit_gebiet.php b/cis/testtool/admin/edit_gebiet.php index 051c8c5ce..95a53ed69 100644 --- a/cis/testtool/admin/edit_gebiet.php +++ b/cis/testtool/admin/edit_gebiet.php @@ -30,7 +30,7 @@ require_once('../../../include/gebiet.class.php'); require_once('../../../include/benutzerberechtigung.class.php'); if (!$user=get_uid()) - die('Sie sind nicht angemeldet. Es wurde keine Benutzer UID gefunden ! Zurück'); + die('Sie sind nicht angemeldet. Es wurde keine Benutzer UID gefunden ! Zurück'); $rechte = new benutzerberechtigung(); @@ -54,7 +54,7 @@ else echo '

 Gebiet bearbeiten

'; -if(!$rechte->isBerechtigt('admin')) +if(!$rechte->isBerechtigt('basis/testtool')) die('Sie haben keine Berechtigung fuer diese Seite'); $gebiet = new gebiet(); @@ -87,6 +87,9 @@ echo '

'; //Speichern der Daten if(isset($_POST['speichern'])) { + if(!$rechte->isBerechtigt('basis/testtool', null, 'suid')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + $gebiet = new gebiet(); if($gebiet->load($gebiet_id)) { diff --git a/cis/testtool/admin/index.php b/cis/testtool/admin/index.php index cc831ec2d..9d7dfd7c0 100644 --- a/cis/testtool/admin/index.php +++ b/cis/testtool/admin/index.php @@ -44,10 +44,10 @@ session_start(); $user=get_uid(); $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); -if(!$rechte->isBerechtigt('admin')) -{ + +if(!$rechte->isBerechtigt('basis/testtool', null, 's')) die('Sie haben keine Berechtigung fuer diese Seite'); -} + if(isset($_GET['gebiet_id'])) { @@ -133,6 +133,9 @@ $sprache = $_SESSION['sprache']; //Bei Upload des Bildes if(isset($_POST['submitbild'])) { + if(!$rechte->isBerechtigt('basis/testtool', null, 'suid')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + if(isset($_FILES['bild']['tmp_name'])) { //Extension herausfiltern @@ -172,6 +175,9 @@ if(isset($_POST['submitbild'])) //Bei Upload eines Audiofiles if(isset($_POST['submitaudio'])) { + if(!$rechte->isBerechtigt('basis/testtool', null, 'suid')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + if(isset($_FILES['audio']['tmp_name'])) { //Extension herausfiltern @@ -212,6 +218,9 @@ if(isset($_POST['submitaudio'])) //Speichern der Frage-Daten if(isset($_POST['submitdata'])) { + if(!$rechte->isBerechtigt('basis/testtool', null, 'suid')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + $frage = new frage(); if($frage->load($_GET['frage_id'])) { @@ -263,6 +272,9 @@ if(isset($_POST['submitdata'])) //Speichern eines Vorschlages if(isset($_POST['submitvorschlag'])) { + if(!$rechte->isBerechtigt('basis/testtool', null, 'suid')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + $bildcontent=''; if(isset($_FILES['bild']['tmp_name']) && is_uploaded_file($_FILES['bild']['tmp_name'])) { @@ -387,6 +399,9 @@ if(isset($_POST['submitvorschlag'])) //Vorschlag loeschen if(isset($_GET['type']) && $_GET['type']=='delete' && isset($_GET['vorschlag_id'])) { + if(!$rechte->isBerechtigt('basis/testtool', null, 'suid')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + $vs = new vorschlag(); if(!$vs->delete($_GET['vorschlag_id'])) echo ''.$vs->errormsg.'
'; @@ -396,6 +411,9 @@ if(isset($_GET['type']) && $_GET['type']=='delete' && isset($_GET['vorschlag_id' // anlegen einer neuen Frage if(isset($_GET['type']) && $_GET['type']=='neuefrage') { + if(!$rechte->isBerechtigt('basis/testtool', null, 'suid')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + $frage_obj = new frage(); $frage_obj->gebiet_id = $_GET['gebiet_id']; diff --git a/include/benutzerberechtigung.class.php b/include/benutzerberechtigung.class.php index 2fe68d262..2bb19040a 100644 --- a/include/benutzerberechtigung.class.php +++ b/include/benutzerberechtigung.class.php @@ -464,26 +464,22 @@ class benutzerberechtigung extends basis_db //Pruefen ob eine negativ-Berechtigung vorhanden ist if($b->berechtigung_kurzbz==$berechtigung_kurzbz && $b->negativ && $oe_kurzbz==$b->oe_kurzbz) { - if (!is_null($b->starttimestamp) && !is_null($b->endetimestamp)) + if (($timestamp>$b->starttimestamp || $b->starttimestamp==null) + && ($timestamp<$b->endetimestamp || $b->endetimestamp==null)) { - if ($timestamp>$b->starttimestamp && $timestamp<$b->endetimestamp) - return false; - } - else return false; + } } if($b->berechtigung_kurzbz==$berechtigung_kurzbz && (is_null($art) || mb_strstr($b->art, $art)) && (is_null($oe_kurzbz) || $oe_kurzbz==$b->oe_kurzbz)) { - if (!is_null($b->starttimestamp) && !is_null($b->endetimestamp)) + if (($timestamp>$b->starttimestamp || $b->starttimestamp==null) + && ($timestamp<$b->endetimestamp || $b->endetimestamp==null)) { - if ($timestamp>$b->starttimestamp && $timestamp<$b->endetimestamp) return true; } - else - return true; } } @@ -526,7 +522,7 @@ class benutzerberechtigung extends basis_db foreach ($this->berechtigungen as $b) { if (($berechtigung_kurzbz==$b->berechtigung_kurzbz || $berechtigung_kurzbz==null) - && (($timestamp>$b->starttimestamp && $timestamp<$b->endetimestamp) || ($b->starttimestamp==null && $b->endetimestamp==null))) + && (($timestamp>$b->starttimestamp || $b->starttimestamp==null) && ($timestamp<$b->endetimestamp || $b->endetimestamp==null))) { if($b->negativ) { @@ -594,7 +590,7 @@ class benutzerberechtigung extends basis_db foreach ($this->berechtigungen as $b) { if (($berechtigung_kurzbz==$b->berechtigung_kurzbz || $berechtigung_kurzbz==null) - && (($timestamp>$b->starttimestamp && $timestamp<$b->endetimestamp) || ($b->starttimestamp==null && $b->endetimestamp==null))) + && (($timestamp>$b->starttimestamp || $b->starttimestamp==null) && ($timestamp<$b->endetimestamp || $b->endetimestamp==null))) { if($b->negativ) { diff --git a/vilesci/personen/personen_details.php b/vilesci/personen/personen_details.php index 6276e24a3..2653417ef 100644 --- a/vilesci/personen/personen_details.php +++ b/vilesci/personen/personen_details.php @@ -20,12 +20,7 @@ * 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/basis_db.class.php'); - if (!$db = new basis_db()) - die('Es konnte keine Verbindung zum Server aufgebaut werden.'); - +require_once('../../config/vilesci.config.inc.php'); require_once('../../include/functions.inc.php'); require_once('../../include/person.class.php'); require_once('../../include/benutzer.class.php'); @@ -34,8 +29,13 @@ require_once('../../include/mitarbeiter.class.php'); require_once('../../include/studiengang.class.php'); require_once('../../include/nation.class.php'); require_once('../../include/ort.class.php'); +require_once('../../include/akte.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); require_once('../../include/fckeditor/fckeditor.php'); +if (!$db = new basis_db()) + die('Es konnte keine Verbindung zum Server aufgebaut werden.'); + echo ' @@ -71,6 +71,12 @@ function RefreshImage() $user = get_uid(); +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); + +if(!$rechte->isBerechtigt('student/stammdaten', null, 's') && !$rechte->isBerechtigt('mitarbeiter/stammdaten', null, 's')) + die('Sie haben keine Berechtigung fuer diese Seite'); + $error_person_save = false; $error_benutzer_save = false; $error_mitarbeiter_save = false; @@ -114,6 +120,10 @@ $standort_kurzbz = (isset($_POST['standort_kurzbz'])?$_POST['standort_kurzbz']:' $anmerkung = (isset($_POST['anmerkung'])?$_POST['anmerkung']:''); $bismelden = (isset($_POST['bismelden'])?$_POST['bismelden']:''); $kurzbeschreibung = (isset($_POST['kurzbeschreibung'])?$_POST['kurzbeschreibung']:''); +$matrikelnummer = (isset($_POST['matrikelnummer'])?$_POST['matrikelnummer']:''); +$semester = (isset($_POST['semester'])?$_POST['semester']:''); +$verband = (isset($_POST['verband'])?$_POST['verband']:''); +$gruppe = (isset($_POST['gruppe'])?$_POST['gruppe']:''); if($uid!='') { @@ -137,6 +147,9 @@ if($uid!='') if(isset($_POST['saveperson'])) { + if(!$rechte->isBerechtigt('student/stammdaten', null, 'su') && !$rechte->isBerechtigt('mitarbeiter/stammdaten', null, 'su')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + $person = new person(); if(!$person->load($person_id)) die('Person konnte nicht geladen werden'); @@ -177,8 +190,41 @@ if(isset($_POST['saveperson'])) } +if(isset($_GET['deleteimage'])) +{ + if(!$rechte->isBerechtigt('student/stammdaten', null, 'su') && !$rechte->isBerechtigt('mitarbeiter/stammdaten', null, 'su')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + + $person = new person(); + if(!$person->load($person_id)) + die('Person konnte nicht geladen werden'); + + $person->foto=''; + if(!$person->save()) + die('Fehler beim Speichern:'.$person->errormsg); + + $akte = new akte(); + if($akte->getAkten($person_id, 'Lichtbil')) + { + foreach ($akte->result as $row) + { + $hlp = new akte(); + if(!$hlp->delete($row->akte_id)) + echo 'Fehler beim Löschen des Bildes: '.$hlp->errormsg; + } + } + else + { + die('Fehler beim Laden der Akten:'.$akte->errormsg); + } + + $msg = '

Bild wurde erfolgreich entfernt

'; +} if(isset($_POST['savebenutzer'])) { + if(!$rechte->isBerechtigt('student/stammdaten', null, 'su') && !$rechte->isBerechtigt('mitarbeiter/stammdaten', null, 'su')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + $benutzer = new benutzer(); $benutzer->load($uid); @@ -208,6 +254,9 @@ if(isset($_POST['savebenutzer'])) if(isset($_POST['savemitarbeiter'])) { + if(!$rechte->isBerechtigt('mitarbeiter/stammdaten', null, 'su')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + $mitarbeiter = new mitarbeiter(); if(!$mitarbeiter->load($uid)) die('Mitarbeiter konnte nicht geladen werden'); @@ -241,7 +290,14 @@ if(isset($_POST['savestudent'])) $student = new student(); if(!$student->load($uid)) die('Student konnte nicht geladen werden'); + + $studiengang = new studiengang(); + if(!$studiengang->load($student->studiengang_kz)) + die('Fehler beim Laden des Studienganges'); + if(!$rechte->isBerechtigt('student/stammdaten', $studiengang->oe_kurzbz, 'su')) + die('Sie haben keine Berechtigung fuer diese Aktion'); + $student->matrikelnr = $matrikelnummer; $student->semester = $semester; $student->verband = $verband; @@ -413,6 +469,8 @@ echo " Bild hochladen

Bild aktualisieren +

+ Bild entfernen