diff --git a/include/tw/vilesci_menu_main.inc.php b/include/tw/vilesci_menu_main.inc.php index ca30dd336..d62eb22e6 100644 --- a/include/tw/vilesci_menu_main.inc.php +++ b/include/tw/vilesci_menu_main.inc.php @@ -48,21 +48,21 @@ $menu=array 'Incoming loeschen'=>array('name'=>'Incoming löschen', 'link'=>'lehre/incoming_delete.php', 'target'=>'main'), ), 'Raummitteilung'=>array('name'=>'Raummitteilung', 'link'=>'lehre/raummitteilung.php', 'target'=>'main'), - + 'Mitarbeiter'=>array ( 'name'=>'Mitarbeiter','permissions'=>array('admin','lv-plan','support'), - 'Übersicht'=>array('name'=>'Zeitwünsche', 'link'=>'personen/lektor_uebersicht.php', 'target'=>'main'), - 'Zeitsperren'=>array('name'=>'Zeitsperren', 'link'=>'personen/urlaubsverwaltung.php', 'target'=>'main'), + 'Ü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')), ), - + 'Vorrueckung'=> array ( - 'name'=>'Vorrueckung', 'permissions'=>array('admin','lv-plan','support'), - 'Lehreinheiten'=>array('name'=>'Lehreinheiten', 'link'=>'lehre/lehreinheiten_vorrueckung.php', 'target'=>'main'), - 'Studenten'=>array('name'=>'Studenten', 'link'=>'personen/student_vorrueckung.php', 'target'=>'main') + 'name'=>'Vorrueckung', 'permissions'=>array('lehre/vorrueckung','student/vorrueckung'), + 'Lehreinheiten'=>array('name'=>'Lehreinheiten', 'link'=>'lehre/lehreinheiten_vorrueckung.php', 'target'=>'main', 'permissions'=>array('lehre/vorrueckung'),), + 'Studenten'=>array('name'=>'Studenten', 'link'=>'personen/student_vorrueckung.php', 'target'=>'main','permissions'=>array('student/vorrueckung'),) ), - + ), 'Lehre'=> array ( @@ -71,10 +71,10 @@ $menu=array 'Gruppenverwaltung'=>array('name'=>'Gruppen', 'permissions'=>array('admin','lv-plan','support'), 'link'=>'stammdaten/lvbgruppenverwaltung.php', 'target'=>'main'), 'Lehrveranstaltung'=>array('name'=>'Lehrveranstaltung', 'link'=>'lehre/lehrveranstaltung_frameset.html', 'target'=>'main'), 'Studienordnung'=>array('name'=>'Studienordnung', 'link'=>'lehre/studienordnung.php', 'target'=>'_blank','permissions'=>array('lehre/studienordnung')), - + 'Moodle'=>array ( - 'name'=>'Moodle', 'permissions'=>array('admin','lv-plan','support','basis/moodle'), + 'name'=>'Moodle', 'permissions'=>array('basis/moodle'), 'Account'=>array('name'=>'Accountverwaltung', 'link'=>'moodle/account_verwaltung24.php', 'target'=>'main'), 'Kursverwaltung'=>array('name'=>'Kurs entfernen', 'link'=>'moodle/kurs_verwaltung24.php', 'target'=>'main'), 'Rollenzuteilung'=>array('name'=>'Rollenzuteilung', 'link'=>'moodle/rollenzuteilung24.php', 'target'=>'main'), @@ -106,13 +106,13 @@ $menu=array 'name'=>'Personen', 'opener'=>'true', 'hide'=>'true', 'image'=>'vilesci_personen.png', 'permissions'=>array('admin','lv-plan','support','mitarbeiter','basis/person'), 'link'=>'left.php?categorie=Personen', 'target'=>'nav', 'Suche'=>array('name'=>'Suche', 'link'=>'personen/suche.php', 'target'=>'main','permissions'=>array('admin','lv-plan','support','basis/person')), - 'Zusammenlegen'=>array('name'=>'Zusammenlegen', 'link'=>'stammdaten/personen_wartung.php', 'target'=>'main', 'permissions'=>array('admin','lv-plan','support')), + 'Zusammenlegen'=>array('name'=>'Zusammenlegen', 'link'=>'stammdaten/personen_wartung.php', 'target'=>'main', 'permissions'=>array('basis/person')), 'Wiederholer'=>array('name'=>'Stg-Wiederholer', 'link'=>'personen/wiederholer.php', 'target'=>'main', 'permissions'=>array('basis/person')), 'Gruppen'=>array ( - 'name'=>'Gruppen', 'permissions'=>array('admin','lv-plan','support'), - 'Übersicht'=>array('name'=>'Übersicht', 'link'=>'lehre/einheit_menu.php', 'target'=>'main'), - 'Neu'=>array('name'=>'Neu', 'link'=>'lehre/einheit_menu.php?newFrm=true', 'target'=>'main') + 'name'=>'Gruppen', 'permissions'=>array('lehre/gruppe'), + 'Übersicht'=>array('name'=>'Übersicht', 'link'=>'lehre/einheit_menu.php', 'target'=>'main','permissions'=>array('lehre/gruppe')), + 'Neu'=>array('name'=>'Neu', 'link'=>'lehre/einheit_menu.php?newFrm=true', 'target'=>'main','permissions'=>array('lehre/gruppe')) ), 'Benutzer'=>array ( @@ -126,12 +126,12 @@ $menu=array ( 'name'=>'Mitarbeiter','permissions'=>array('admin','mitarbeiter','support'), 'Übersicht'=>array('name'=>'Übersicht', 'link'=>'personen/lektor_uebersicht.php', 'target'=>'main'), - 'Zeitsperren'=>array('name'=>'Zeitsperren', 'link'=>'personen/urlaubsverwaltung.php', 'target'=>'main'), - 'Resturlaub'=>array('name'=>'Urlaub', 'link'=>'personen/resturlaub_frameset.html', 'target'=>'main') + 'Zeitsperren'=>array('name'=>'Zeitsperren', 'link'=>'personen/urlaubsverwaltung.php', 'target'=>'main','permissions'=>array('mitarbeiter/zeitsperre')), + 'Resturlaub'=>array('name'=>'Urlaub', 'link'=>'personen/resturlaub_frameset.html', 'target'=>'main','permissions'=>array('mitarbeiter/zeitsperre')) ), - 'Betriebsmittel'=>array('name'=>'Betriebsmittel', 'link'=>'stammdaten/betriebsmittel_frameset.php', 'target'=>'main','permissions'=>array('admin','lv-plan','support','basis/betriebsmittel')), - 'AnwesenheitslistenBarcode'=>array('name'=>'Anwesenheitslisten mit Barcodes', 'link'=>'personen/anwesenheitslisten_barcode.php', 'target'=>'main','permissions'=>array('admin','lv-plan','support','preinteressent')), - 'Preinteressenten'=>array('name'=>'Preinteressenten', 'link'=>'personen/preinteressent_frameset.html', 'target'=>'_blank','permissions'=>array('admin','lv-plan','support','preinteressent')), + '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')), + 'Preinteressenten'=>array('name'=>'Preinteressenten', 'link'=>'personen/preinteressent_frameset.html', 'target'=>'_blank','permissions'=>array('admin','preinteressent')), 'Incoming'=>array('name'=>'Incoming', 'link'=>'personen/incoming_frameset.php', 'target'=>'_blank','permissions'=>array('inout/incoming')), 'Outgoing'=>array('name'=>'Outgoing', 'link'=>'personen/outgoing_frameset.php', 'target'=>'_blank','permissions'=>array('inout/outgoing')) ), @@ -141,7 +141,7 @@ $menu=array 'link'=>'left.php?categorie=Stammdaten', 'target'=>'nav', 'Betriebsmittel'=>array('name'=>'Betriebsmittel', 'link'=>'stammdaten/betriebsmittel_frameset.php', 'target'=>'main','permissions'=>array('basis/betriebsmittel')), 'Reihungstest'=>array('name'=>'Reihungstest', 'link'=>'stammdaten/reihungstestverwaltung.php', 'target'=>'main','permissions'=>array('admin','assistenz')), - + 'User'=>array ( 'name'=>'User', 'permissions'=>array('basis/variable','basis/berechtigung'), @@ -154,7 +154,7 @@ $menu=array 'name'=>'Personal', 'permissions'=>array('buchung/typen','vertrag/typen'), 'Buchungstypen'=>array('name'=>'Buchungstypen', 'link'=>'stammdaten/buchung_typ.php', 'target'=>'main','permissions'=>array('buchung/typen')), 'Vertragstypen'=>array('name'=>'Vertragstypen', 'link'=>'stammdaten/vertrag_typ.php', 'target'=>'main','permissions'=>array('vertrag/typen')) - ), + ), 'Studiengang'=>array('name'=>'Studiengang', 'link'=>'stammdaten/studiengang_frameset.html', 'target'=>'main','permissions'=>array('basis/studiengang')), 'Ort'=>array('name'=>'Ort (Raum)', 'link'=>'stammdaten/raum_frameset.html', 'target'=>'main','permissions'=>array('basis/ort')), 'Firmen'=>array('name'=>'Firmen', 'link'=>'stammdaten/firma_frameset.html', 'target'=>'main','permissions'=>array('basis/firma')), @@ -180,20 +180,19 @@ $menu=array ), 'Wartung'=> array ( - 'name'=>'Wartung', 'opener'=>'true', 'hide'=>'true', 'image'=>'vilesci_wartung.png', 'link'=>'left.php?categorie=Wartung', 'target'=>'nav', + 'name'=>'Wartung', 'opener'=>'true', 'hide'=>'true', 'image'=>'vilesci_wartung.png', 'link'=>'left.php?categorie=Wartung', 'target'=>'nav', - 'DokumenteZuteilung'=>array('name'=>'Dokumente Zuteilung', 'link'=>'stammdaten/studiengang_dokumente.php', 'target'=>'main', 'permissions'=>array('basis/studiengang')), + 'DokumenteZuteilung'=>array('name'=>'Dokumente Zuteilung', 'link'=>'stammdaten/studiengang_dokumente.php', 'target'=>'main', 'permissions'=>array('basis/studiengang')), 'Vorrueckung'=> array ( - 'name'=>'Vorrueckung', 'permissions'=>array('admin','lv-plan','support'), - 'Lehreinheiten'=>array('name'=>'Lehreinheiten', 'link'=>'lehre/lehreinheiten_vorrueckung.php', 'target'=>'main'), - 'Studenten'=>array('name'=>'Studenten', 'link'=>'personen/student_vorrueckung.php', 'target'=>'main') + 'name'=>'Vorrueckung', 'permissions'=>array('lehre/vorrueckung','student/vorrueckung'), + 'Lehreinheiten'=>array('name'=>'Lehreinheiten', 'link'=>'lehre/lehreinheiten_vorrueckung.php', 'target'=>'main','permissions'=>array('lehre/vorrueckung'),), + 'Studenten'=>array('name'=>'Studenten', 'link'=>'personen/student_vorrueckung.php', 'target'=>'main','permissions'=>array('student/vorrueckung'),) ), - 'LVWartung'=>array('name'=>'LVwartung', 'link'=>'stammdaten/lv_wartung.php', 'target'=>'main'), - 'Kreuzerllistekopieren'=>array('name'=>'Kreuzerllisten kopieren', 'link'=>CIS_ROOT.'cis/private/lehre/benotungstool/copy_uebung.php', 'target'=>'_blank'), - 'Firmenwartung'=>array('name'=>'Firmenwartung', 'link'=>'stammdaten/firma_zusammen_uebersicht.php', 'target'=>'main'), + 'Kreuzerllistekopieren'=>array('name'=>'Kreuzerllisten kopieren', 'link'=>CIS_ROOT.'cis/private/lehre/benotungstool/copy_uebung.php', 'target'=>'_blank','permissions'=>array('admin')), + 'Firmenwartung'=>array('name'=>'Firmenwartung', 'link'=>'stammdaten/firma_zusammen_uebersicht.php', 'target'=>'main','permissions'=>array('basis/firma')), 'checkStudenten'=>array('name'=>'CheckStudenten', 'link'=>'../system/checkStudenten.php', 'target'=>'main'), - 'StudienplanZuteilung'=>array('name'=>'Studienplan Zuteilung', 'link'=>'lehre/studienplan_zuteilung.php', 'target'=>'main'), + 'StudienplanZuteilung'=>array('name'=>'Studienplan Zuteilung', 'link'=>'lehre/studienplan_zuteilung.php', 'target'=>'main','permissions'=>array('assistenz')), ), 'Auswertung'=> array ( @@ -212,17 +211,17 @@ $menu=array 'link'=>'left.php?categorie=Inventar', 'target'=>'nav', 'Inventar'=> array ( - 'name'=>'Inventar', 'permissions'=>array('admin','wawi','support','wawi/inventar'), + 'name'=>'Inventar', 'permissions'=>array('admin','wawi','support','wawi/inventar'), 'Neu'=>array('name'=>'Neu', 'link'=>'inventar/inventar_pflege.php?vorlage=false', 'target'=>'main'), 'Suche'=>array('name'=>'Suche', 'link'=>'inventar/inventar.php', 'target'=>'main'), 'AfA'=>array('name'=>'AfA', 'link'=>'inventar/inventar_afa.php', 'target'=>'main'), 'Inventur'=>array('name'=>'Inventur', 'link'=>'inventar/inventar_inventur.php', 'target'=>'main'), 'Etiketten'=>array('name'=>'Etiketten', 'link'=>'inventar/etiketten.php', 'target'=>'main'), ) - ), + ), 'Admin'=> array ( - 'name'=>'Admin', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support'), 'image'=>'vilesci_admin.png', + 'name'=>'Admin', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('basis/cronjob'), 'image'=>'vilesci_admin.png', 'link'=>'left.php?categorie=Admin', 'target'=>'nav', 'Cronjobs'=>array('name'=>'Cronjobs', 'link'=>'stammdaten/cronjobverwaltung.php', 'target'=>'main','permissions'=>array('basis/cronjob')), ), @@ -231,7 +230,7 @@ $menu=array 'name'=>'SD-Tools', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('sdTools'), 'image'=>'vilesci_sdtools.png', 'link'=>'https://sdtools.technikum-wien.at', 'target'=>'_blank', ) - + ); require_once(dirname(__FILE__).'/../statistik.class.php'); @@ -253,7 +252,7 @@ if($addon_obj->loadAddons()) ); foreach($addon_obj->result as $row) - { + { $menu['Addons'][$row->kurzbz]=array('name'=>$row->addon_name, 'link'=>'../addons/'.$row->kurzbz.'/vilesci/index.php', 'target'=>'main'); } } diff --git a/vilesci/personen/anwesenheitslisten_barcode.php b/vilesci/personen/anwesenheitslisten_barcode.php index 34eb0d5b6..0d51ce051 100644 --- a/vilesci/personen/anwesenheitslisten_barcode.php +++ b/vilesci/personen/anwesenheitslisten_barcode.php @@ -17,13 +17,19 @@ * * Authors: Nikolaus Krondraf */ - require_once('../../config/vilesci.config.inc.php'); require_once('../../include/functions.inc.php'); require_once('../../include/studiengang.class.php'); require_once('../../include/stunde.class.php'); require_once('../../include/standort.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); +$uid = get_uid(); +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($uid); +if(!$rechte->isBerechtigt('basis/person')) + die($rechte->errormsg); + $studiengang = new studiengang; $studiengang->getAll("typ, kurzbz"); $standort = new standort; @@ -38,25 +44,25 @@ $standort->getAllStandorteWithOrt(); - - + + @@ -111,7 +117,7 @@ $standort->getAllStandorteWithOrt(); - + @@ -170,7 +176,7 @@ $standort->getAllStandorteWithOrt(); diff --git a/vilesci/personen/funktion_det.php b/vilesci/personen/funktion_det.php index 11eba248b..d1c66d186 100644 --- a/vilesci/personen/funktion_det.php +++ b/vilesci/personen/funktion_det.php @@ -21,7 +21,7 @@ * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > */ - + /******************************************************************************* File: funktion_det.php Descr: Hier werden Personen aufgelistet, die zur in funktion.php ausgewählten @@ -35,6 +35,7 @@ require_once('../../include/person.class.php'); require_once('../../include/funktion.class.php'); require_once('../../include/benutzerfunktion.class.php'); require_once('../../include/fachbereich.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); if (!$db = new basis_db()) die('Es konnte keine Verbindung zum Server aufgebaut werden.'); @@ -42,51 +43,58 @@ if (!$db = new basis_db()) // Datenbankverbindung herstellen $user=get_uid(); + +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); + +if(!$rechte->isBerechtigt('mitarbeiter',null,'suid')) + die($rechte->errormsg); + $type=''; if (isset($_POST['type'])) $type=$_POST['type']; if (isset($_GET['type'])) $type=$_GET['type']; - + if(isset($_GET['kurzbz'])) $funktion_kurzbz=$_GET['kurzbz']; if(isset($_GET['datumvon'])) $datumvon=$_GET['datumvon']; -else +else $datumvon=''; if(isset($_GET['datumbis'])) $datumbis=$_GET['datumbis']; -else +else $datumbis=''; // Neue Funktionszuweisung speichern if ($type=='new' || $type=='editsave') { //Einfügen in die Datenbank - + $funktion=new benutzerfunktion(); $funktion->uid=$_POST['uid']; $funktion->funktion_kurzbz=$_POST['kurzbz']; if (isset($_POST['oe_kurzbz']) && $_POST['oe_kurzbz']!=-1) { $funktion->oe_kurzbz=$_POST['oe_kurzbz']; - + if (isset($_POST['fb_kurzbz']) && $_POST['fb_kurzbz']!=-1) { $funktion->fachbereich_kurzbz=$_POST['fb_kurzbz']; - } + } else { $funktion->fachbereich_kurzbz=null; } - + $funktion->semester = (isset($_POST['semester'])?$_POST['semester']:''); $funktion->datum_von = $_POST['datumvon']; $funktion->datum_bis = $_POST['datumbis']; - + if($type=='editsave') { $funktion->new=false; @@ -94,21 +102,21 @@ if ($type=='new' || $type=='editsave') $funktion->updateamum=date('Y-m-d H:i:s'); $funktion->updatevon=$user; } - else + else { $funktion->new=true; $funktion->updateamum=date('Y-m-d H:i:s'); $funktion->updatevon=$user; $funktion->insertamum=date('Y-m-d H:i:s'); $funktion->insertvon=$user; - } - + } + if (!$funktion->save()) { echo "Fehler: ".$funktion->errormsg; } } - else + else echo "Studiengang muss angegeben werden"; } @@ -122,7 +130,7 @@ if ($type=='delete') { echo "Benutzer_funktion_id ist keine Zahl"; } - else + else { if (!$funktion->delete($bn_funktion_id)) { @@ -171,23 +179,23 @@ if (!$funktion->load($kurzbz)) if ($type!='edit') { // Personen holen - $qry = "SELECT + $qry = "SELECT tbl_organisationseinheit.bezeichnung as oebezeichnung, - tbl_organisationseinheit.organisationseinheittyp_kurzbz as oetyp, - tbl_benutzer.uid as uid, * - FROM - public.tbl_benutzerfunktion, - public.tbl_person, - public.tbl_benutzer, + tbl_organisationseinheit.organisationseinheittyp_kurzbz as oetyp, + tbl_benutzer.uid as uid, * + FROM + public.tbl_benutzerfunktion, + public.tbl_person, + public.tbl_benutzer, public.tbl_organisationseinheit - WHERE + WHERE funktion_kurzbz=".$db->db_add_param($kurzbz)." AND tbl_benutzerfunktion.uid=tbl_benutzer.uid AND tbl_benutzer.person_id=tbl_person.person_id AND tbl_benutzerfunktion.oe_kurzbz=tbl_organisationseinheit.oe_kurzbz"; if($result = $db->db_query($qry)) - { + { echo " @@ -200,10 +208,10 @@ if (!$funktion->load($kurzbz)) "; - $j=0; + $j=0; echo ''; while($row = $db->db_fetch_object($result)) - { + { $j++; echo ""; echo ""; @@ -219,21 +227,21 @@ if (!$funktion->load($kurzbz)) } echo ''; - } + } else { echo "Fehler: ". $db->db_last_error(); } } - + echo ' - +
NameAktion
".$row->nachname.", ".$row->vorname."

'; - + if ($type=='edit') { echo ''; @@ -241,8 +249,8 @@ if (!$funktion->load($kurzbz)) } else echo ''; - - echo ' + + echo ' @@ -261,13 +269,13 @@ if (!$funktion->load($kurzbz)) } echo ''; - + echo ''; - - + + $funktion = new funktion(); $funktion->load($funktion_kurzbz); - + if($funktion->fachbereich) { echo ' @@ -291,10 +299,10 @@ if (!$funktion->load($kurzbz)) '; } - + if($funktion->semester) { echo ' @@ -320,7 +328,7 @@ if (!$funktion->load($kurzbz)) '; } - + echo ''; echo ''; echo '
Organisationseinheit:
Datum Von:
Datum Bis:
'; - + echo ''; - + echo '

'; ?> diff --git a/vilesci/personen/lektor_uebersicht.php b/vilesci/personen/lektor_uebersicht.php index 305f9cee0..0a1f9b1cc 100644 --- a/vilesci/personen/lektor_uebersicht.php +++ b/vilesci/personen/lektor_uebersicht.php @@ -20,30 +20,21 @@ * 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'); -include('../../include/functions.inc.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/benutzerberechtigung.class.php'); + +$user = get_uid(); +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); + +if(!$rechte->isBerechtigt('mitarbeiter')) + die($rechte->errormsg); if (!$db = new basis_db()) die('Es konnte keine Verbindung zum Server aufgebaut werden.'); - -if(isset($_GET['fix']) && isset($_GET['uid'])) -{ - $sql_query = "UPDATE public.tbl_mitarbeiter SET fixangestellt=". ($_GET['fix']=='t'?'false':'true') ." WHERE mitarbeiter_uid='".addslashes($_GET['uid'])."'"; - //echo $sql_query; - if(!($erg=$db->db_query($sql_query))) - die($db->db_last_error()); -} -if(isset($_GET['lek']) && isset($_GET['uid'])) -{ - $sql_query = "UPDATE public.tbl_mitarbeiter SET lektor=". ($_GET['lek']=='t'?'false':'true') ." WHERE mitarbeiter_uid='".addslashes($_GET['uid'])."'"; - //echo $sql_query; - if(!($erg=$db->db_query($sql_query))) - die($db->db_last_error()); - -} ?> @@ -52,43 +43,30 @@ if(isset($_GET['lek']) && isset($_GET['uid'])) -

Mitarbeiter Übersicht


- Bitte Suchbegriff eingeben: - + Bitte Suchbegriff eingeben: + - '; -if(!isset($_GET['searchstr'])) + '; +if(!isset($_GET['searchstr'])) exit; $qry = "SELECT vw_mitarbeiter.*, tbl_standort.kurzbz as standort_kurzbz FROM campus.vw_mitarbeiter LEFT JOIN public.tbl_standort USING(standort_id)"; if(!empty($searchstr)) - $qry.=" where nachname||' '||vorname ~* '".addslashes($searchstr)."' OR vorname||' '||nachname ~* '".addslashes($searchstr)."' OR uid ~* '".addslashes($searchstr)."' "; - if(isset($order)) - $qry .= " ORDER BY $order"; - else - $qry .= " ORDER BY nachname, vorname"; + $qry.=" where nachname||' '||vorname ~* '".$db->db_escape($searchstr)."' OR vorname||' '||nachname ~* '".$db->db_escape($searchstr)."' OR uid ~* '".$db->db_escape($searchstr)."' "; + $qry .= " ORDER BY nachname, vorname"; if($result = $db->db_query($qry)) { @@ -120,13 +98,12 @@ if(!isset($_GET['searchstr'])) echo "".$row->titelpre.""; echo "".$row->vorname.""; echo "".$row->nachname.""; - echo ""; - echo ""; - + echo "".($row->fixangestellt=='t'?'Ja':'Nein').""; + echo "".($row->lektor=='t'?'Ja':'Nein').""; echo "".$row->ort_kurzbz.""; echo "".$row->standort_kurzbz.""; echo "".$row->telefonklappe.""; - + $email=$row->uid.'@'.DOMAIN; echo "$email"; echo "Edit"; @@ -142,11 +119,6 @@ if(!isset($_GET['searchstr'])) } else echo "Fehler beim Laden der Mitarbeiter: ".$db->db_last_error(); - - if(isset($_GET['fix']) || isset($_GET['lek'])) //Zum Anker hüpfen - { - echo ""; - } ?> diff --git a/vilesci/personen/suche.php b/vilesci/personen/suche.php index 38108c24e..6c1ad5b35 100644 --- a/vilesci/personen/suche.php +++ b/vilesci/personen/suche.php @@ -22,7 +22,7 @@ */ require_once('../../config/vilesci.config.inc.php'); -require_once('../../include/basis_db.class.php'); +require_once('../../include/basis_db.class.php'); require_once('../../include/functions.inc.php'); require_once('../../include/studiengang.class.php'); require_once('../../include/person.class.php'); @@ -31,15 +31,22 @@ require_once('../../include/student.class.php'); require_once('../../include/prestudent.class.php'); require_once('../../include/datum.class.php'); require_once('../../include/authentication.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); if (!$db = new basis_db()) die('Es konnte keine Verbindung zum Server aufgebaut werden.'); +$user=get_uid(); +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); +if(!$rechte->isBerechtigt('basis/person') && !$rechte->isBerechtigt('student/stammdaten') && !$rechte->isBerechtigt('mitarbeiter/stammdaten')) + die($rechte->errormsg); + if(isset($_GET['searchstr'])) $searchstr = $_GET['searchstr']; -else +else $searchstr = ''; - + $datum_obj = new datum(); echo ' @@ -52,7 +59,7 @@ echo '

Personensuche

'; - + $stg = new studiengang(); $stg->getAll('typ, kurzbz', false); @@ -61,7 +68,7 @@ foreach ($stg->result as $row) $stg_arr[$row->studiengang_kz]=$row->kuerzel; echo '
- Bitte Suchbegriff eingeben: + Bitte Suchbegriff eingeben:
'; @@ -70,18 +77,18 @@ if($searchstr!='') { $qry = "SELECT person_id FROM public.tbl_person WHERE person_id in( SELECT distinct person_id FROM public.tbl_person LEFT JOIN public.tbl_benutzer USING(person_id) WHERE - nachname ~* '".$db->db_escape($searchstr)."' OR + nachname ~* '".$db->db_escape($searchstr)."' OR vorname ~* '".$db->db_escape($searchstr)."' OR alias ~* '".$db->db_escape($searchstr)."' OR - COALESCE(nachname,'') || ' ' || COALESCE(vorname,'') = '".$db->db_escape($searchstr)."' OR - COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') = '".$db->db_escape($searchstr)."' OR + COALESCE(nachname,'') || ' ' || COALESCE(vorname,'') = '".$db->db_escape($searchstr)."' OR + COALESCE(vorname,'') || ' ' || COALESCE(nachname,'') = '".$db->db_escape($searchstr)."' OR uid ~* '".$db->db_escape($searchstr)."' ) ORDER BY nachname, vorname;"; - + if($result = $db->db_query($qry)) - { + { $auth = new authentication(); - + echo $db->db_num_rows($result).' Person(en) gefunden

'; echo ''; echo ''; @@ -109,7 +116,7 @@ if($searchstr!='') echo ""; echo ""; echo ''; - + while($row = $db->db_fetch_object($result)) { $qry = "SELECT * FROM public.tbl_person WHERE person_id='$row->person_id'"; @@ -136,18 +143,18 @@ if($searchstr!='') echo ""; echo ""; echo ''; - + $content = ''; - $qry = "SELECT + $qry = "SELECT *, tbl_benutzer.updateamum as bnupdateamum, tbl_benutzer.updatevon as bnupdatevon, tbl_mitarbeiter.updateamum as mupdateamum, tbl_mitarbeiter.updatevon as mupdatevon - FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer on(uid=mitarbeiter_uid) + FROM public.tbl_mitarbeiter JOIN public.tbl_benutzer on(uid=mitarbeiter_uid) WHERE person_id=".$db->db_add_param($row->person_id, FHC_INTEGER); if($result_mitarbeiter = $db->db_query($qry)) { if($db->db_num_rows($result_mitarbeiter)>0) { - + while($row_mitarbeiter = $db->db_fetch_object($result_mitarbeiter)) { $content.= ''; @@ -159,8 +166,8 @@ if($searchstr!='') $content.= ""; $content.= ""; $content.= ""; - - $content.= ""; //$content.= ""; //$content.= ""; - + $content.= ""; $content.= ""; $content.= ""; @@ -179,21 +186,21 @@ if($searchstr!='') } } } - + $qry = "SELECT *, tbl_benutzer.updateamum as bnupdateamum, tbl_benutzer.updatevon as bnupdatevon, tbl_student.updateamum as supdateamum, tbl_student.updatevon as supdatevon - FROM public.tbl_student JOIN public.tbl_benutzer ON(student_uid=uid) + FROM public.tbl_student JOIN public.tbl_benutzer ON(student_uid=uid) WHERE person_id=".$db->db_add_param($row->person_id, FHC_INTEGER); if($result_student = $db->db_query($qry)) { if($db->db_num_rows($result_student)) { - + while($row_student = $db->db_fetch_object($result_student)) { $student = new prestudent(); $student->getLastStatus($row_student->prestudent_id); - + $content.= ''; $content.= ''; $content.= ''; @@ -203,7 +210,7 @@ if($searchstr!='') $content.= ""; $content.= ""; $content.= ""; - + $content.= ""; //$content.= ""; //$content.= ""; - + $content.= ""; $content.= ""; $content.= ""; @@ -225,14 +232,14 @@ if($searchstr!='') } } } - + echo $content; } } } echo '
updateAmUmupdateVon
Mitarbeiter$row_mitarbeiter->uid".($row_mitarbeiter->aktiv=='t'?'Ja':'Nein').""; + + $content.= ""; if($auth->UserExternalExists($row_mitarbeiter->uid)) $content.="Ja"; else @@ -168,7 +175,7 @@ if($searchstr!='') $content.= "".($row_mitarbeiter->bnupdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_fromtimestamp($row_mitarbeiter->bnupdateamum)):'')."$row_mitarbeiter->bnupdatevon$row_mitarbeiter->telefonklappe$row_mitarbeiter->ort_kurzbz".($row_mitarbeiter->mupdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_fromtimestamp($row_mitarbeiter->mupdateamum)):'')."
$student->status_kurzbz$row_student->uid".($row_student->aktiv=='t'?'Ja':'Nein').""; if($auth->UserExternalExists($row_student->uid)) $content.="Ja"; @@ -212,7 +219,7 @@ if($searchstr!='') $content.= "".($row_student->bnupdateamum!=''?date('d.m.Y H:i:s', $datum_obj->mktime_fromtimestamp($row_student->bnupdateamum)):'')."$row_student->bnupdatevon
'; } - + } ?> diff --git a/vilesci/personen/zeitwunsch.php b/vilesci/personen/zeitwunsch.php index d67a62f67..4df8063f1 100644 --- a/vilesci/personen/zeitwunsch.php +++ b/vilesci/personen/zeitwunsch.php @@ -26,21 +26,20 @@ * POST statt GET - ist aber Geschmacksache * */ - require_once('../../config/vilesci.config.inc.php'); require_once('../../include/basis_db.class.php'); -include('../../include/functions.inc.php'); -include('../../include/globals.inc.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/globals.inc.php'); require_once('../../include/datum.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); if (!$db = new basis_db()) die('Es konnte keine Verbindung zum Server aufgebaut werden.'); - if (isset($_GET['uid'])) { $uid=$_GET['uid']; -} +} else if (isset($_POST['uid'])) { $uid=$_POST['uid']; @@ -50,6 +49,12 @@ if (!isset($uid)) die( "uid nicht gesetzt"); } $uid_benutzer = get_uid(); + +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($uid_benutzer); +if(!$rechte->isBerechtigt('mitarbeiter')) + die($rechte->errormsg); + $datum_obj = new datum(); $updatevon = 0; @@ -68,20 +73,19 @@ $updatevon = 0; //echo $$var; $gewicht=$_POST[$var]; $stunde=$i+1; - $query="SELECT * FROM campus.tbl_zeitwunsch WHERE mitarbeiter_uid='".addslashes($uid)."' AND stunde='$stunde' AND tag='$t'"; + $query="SELECT * FROM campus.tbl_zeitwunsch WHERE mitarbeiter_uid=".$db->db_add_param($uid)." AND stunde=".$db->db_add_param($stunde, FHC_INTEGER)." AND tag=".$db->db_add_param($t, FHC_INTEGER); if(! $erg_wunsch=$db->db_query($query)) die($db->db_last_error()); $num_rows_wunsch=$db->db_num_rows($erg_wunsch); if ($num_rows_wunsch==0) { - $query="INSERT INTO campus.tbl_zeitwunsch (mitarbeiter_uid, stunde, tag, gewicht, updateamum, updatevon) VALUES ('$uid', '$stunde', '$t', '$gewicht', now(), '$uid_benutzer')"; + $query="INSERT INTO campus.tbl_zeitwunsch (mitarbeiter_uid, stunde, tag, gewicht, updateamum, updatevon) VALUES (".$db->db_add_param($uid).", ".$db->db_add_param($stunde).", ".$db->db_add_param($t).", ".$db->db_add_param($gewicht).", now(), ".$db->db_add_param($uid_benutzer).")"; if(!($erg=$db->db_query($query))) die($db->db_last_error()); } elseif ($num_rows_wunsch==1) { - $query="UPDATE campus.tbl_zeitwunsch SET gewicht=$gewicht, updateamum=now(), updatevon='$uid_benutzer' WHERE mitarbeiter_uid='$uid' AND stunde='$stunde' AND tag='$t'"; - //echo $query; + $query="UPDATE campus.tbl_zeitwunsch SET gewicht=".$db->db_add_param($gewicht).", updateamum=now(), updatevon=".$db->db_add_param($uid_benutzer)." WHERE mitarbeiter_uid=".$db->db_add_param($uid)." AND stunde=".$db->db_add_param($stunde)." AND tag=".$db->db_add_param($t); if(!($erg=$db->db_query($query))) die($db->db_last_error()); } @@ -90,7 +94,7 @@ $updatevon = 0; } } - if(!($erg=$db->db_query("SELECT * FROM campus.tbl_zeitwunsch WHERE mitarbeiter_uid='$uid'"))) + if(!($erg=$db->db_query("SELECT * FROM campus.tbl_zeitwunsch WHERE mitarbeiter_uid=".$db->db_add_param($uid)))) die($db->db_last_error()); $num_rows=$db->db_num_rows($erg); for ($i=0;$i<$num_rows;$i++) @@ -116,7 +120,7 @@ $updatevon = 0; // Personendaten - if(! $result=$db->db_query("SELECT * FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) WHERE uid='$uid'")) + if(! $result=$db->db_query("SELECT * FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) WHERE uid=".$db->db_add_param($uid))) die($db->db_last_error()); if ($db->db_num_rows($result)==1) $person=$db->db_fetch_object($result); @@ -166,7 +170,7 @@ $updatevon = 0; ?>
- Es sollten für jede Stunde die tatsächlich unterrichtet wird, mindestens das 3-fache an positiven Zeitwünschen angegeben werden.
Beispiel: Sie unterrichten 4 Stunden/Woche, dann sollten Sie mindestens 12 Stunden im Raster mit positiven Werten ausfüllen. -

Bei Problemen wenden Sie sich bitte an die Lehrveranstaltungsplanung.

 

diff --git a/vilesci/stammdaten/lv_wartung.php b/vilesci/stammdaten/lv_wartung.php deleted file mode 100644 index 014b4ba3e..000000000 --- a/vilesci/stammdaten/lv_wartung.php +++ /dev/null @@ -1,291 +0,0 @@ - - * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at > - * Rudolf Hangl < rudolf.hangl@technikum-wien.at > - * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > - */ - -// ***************************************** -// * Script zum Zusammenlegen Doppelter LVs -// * Es werden zwei Listen mit LVs angezeigt -// * Links wird die LV markiert mit dem rechts -// * markierten zusammengelegt werden soll. -// * Die linke LV wird danach entfernt. -// ************************************ -//DB Verbindung herstellen - - require_once('../../config/vilesci.config.inc.php'); - require_once('../../include/lehrveranstaltung.class.php'); - require_once('../../include/studiengang.class.php'); - require_once('../../include/functions.inc.php'); - if (!$db = new basis_db()) - die('Es konnte keine Verbindung zum Server aufgebaut werden.'); - - -$msg=''; -$outp=''; -$smax=0; - -$s=new studiengang(); -$s->getAll('erhalter_kz,typ,kurzbzlang',false); -$studiengang=$s->result; -$user = get_uid(); - - -if (isset($_GET['stg_kz']) || isset($_POST['stg_kz'])) - $stg_kz=(isset($_GET['stg_kz'])?$_GET['stg_kz']:$_POST['stg_kz']); -else - $stg_kz=0; -if(!is_numeric($stg_kz)) - $stg_kz=0; - - -if (isset($_GET['semester']) || isset($_POST['semester'])) -{ - $semester=(isset($_GET['semester'])?$_GET['semester']:$_POST['semester']); - if($semester>(isset($_GET['max'])?$_GET['max']:$_POST['max'])) - $semester=(isset($_GET['max'])?$_GET['max']:$_POST['max']); -} -else - $semester=0; -if(!is_numeric($semester)) - $semester=0; - - -if (isset($_GET['order_1']) || isset($_POST['order_1'])) -{ - $order_1=(isset($_GET['order_1'])?$_GET['order_1']:$_POST['order_1']); -} -else -{ - $order_1='lehrveranstaltung_id'; -} -if (isset($_GET['order_2']) || isset($_POST['order_2'])) -{ - $order_2=(isset($_GET['order_2'])?$_GET['order_2']:$_POST['order_2']); -} -else -{ - $order_2='lehrveranstaltung_id'; -} -if (isset($_GET['radio_1']) || isset($_POST['radio_1'])) -{ - $radio_1=(isset($_GET['radio_1'])?$_GET['radio_1']:$_POST['radio_1']); -} -else -{ - $radio_1=-1; -} -if (isset($_GET['radio_2']) || isset($_POST['radio_2'])) -{ - $radio_2=(isset($_GET['radio_2'])?$_GET['radio_2']:$_POST['radio_2']); -} -else -{ - $radio_2=-1; -} - - - -$s=array(); -foreach ($studiengang as $stg) -{ - @$s[$stg->studiengang_kz]->max_sem=$stg->max_semester; - $s[$stg->studiengang_kz]->kurzbz=$stg->kurzbzlang; - $outp.= ''.$stg->kurzbzlang.' ('.strtoupper($stg->typ.$stg->kurzbz).') - '; - -} -$outp.= '
-- '; -for ($i=0;$i<=$s[$stg_kz]->max_sem;$i++) -{ - $outp.= ''.$i.' -- '; -} - -//Initialisierung der Variablen - -function kuerze($string) -{ - if(strlen($string)>40) - { - return substr($string,0,35)."..."; - } - else - { - return $string; - } -} - - - -if(isset($radio_1) && isset($radio_2) && $radio_1>=0 && $radio_2>=0) -{ - if($radio_1==$radio_2) - { - $msg="Die Datensaetze duerfen nicht die gleiche ID haben"; - } - else - { - $sql_query_upd1="BEGIN;"; - $sql_query_upd1.="UPDATE lehre.tbl_lehreinheit SET lehrveranstaltung_id='$radio_2' WHERE lehrveranstaltung_id='$radio_1';"; - $sql_query_upd1.="UPDATE lehre.tbl_zeugnisnote SET lehrveranstaltung_id='$radio_2' WHERE lehrveranstaltung_id='$radio_1';"; - $sql_query_upd1.="UPDATE campus.tbl_benutzerlvstudiensemester SET lehrveranstaltung_id='$radio_2' WHERE lehrveranstaltung_id='$radio_1';"; - $sql_query_upd1.="UPDATE campus.tbl_feedback SET lehrveranstaltung_id='$radio_2' WHERE lehrveranstaltung_id='$radio_1';"; - $sql_query_upd1.="UPDATE campus.tbl_lvgesamtnote SET lehrveranstaltung_id='$radio_2' WHERE lehrveranstaltung_id='$radio_1';"; - //updateamum vergleichen - jüngeres Datum gewinnt - $qry1="SELECT updateamum FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id='$radio_1';"; - $qry2="SELECT updateamum FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id='$radio_1';"; - if($result1=$db->db_query($qry1)) - { - if($result2=$db->db_query($qry2)) - { - if($row1 = $db->db_fetch_object($result1)) - { - if($row2 = $db->db_fetch_object($result2)) - { - if($row2->updateamum>$row1->updateamum) - { - //wenn lvinfo neuer als die bestehende, ersetzt sie diese - $sql_query_upd1.="DELETE FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id='$radio_2';"; - $sql_query_upd1.="UPDATE campus.tbl_lvinfo SET lehrveranstaltung_id='$radio_2' WHERE lehrveranstaltung_id='$radio_1';"; - } - else - { - //wenn lvinfo älter als die bestehende, wird sie gelöscht - $sql_query_upd1.="DELETE FROM campus.tbl_lvinfo WHERE lehrveranstaltung_id='$radio_1';"; - } - } - } - } - } - $sql_query_upd1.="UPDATE campus.tbl_lvinfo SET lehrveranstaltung_id='$radio_2' WHERE lehrveranstaltung_id='$radio_1';"; - $sql_query_upd1.="UPDATE sync.tbl_synclehrveranstaltung SET lva_vilesci='$radio_2' WHERE lva_vilesci='$radio_1';"; - $sql_query_upd1.="DELETE FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id='$radio_1';"; - if($db->db_query($sql_query_upd1)) - { - $msg = "Daten Erfolgreich gespeichert
"; - $db->db_query("COMMIT;"); - $msg .= "
".mb_eregi_replace(';',';
',$sql_query_upd1)."COMMIT"; - } - else - { - $msg = "Die Änderung konnte nicht durchgeführt werden!"; - $db->db_query("ROLLBACK;"); - $msg .= "
".mb_eregi_replace(';',';
',$sql_query_upd1)."ROLLBACK"; - } - - - } -} -if((isset($radio_1) && !isset($radio_2))||(!isset($radio_1) && isset($radio_2)) || ($radio_1<0 || $radio_2<0)) -{ - $msg="Es muß je ein Radio-Button pro Tabelle angeklickt werden"; -} -?> - - - - - - -LV-Zusammenlegung - - - -

Zusammenlegen von Lehrveranstaltungen (kurzbz.' - '.$semester; ?>)

- -max_sem; -//aufruf -?> -
-

-
-"; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo "
Das wird gelöscht:"; - - //Tabelle 1 - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - - $lf = new lehrveranstaltung(); - $lf->getTab($stg_kz,$semester, $order_1); - $i=0; - foreach($lf->lehrveranstaltungen as $l) - { - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - $i++; - } - echo "
IDKurzbzBezeichnungECTSSS 
$l->lehrveranstaltung_id$l->kurzbz".kuerze($l->bezeichnung)."$l->ects$l->semesterstundenlehrveranstaltung_id)?'checked':'').">
"; - echo "
Das bleibt:"; - - //Tabelle 2 - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - - $lf = new lehrveranstaltung(); - $lf->getTab($stg_kz,$semester, $order_2); - $i=0; - foreach($lf->lehrveranstaltungen as $l) - { - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - $i++; - } - echo "
 IDKurzbzBezeichnungECTSSS
lehrveranstaltung_id)?'checked':'').">$l->lehrveranstaltung_id$l->kurzbz".kuerze($l->bezeichnung)."$l->ects$l->semesterstunden
"; - echo "
"; - echo ""; - -?> - - - -