From adcd03f4c084322e5c242bd3d257a442ba377f25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Thu, 1 Oct 2009 06:50:10 +0000 Subject: [PATCH] - Funktionen Stgl und FBL zu Leitung zusammengelegt - Bezeichnung bei Funktionen - Accountinfoblatt auf Englisch --- cis/private/lehre/ects/index.php | 41 +-- cis/private/lehre/ects/preview.php | 30 ++- cis/private/lehre/pinboard.php | 145 +++++------ cis/private/menu.php | 26 +- cis/private/profile/index.php | 14 +- cis/private/profile/zeitsperre.php | 95 +++---- content/fasDBDML.php | 3 +- content/fasoverlay.js.php | 12 +- content/funktionen.js.php | 27 +- content/funktionen.xul.php | 9 + content/statistik/lektorenstatistik.php | 7 +- content/statistik/mitarbeiterstatistik.php | 10 +- include/benutzerfunktion.class.php | 11 +- include/mitarbeiter.class.php | 149 +++++------ include/studiengang.class.php | 39 ++- include/tw/cis_menu_meincis.inc.php | 59 +---- include/tw/vilesci_menu_main.inc.php | 117 +++++---- rdf/benutzerfunktion.rdf.php | 1 + rdf/diplomasupplement.xml.php | 17 +- rdf/lehrauftrag.xml.php | 25 +- rdf/studienerfolg.rdf.php | 18 -- rdf/zertifikat.rdf.php | 28 +- rdf/zeugnis.rdf.php | 68 ++--- system/checksystem.php | 58 ++++- system/mlists/mlists_generate.php | 8 +- system/xsl/accountinfoblatt_0_v2.xsl | 286 +++++++++++++++++++++ vilesci/bis/personalmeldung.php | 2 +- vilesci/personen/institutsliste.php | 13 +- 28 files changed, 828 insertions(+), 490 deletions(-) create mode 100644 system/xsl/accountinfoblatt_0_v2.xsl diff --git a/cis/private/lehre/ects/index.php b/cis/private/lehre/ects/index.php index 597df446c..bf219ba86 100644 --- a/cis/private/lehre/ects/index.php +++ b/cis/private/lehre/ects/index.php @@ -441,7 +441,7 @@ echo "
"; echo ""; - echo ""; + echo ""; $stsem_obj = new studiensemester(); $stsem = $stsem_obj->getaktorNext(); @@ -453,8 +453,8 @@ { while($row=$db->db_fetch_object($result)) { - if(!in_array("$row->vorname $row->nachname",$helparray))//damit ein Name nicht doppelt vorkommt - $helparray[] = "$row->vorname $row->nachname"; + if(!in_array("$row->titelpre $row->vorname $row->nachname $row->titelpost",$helparray))//damit ein Name nicht doppelt vorkommt + $helparray[] = "$row->titelpre $row->vorname $row->nachname $row->titelpost"; } } @@ -463,31 +463,34 @@ echo ""; //FB Leiter auslesen - $qry = "SELECT - distinct vorname, nachname + $qry = " SELECT + distinct titelpre, titelpost, vorname, nachname FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE - funktion_kurzbz='fbl' AND + funktion_kurzbz='Leitung' AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) AND - fachbereich_kurzbz in (SELECT distinct fachbereich_kurzbz - FROM lehre.tbl_lehreinheit, lehre.tbl_lehrfach - WHERE lehrveranstaltung_id='$lv' AND - studiensemester_kurzbz=(SELECT studiensemester_kurzbz - FROM lehre.tbl_lehreinheit JOIN public.tbl_studiensemester USING(studiensemester_kurzbz) - WHERE tbl_lehreinheit.lehrveranstaltung_id='$lv' - ORDER BY ende DESC LIMIT 1 - ) - AND tbl_lehreinheit.lehrfach_id=tbl_lehrfach.lehrfach_id - )"; + oe_kurzbz in (SELECT distinct oe_kurzbz + FROM + lehre.tbl_lehreinheit + JOIN lehre.tbl_lehrfach USING(lehrfach_id) + JOIN public.tbl_fachbereich USING(fachbereich_kurzbz) + WHERE + lehrveranstaltung_id='$lv' AND + studiensemester_kurzbz=(SELECT studiensemester_kurzbz + FROM lehre.tbl_lehreinheit JOIN public.tbl_studiensemester USING(studiensemester_kurzbz) + WHERE tbl_lehreinheit.lehrveranstaltung_id='$lv' + ORDER BY ende DESC LIMIT 1 + ) + )"; echo "'; - echo ''; - for ($ts=$ts_beginn;$ts<$ts_ende; $ts+=$datum_obj->ts_day) + if($ma->aktiv) { - $tag=date('d',$ts); - $monat=date('M',$ts); - $wt=date('w',$ts); - if ($wt==0 || $wt==6) - $class=' class="feiertag" '; - else - $class=''; - $grund=$zs->getTyp($ts); - $erbk=$zs->getErreichbarkeit($ts); - echo ''; + $zs->getzeitsperren($ma->uid, false); + echo ''; + echo ''; + for ($ts=$ts_beginn;$ts<$ts_ende; $ts+=$datum_obj->ts_day) + { + $tag=date('d',$ts); + $monat=date('M',$ts); + $wt=date('w',$ts); + if ($wt==0 || $wt==6) + $class=' class="feiertag" '; + else + $class=''; + $grund=$zs->getTyp($ts); + $erbk=$zs->getErreichbarkeit($ts); + echo ''; + } + echo ''; } - echo ''; } } ?> diff --git a/content/fasDBDML.php b/content/fasDBDML.php index 452a79180..235ce0768 100644 --- a/content/fasDBDML.php +++ b/content/fasDBDML.php @@ -390,6 +390,7 @@ if(!$error) $benutzerfunktion->updatevon = $user; $benutzerfunktion->datum_von = $_POST['datum_von']; $benutzerfunktion->datum_bis = $_POST['datum_bis']; + $benutzerfunktion->bezeichnung = $_POST['bezeichnung']; if($benutzerfunktion->save()) { @@ -399,7 +400,7 @@ if(!$error) else { $return = false; - $errormsg = 'Fehler beim Speichern:'.$benutzerfunktion->errormsg.' "'.$_POST['fachbereich_kurzbz'].' "'; + $errormsg = 'Fehler beim Speichern:'.$benutzerfunktion->errormsg; } } } diff --git a/content/fasoverlay.js.php b/content/fasoverlay.js.php index 3da577e9e..b03dc5ca8 100644 --- a/content/fasoverlay.js.php +++ b/content/fasoverlay.js.php @@ -746,7 +746,11 @@ function StatistikPrintLVPlanung() var uid=tree.view.getCellText(tree.currentIndex,col); var url = 'content/statistik/lvplanung.php?uid='+uid; } - window.open(url,'LV-Planung'); + + if(typeof(url)!='undefined') + window.open(url,'LV-Planung'); + else + alert('Bitte waehlen sie ein(en) Verband, Institut oder Lektor aus'); } // **** @@ -807,7 +811,11 @@ function StatistikPrintLVPlanungExcel() var uid=tree.view.getCellText(tree.currentIndex,col); var url = 'content/statistik/lvplanung.xls.php?uid='+uid+'&studiensemester_kurzbz='+studiensemester; } - window.open(url,'LV-Planung'); + + if(typeof(url)!='undefined') + window.open(url,'LV-Planung'); + else + alert('Bitte waehlen sie ein(en) Verband, Institut oder Lektor aus'); } // **** diff --git a/content/funktionen.js.php b/content/funktionen.js.php index eae96cf66..b86e9edf7 100644 --- a/content/funktionen.js.php +++ b/content/funktionen.js.php @@ -32,6 +32,7 @@ loadVariables($user); var FunktionenTreeDatasource=''; // Datasource des Adressen Trees var FunktionenSelectID=''; var FunktionenUID=null; +var FunktionBezeichnungChanged=false; + "; - //Bachelor + $qry = "SELECT bezeichnung, fachbereich_kurzbz, - (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv) a) as fix, - (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv) a) as extern + (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz=a.oe_kurzbz AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv) a) as fix, + (SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE oe_kurzbz=a.oe_kurzbz AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv) a) as extern FROM public.tbl_fachbereich a WHERE aktiv ORDER BY bezeichnung"; if($result = $db->db_query($qry)) diff --git a/include/benutzerfunktion.class.php b/include/benutzerfunktion.class.php index b689c493e..f5cc3023d 100644 --- a/include/benutzerfunktion.class.php +++ b/include/benutzerfunktion.class.php @@ -45,6 +45,7 @@ class benutzerfunktion extends basis_db public $semester; // smallint public $datum_von; // date public $datum_bis; // date + public $bezeichnung; // varchar(64) /** @@ -90,6 +91,7 @@ class benutzerfunktion extends basis_db $pfunktion_obj->semester = $row->semester; $pfunktion_obj->datum_von = $row->datum_von; $pfunktion_obj->datum_bis = $row->datum_bis; + $pfunktion_obj->bezeichnung = $row->bezeichnung; $this->result[] = $pfunktion_obj; } @@ -147,6 +149,7 @@ class benutzerfunktion extends basis_db $this->semester = $row->semester; $this->datum_von = $row->datum_von; $this->datum_bis = $row->datum_bis; + $this->bezeichnung = $row->bezeichnung; return true; } else @@ -197,6 +200,7 @@ class benutzerfunktion extends basis_db $obj->semester = $row->semester; $obj->datum_von = $row->datum_von; $obj->datum_bis = $row->datum_bis; + $obj->bezeichnung = $row->bezeichnung; $this->result[] = $obj; @@ -245,6 +249,7 @@ class benutzerfunktion extends basis_db $this->semester = $row->semester; $this->datum_von = $row->datum_von; $this->datum_bis = $row->datum_bis; + $this->bezeichnung = $row->bezeichnung; } else { @@ -306,7 +311,7 @@ class benutzerfunktion extends basis_db } } $qry = 'BEGIN;INSERT INTO public.tbl_benutzerfunktion (fachbereich_kurzbz, uid, oe_kurzbz, funktion_kurzbz, insertamum, insertvon, - updateamum, updatevon, semester, datum_von, datum_bis) VALUES ('. + updateamum, updatevon, semester, datum_von, datum_bis, bezeichnung) VALUES ('. $this->addslashes($this->fachbereich_kurzbz).', '. $this->addslashes($this->uid).', '. $this->addslashes($this->oe_kurzbz).', '. @@ -317,7 +322,8 @@ class benutzerfunktion extends basis_db $this->addslashes($this->updatevon).', '. $this->addslashes($this->semester).','. $this->addslashes($this->datum_von).','. - $this->addslashes($this->datum_bis).'); '; + $this->addslashes($this->datum_bis).','. + $this->addslashes($this->bezeichnung).'); '; } else { @@ -342,6 +348,7 @@ class benutzerfunktion extends basis_db 'updatevon='.$this->addslashes($this->updatevon).', '. 'datum_von='.$this->addslashes($this->datum_von).', '. 'datum_bis='.$this->addslashes($this->datum_bis).', '. + 'bezeichnung='.$this->addslashes($this->bezeichnung).', '. 'semester='.$this->addslashes($this->semester).' '. 'WHERE benutzerfunktion_id = '.$this->addslashes($this->benutzerfunktion_id).';'; } diff --git a/include/mitarbeiter.class.php b/include/mitarbeiter.class.php index e7bbcca79..38c4e5954 100644 --- a/include/mitarbeiter.class.php +++ b/include/mitarbeiter.class.php @@ -19,14 +19,9 @@ * Andreas Oesterreicher and * Rudolf Hangl . */ -/* - * Benoetigt: person.class.php - * benutzer.class.php - * functions.inc.php - */ -require_once('person.class.php'); -require_once('benutzer.class.php'); -require_once('functions.inc.php'); +require_once(dirname(__FILE__).'/person.class.php'); +require_once(dirname(__FILE__).'/benutzer.class.php'); +require_once(dirname(__FILE__).'/functions.inc.php'); class mitarbeiter extends benutzer { @@ -50,10 +45,10 @@ class mitarbeiter extends benutzer public $vorgesetzte=array(); public $untergebene=array(); - // ************************************************************************* - // * Konstruktor - laedt optional einen Mitarbeiter - // * @param $uid Mitarbeiter der geladen werden soll (default=null) - // ************************************************************************* + /** + * Konstruktor - laedt optional einen Mitarbeiter + * @param $uid Mitarbeiter der geladen werden soll (default=null) + */ public function __construct($uid=null) { parent::__construct(); @@ -111,10 +106,10 @@ class mitarbeiter extends benutzer } } - // ************************************************ - // * ueberprueft die Variablen auf Gueltigkeit - // * @return true wenn gueltig, false im Fehlerfall - // ************************************************ + /** + * ueberprueft die Variablen auf Gueltigkeit + * @return true wenn gueltig, false im Fehlerfall + */ protected function validate() { //if(mb_strlen($this->uid)>16) @@ -172,10 +167,10 @@ class mitarbeiter extends benutzer } - // ************************************************* - // * Speichert die Mitarbeiterdaten in die Datenbank - // * @return true wenn ok, false im Fehlerfall - // ************************************************* + /** + * Speichert die Mitarbeiterdaten in die Datenbank + * @return true wenn ok, false im Fehlerfall + */ public function save($new=null, $savebenutzer=true) { //Variablen checken @@ -521,11 +516,11 @@ class mitarbeiter extends benutzer return $result; } - // ****************************************** - // * Laedt alle Mitarbeiter einer Lehreinheit - // * @param lehreinheit_id - // * @return true wenn ok, false wenn Fehler - // ****************************************** + /** + * Laedt alle Mitarbeiter einer Lehreinheit + * @param lehreinheit_id + * @return true wenn ok, false wenn Fehler + */ public function getMitarbeiterFromLehreinheit($lehreinheit_id) { if(!is_numeric($lehreinheit_id)) @@ -562,11 +557,11 @@ class mitarbeiter extends benutzer } } - // ************************************************* - // * Laedt alle Mitarbeiter einer Lehrveranstaltung - // * @param lehrveranstaltung_id - // * @return true wenn ok, false wenn Fehler - // ************************************************* + /** + * Laedt alle Mitarbeiter einer Lehrveranstaltung + * @param lehrveranstaltung_id + * @return true wenn ok, false wenn Fehler + */ public function getMitarbeiterFromLehrveranstaltung($lehrveranstaltung_id) { if(!is_numeric($lehrveranstaltung_id)) @@ -624,13 +619,13 @@ class mitarbeiter extends benutzer $qry .= " AND fixangestellt=false"; if($stgl) { - $qry .= " AND funktion_kurzbz='stgl' + $qry .= " AND funktion_kurzbz='Leitung' AND EXISTS(SELECT studiengang_kz FROM public.tbl_studiengang WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz) AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; } if($fbl) { - $qry .= " AND funktion_kurzbz='fbl' + $qry .= " AND funktion_kurzbz='Leitung' AND EXISTS(SELECT fachbereich_kurzbz FROM public.tbl_fachbereich WHERE oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz) AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; } @@ -706,9 +701,9 @@ class mitarbeiter extends benutzer } } - // **** - // * Prueft ob die Kurzbz bereits existiert - // **** + /** + * Prueft ob die Kurzbz bereits existiert + */ public function kurzbz_exists($kurzbz) { $qry = "SELECT * FROM public.tbl_mitarbeiter WHERE kurzbz='".addslashes($kurzbz)."'"; @@ -735,10 +730,10 @@ class mitarbeiter extends benutzer } - // ************************************* - // * Laedt die Mitarbeiter deren - // * Nachname mit $filter beginnt - // ************************************* + /** + * Laedt die Mitarbeiter deren + * Nachname mit $filter beginnt + */ public function getMitarbeiterFilter($filter) { $qry = "SELECT * FROM campus.vw_mitarbeiter WHERE nachname ~* '".addslashes($filter).".*'"; @@ -848,11 +843,11 @@ class mitarbeiter extends benutzer * gibt array mit allen Mitarbeitern zurueck * @return array mit Mitarbeitern */ - public function getMitarbeiterInstitut($institut) + public function getMitarbeiterOrganisationseinheit($oe_kurzbz) { $sql_query="SELECT DISTINCT campus.vw_mitarbeiter.* FROM campus.vw_mitarbeiter JOIN public.tbl_benutzerfunktion USING (uid) - WHERE funktion_kurzbz='oezuordnung' AND fachbereich_kurzbz='".addslashes($institut)."' + WHERE funktion_kurzbz='oezuordnung' AND oe_kurzbz='".addslashes($oe_kurzbz)."' AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) ORDER BY nachname, vorname"; @@ -902,7 +897,7 @@ class mitarbeiter extends benutzer } /** - * gibt UID des Vorgesetzten zurueck + * Gibt ein Array mit den UIDs der Vorgesetzten zurück * @return uid */ public function getVorgesetzte($uid=null) @@ -910,25 +905,24 @@ class mitarbeiter extends benutzer $return=false; if (is_null($uid)) $uid=$this->uid; - // Suche in Instituten - $qry = "SELECT CASE WHEN fachbereich_kurzbz is not null THEN (SELECT uid FROM public.tbl_benutzerfunktion - WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND - funktion_kurzbz='fbl' AND - (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND - (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) - LIMIT 1) - WHEN oe_kurzbz is not null THEN (SELECT uid FROM public.tbl_benutzerfunktion - WHERE oe_kurzbz=a.oe_kurzbz AND - funktion_kurzbz='stgl' AND - (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND - (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) - LIMIT 1) - ELSE '' - END as vorgesetzter - FROM public.tbl_benutzerfunktion a WHERE - funktion_kurzbz='oezuordnung' AND uid='".addslashes($uid)."' AND - (a.datum_von is null OR a.datum_von<=now()) AND - (a.datum_bis is null OR a.datum_bis>=now())"; + + $qry = "SELECT + uid as vorgesetzter + FROM + public.tbl_benutzerfunktion + WHERE + funktion_kurzbz='Leitung' AND + (datum_von is null OR datum_von<=now()) AND + (datum_bis is null OR datum_bis>=now()) AND + oe_kurzbz in (SELECT oe_kurzbz + FROM public.tbl_benutzerfunktion + WHERE + funktion_kurzbz='oezuordnung' AND uid='".addslashes($uid)."' AND + (datum_von is null OR datum_von<=now()) AND + (datum_bis is null OR datum_bis>=now()) + );"; + + if($this->db_query($qry)) { while($row = $this->db_fetch_object()) @@ -949,48 +943,34 @@ class mitarbeiter extends benutzer return $return; } - // ************************ - // * gibt die UIDs der Untergebenen zurueck - // ************************ + /** + * Gibt ein Array mit den UIDs der Untergebenen zurueck + */ public function getUntergebene($uid=null) { if (is_null($uid)) $uid=$this->uid; - //Alle Studiengaenge und Fachbereiche holen bei denen die Person die Leitung hat + // Organisationseinheiten holen von denen die Person die Leitung hat $qry = "SELECT * FROM public.tbl_benutzerfunktion - WHERE (funktion_kurzbz='fbl' OR funktion_kurzbz='stgl') AND uid='".addslashes($uid)."' AND + WHERE funktion_kurzbz='Leitung' AND uid='".addslashes($uid)."' AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; if($this->db_query($qry)) { - $institut=''; $oe=''; while($row = $this->db_fetch_object()) { - if($row->funktion_kurzbz=='fbl') - { - if($institut!='') - $institut.=','; - - $institut.="'".addslashes($row->fachbereich_kurzbz)."'"; - } - elseif($row->funktion_kurzbz=='stgl') - { - if($oe!='') - $oe.=','; - $oe.="'".$row->oe_kurzbz."'"; - } - + if($oe!='') + $oe.=','; + $oe.="'".addslashes($row->oe_kurzbz)."'"; } } - //Alle Personen holen die diesen Studiengaengen/Fachbereichen untergeordnet sind + //Alle Personen holen die dieser Organisationseinheit untergeordnet sind $qry = "SELECT distinct uid FROM public.tbl_benutzerfunktion WHERE (funktion_kurzbz='oezuordnung' AND (false "; - if($institut!='') - $qry.=" OR fachbereich_kurzbz in($institut)"; if($oe!='') $qry.=" OR oe_kurzbz in($oe)"; @@ -1001,6 +981,7 @@ class mitarbeiter extends benutzer $qry.= " AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; + if($this->db_query($qry)) { while($row = $this->db_fetch_object()) diff --git a/include/studiengang.class.php b/include/studiengang.class.php index dbc52b174..3f8e17970 100644 --- a/include/studiengang.class.php +++ b/include/studiengang.class.php @@ -348,6 +348,43 @@ class studiengang extends basis_db } } - + + /** + * Liefert die UIDs der Studiengangsleiter + * + * @param $studiengang_kz wenn gesetzt werden die Leiter dieses Studienganges geliefert + * wenn null werden alle Stgl zurueckgeliefert + */ + public function getLeitung($studiengang_kz=null) + { + $stgl = array(); + + $qry = "SELECT + uid + FROM + public.tbl_benutzerfunktion + JOIN public.tbl_studiengang USING(oe_kurzbz) + WHERE + funktion_kurzbz='Leitung' AND + (datum_von is null OR datum_von<=now()) AND + (datum_bis is null OR datum_bis>=now())"; + + if(!is_null($studiengang_kz)) + $qry.=" AND studiengang_kz='".addslashes($studiengang_kz)."'"; + + if($result = $this->db_query($qry)) + { + while($row = $this->db_fetch_object($result)) + { + $stgl[] = $row->uid; + } + return $stgl; + } + else + { + $this->errormsg = 'Fehler beim Laden der Studiengangsleiter'; + return false; + } + } } ?> \ No newline at end of file diff --git a/include/tw/cis_menu_meincis.inc.php b/include/tw/cis_menu_meincis.inc.php index 9329c2d49..6a62905e0 100644 --- a/include/tw/cis_menu_meincis.inc.php +++ b/include/tw/cis_menu_meincis.inc.php @@ -234,11 +234,11 @@ isBerechtigt('admin',0) || $rechte->isBerechtigt('mitarbeiter')) echo '
  • Resturlaub
  • '; - if ($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('mitarbeiter') || $fkt->checkFunktion('stglstv')|| $fkt->checkFunktion('stgl') || $fkt->checkFunktion('ass')) + if ($rechte->isBerechtigt('admin',0) || $rechte->isBerechtigt('mitarbeiter') || $fkt->checkFunktion('stglstv')|| $fkt->checkFunktion('Leitung') || $fkt->checkFunktion('ass')) { echo '
  • Fix-Angestellte
  • '; echo '
  • Fixe Lektoren
  • '; - echo '
  • Institut
  • '; + echo '
  • Organisationseinheiten
  • '; } $stge=$rechte->getStgKz('admin'); foreach($stg_obj->result as $row) @@ -255,53 +255,18 @@ db_query($qry)) + $mitarbeiter = new mitarbeiter(); + $mitarbeiter->getUntergebene($user); + $untergebene = ''; + + foreach ($mitarbeiter->untergebene as $u_uid) { - $institut=''; - $stge=''; - while($row = $db->db_fetch_object($result)) - { - if($row->funktion_kurzbz=='fbl') - { - if($institut!='') - $institut.=','; - - $institut.="'".addslashes($row->fachbereich_kurzbz)."'"; - } - elseif($row->funktion_kurzbz=='stgl') - { - if($oe!='') - $oe.=','; - $oe.="'".$row->oe_kurzbz."'"; - } - - } + if($untergebene!='') + $untergebene.=','; + + $untergebene.="'".addslashes($u_uid)."'"; } - - $qry = "SELECT distinct uid FROM public.tbl_benutzerfunktion WHERE funktion_kurzbz='oezuordnung' AND (false "; - - if($institut!='') - $qry.=" OR fachbereich_kurzbz in($institut)"; - if($oe!='') - $qry.=" OR oe_kurzbz in($oe)"; - - $qry.=")"; - - $untergebene=''; - if($result = $db->db_query($qry)) - { - - - while($row = $db->db_fetch_object($result)) - { - if($untergebene!='') - $untergebene.=','; - $untergebene.="'".addslashes($row->uid)."'"; - } - } - + if($untergebene!='') { $qry = "SELECT * FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) WHERE uid in($untergebene) ORDER BY nachname, vorname"; diff --git a/include/tw/vilesci_menu_main.inc.php b/include/tw/vilesci_menu_main.inc.php index 50c02eb3e..617683f54 100644 --- a/include/tw/vilesci_menu_main.inc.php +++ b/include/tw/vilesci_menu_main.inc.php @@ -28,38 +28,22 @@ $menu=array //'Admin'=> array('name'=>'Admin', 'link'=>'admin/menu.html', 'target'=>'main'), 'Lehre'=> array ( - 'name'=>'Lehre', 'opener'=>'true', 'hide'=>'false', 'permissions'=>array('admin','lv-plan','support', 'lehre'), - 'Gruppenverwaltung'=>array('name'=>'Gruppenverwaltung', 'permissions'=>array('admin','lv-plan','support'), 'link'=>'stammdaten/lvbgruppenverwaltung.php', 'target'=>'main'), - + 'name'=>'Lehre', 'opener'=>'true', 'hide'=>'false', 'permissions'=>array('admin','lv-plan','support', 'lehre'), 'image'=>'x-office-presentation.png', + 'link'=>'left.php?categorie=Lehre', 'target'=>'nav', + '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'), + 'Lehrfach'=>array('name'=>'Lehrfach', 'link'=>'lehre/lehrfach.php', 'target'=>'main'), + 'Moodle'=>array ( 'name'=>'Moodle', 'permissions'=>array('admin','lv-plan','support'), - 'Kursverwaltung'=>array('name'=>'Kursentfernen', 'link'=>'moodle/kurs_verwaltung.php', 'target'=>'main'), + 'Kursverwaltung'=>array('name'=>'Kurs entfernen', 'link'=>'moodle/kurs_verwaltung.php', 'target'=>'main'), 'Account'=>array('name'=>'Account', 'link'=>'moodle/account_verwaltung.php', 'target'=>'main'), 'Zuteilung Verwalten'=>array('name'=>'Zuteilung Verwalten', 'link'=>'moodle/zuteilung_verwaltung.php', 'target'=>'main') ), + + - 'Lehrveranstaltung'=>array - ( - 'name'=>'Lehrveranstaltung', 'permissions'=>array('admin','lv-plan','support'), - 'Verwaltung'=>array('name'=>'Verwaltung', 'link'=>'lehre/lehrveranstaltung_frameset.html', 'target'=>'main'), - 'Wartung'=>array('name'=>'Wartung', 'link'=>'stammdaten/lv_wartung.php', 'target'=>'main') - ), - 'Lehrfach'=>array - ( - 'name'=>'Lehrfach', 'permissions'=>array('admin','lv-plan','support'), - 'Verwaltung'=>array('name'=>'Verwaltung', 'link'=>'lehre/lehrfach.php', 'target'=>'main'), - 'Wartung'=>array('name'=>'Wartung', 'link'=>'lehre/lehrfach/wartung.php', 'target'=>'main'), - 'Lehrfachpflege'=>array('name'=>'Lehrfachpflege', 'link'=>'lehre/lehrfach/lehrfachpflege.php', 'target'=>'main') - ), - 'Lehreinheit'=>array - ( - 'name'=>'Lehreinheit', 'permissions'=>array('admin','lv-plan','support'), - 'Verwaltung'=>array('name'=>'Verwaltung', 'link'=>'lehre/lv_verteilung/lv_verteilung.php', 'target'=>'main'), - 'Wartung'=>array('name'=>'Wartung', 'link'=>'stammdaten/le_wartung.php', 'target'=>'main'), - 'Vorrueckung'=>array('name'=>'Vorrueckung', 'link'=>'lehre/lehreinheiten_vorrueckung.php', 'target'=>'main'), - 'Kreuzerllisten kopieren'=>array('name'=>'Kreuzerllisten kopieren', 'link'=>'https://cis.technikum-wien.at/cis/private/lehre/benotungstool/copy_uebung.php', 'target'=>'_blank') - ), 'Freifach'=>array ( 'name'=>'Freifach', 'permissions'=>array('admin','lv-plan','support', 'lehre'), @@ -86,7 +70,8 @@ $menu=array ), 'Personen'=> array ( - 'name'=>'Personen', 'opener'=>'true', 'hide'=>'true', + 'name'=>'Personen', 'opener'=>'true', 'hide'=>'true', 'image'=>'system-users.png', + 'link'=>'left.php?categorie=Personen', 'target'=>'nav', 'Suche'=>array('name'=>'Suche', 'link'=>'personen/suche.php', 'target'=>'main','permissions'=>array('admin','lv-plan','support')), 'Zusammenlegen'=>array('name'=>'Zusammenlegen', 'link'=>'stammdaten/personen_wartung.php', 'target'=>'main', 'permissions'=>array('admin','lv-plan','support')), 'Gruppen'=>array @@ -98,7 +83,6 @@ $menu=array 'Benutzer'=>array ( 'name'=>'Benutzer','permissions'=>array('admin','lv-plan','support'), - 'LDAPCheck'=>array('name'=>'LDAPCheck', 'link'=>'personen/ldap_check.php', 'target'=>'main'), 'Funktionen'=>array('name'=>'Funktionen', 'link'=>'personen/funktion.php', 'target'=>'main') ), 'Mitarbeiter'=>array @@ -109,50 +93,93 @@ $menu=array 'Zeitsperren'=>array('name'=>'Zeitsperren', 'link'=>'personen/urlaubsverwaltung.php', 'target'=>'main'), 'Resturlaub'=>array('name'=>'Urlaub', 'link'=>'personen/resturlaub_frameset.html', 'target'=>'main') ), - 'Studenten'=>array + /*'Studenten'=>array ( 'name'=>'Studenten','permissions'=>array('admin','lv-plan','support'), 'Übersicht'=>array('name'=>'Übersicht', 'link'=>'personen/studenten_uebersicht.php', 'target'=>'main'), - 'Neu'=>array('name'=>'Neu', 'link'=>'personen/student_edit.php?new=1', 'target'=>'main'), - 'Vorrückung'=>array('name'=>'Vorrückung', 'link'=>'personen/student_vorrueckung.php', 'target'=>'main'), - ), + //'Neu'=>array('name'=>'Neu', 'link'=>'personen/student_edit.php?new=1', 'target'=>'main'), + //'Vorrückung'=>array('name'=>'Vorrückung', 'link'=>'personen/student_vorrueckung.php', 'target'=>'main'), + ),*/ 'Betriebsmittel'=>array('name'=>'Betriebsmittel', 'link'=>'stammdaten/betriebsmittel_frameset.html', 'target'=>'main','permissions'=>array('admin','lv-plan','support')), 'Preinteressenten'=>array('name'=>'Preinteressenten', 'link'=>'personen/preinteressent_frameset.html', 'target'=>'_blank','permissions'=>array('admin','lv-plan','support','preinteressent')) ), 'Stammdaten'=> array ( - 'name'=>'Stammdaten', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support'), - 'Berechtigungen'=>array('name'=>'Berechtigungen', 'link'=>'stammdaten/benutzerberechtigung_frameset.html', 'target'=>'main'), - 'Variablen'=>array('name'=>'Variablen', 'link'=>'stammdaten/variablen_frameset.html', 'target'=>'main'), - 'Studiengang'=>array('name'=>'Studiengang', 'link'=>'stammdaten/studiengang_frameset.html', 'target'=>'main'), - 'Ort'=>array('name'=>'Ort (Raum)', 'link'=>'stammdaten/raum_frameset.html', 'target'=>'main'), + 'name'=>'Stammdaten', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support'), 'image'=>'folder.png', + 'link'=>'left.php?categorie=Stammdaten', 'target'=>'nav', + 'Betriebsmittel'=>array('name'=>'Betriebsmittel', 'link'=>'stammdaten/betriebsmittel_frameset.html', 'target'=>'main'), + 'Reihungstest'=>array('name'=>'Reihungstest', 'link'=>'stammdaten/reihungstestverwaltung.php', 'target'=>'main'), + + 'User'=>array + ( + 'name'=>'User', + 'Berechtigungen'=>array('name'=>'Berechtigungen', 'link'=>'stammdaten/benutzerberechtigung_frameset.html', 'target'=>'main'), + 'Variablen'=>array('name'=>'Variablen', 'link'=>'stammdaten/variablen_frameset.html', 'target'=>'main'), + ), 'Kommunikation'=>array ( 'name'=>'Kommunikation', 'Kontakte'=>array('name'=>'Kontakte', 'link'=>'kommunikation/kontakt.php', 'target'=>'main'), 'Mail-Verteiler'=>array('name'=>'Mail-Verteiler', 'link'=>'kommunikation/index.html', 'target'=>'main'), ), - 'Betriebsmittel'=>array('name'=>'Betriebsmittel', 'link'=>'stammdaten/betriebsmittel_frameset.html', 'target'=>'main'), - 'Reihungstest'=>array('name'=>'Reihungstest', 'link'=>'stammdaten/reihungstestverwaltung.php', 'target'=>'main'), + 'Studiengang'=>array('name'=>'Studiengang', 'link'=>'stammdaten/studiengang_frameset.html', 'target'=>'main'), + 'Ort'=>array('name'=>'Ort (Raum)', 'link'=>'stammdaten/raum_frameset.html', 'target'=>'main'), 'Firmen'=>array('name'=>'Firmen', 'link'=>'stammdaten/firma_frameset.html', 'target'=>'main'), - 'Organisationseinheiten'=>array('name'=>'Organisationseinheiten', 'link'=>'stammdaten/organisationseinheiten.php', 'target'=>'main'), 'ImExport'=>array ( 'name'=>'ImExport', 'Zutrittskarten'=>array('name'=>'Zutrittskarten', 'link'=>'stammdaten/imexport/zutrittskarten/index.html', 'target'=>'main') ) ), - 'Vorrueckung'=> array + 'Wartung'=> array ( - 'name'=>'Vorrueckung', 'opener'=>'true', 'hide'=>'true', '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'=>'Wartung', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support'), 'image'=>'edit-clear.png', + 'link'=>'left.php?categorie=Wartung', 'target'=>'nav', + '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') + ), + 'LVWartung'=>array('name'=>'LVwartung', 'link'=>'stammdaten/lv_wartung.php', 'target'=>'main'), + 'LehrfachWartung'=>array('name'=>'Lehrfachwartung', 'link'=>'lehre/lehrfach/wartung.php', 'target'=>'main'), + 'Lehrfachpflege'=>array('name'=>'Lehrfachpflege', 'link'=>'lehre/lehrfach/lehrfachpflege.php', 'target'=>'main'), + 'LehreinheitWartung'=>array('name'=>'Lehreinheitwartung', 'link'=>'stammdaten/le_wartung.php', 'target'=>'main'), + 'lvverteilung'=>array('name'=>'LVVerteilung', 'link'=>'lehre/lv_verteilung/lv_verteilung.php', 'target'=>'main'), + 'Kreuzerllistekopieren'=>array('name'=>'Kreuzerllisten kopieren', 'link'=>'https://cis.technikum-wien.at/cis/private/lehre/benotungstool/copy_uebung.php', 'target'=>'_blank'), + 'LDAPCheck'=>array('name'=>'LDAPCheck', 'link'=>'personen/ldap_check.php', 'target'=>'main'), + + ), 'Auswertung'=> array ( - 'name'=>'Auswertung', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support'), + 'name'=>'Auswertung', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support'), 'image'=>'statistic.png', + 'link'=>'left.php?categorie=Auswertung', 'target'=>'nav', 'Raumauslastung'=>array('name'=>'Raumauslastung', 'link'=>'lehre/raumauslastung.php', 'target'=>'main'), - 'Zeitwünsche'=>array('name'=>'Zeitwünsche', 'link'=>'lehre/zeitwuensche.php', 'target'=>'main') + 'Zeitwünsche'=>array('name'=>'Zeitwünsche', 'link'=>'lehre/zeitwuensche.php', 'target'=>'main'), + 'Organisationseinheiten'=>array('name'=>'Organisationseinheiten', 'link'=>'stammdaten/organisationseinheiten.php', 'target'=>'main'), + ), + 'Admin'=> array + ( + 'name'=>'Admin', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support'), 'image'=>'emblem-system.png', + 'link'=>'left.php?categorie=Admin', 'target'=>'nav', + 'Tools'=> array + ( + 'name'=>'Tools', 'permissions'=>array('admin'), + 'phpPgAdmin'=>array('name'=>'phpPgAdmin', 'link'=>'https://vilesci.technikum-wien.at/phppgadmin/index.php', 'target'=>'_blank'), + 'phpMyAdmin'=>array('name'=>'phpMyAdmin', 'link'=>'https://vilesci.technikum-wien.at/phpmyadmin/index.php', 'target'=>'_blank'), + 'SiPassDB'=>array('name'=>'SiPass Datenbank', 'link'=>'admin/sipassdb.php', 'target'=>'main'), + 'ServerTests'=>array('name'=>'Server-Tests', 'link'=>'admin/test/index.html', 'target'=>'main'), + 'htaccessGenerator'=>array('name'=>'.htaccess-Generator', 'link'=>'admin/htaccess/access.php', 'target'=>'main'), + ), + 'FAS-Installation'=>array('name'=>'FAS-Installation', 'link'=>'admin/fasinstall.html', 'target'=>'main'), + 'ViReferenz'=>array('name'=>'VI-Kurzreferenz', 'link'=>'admin/VI-Kurzreferenz.html', 'target'=>'main'), + ), + 'SD-Tools'=> array + ( + 'name'=>'SD-Tools', 'opener'=>'true', 'hide'=>'true', 'permissions'=>array('admin','lv-plan','support'), 'image'=>'network-workgroup.png', + 'link'=>'https://sdtools.technikum-wien.at', 'target'=>'_blank', ) + ); ?> \ No newline at end of file diff --git a/rdf/benutzerfunktion.rdf.php b/rdf/benutzerfunktion.rdf.php index e472ee646..89e19d8e2 100644 --- a/rdf/benutzerfunktion.rdf.php +++ b/rdf/benutzerfunktion.rdf.php @@ -86,6 +86,7 @@ if($db->db_query($qry)) datum_von.']]> convertISODate($row->datum_bis).']]> datum_bis.']]> + bezeichnung.']]> '; } diff --git a/rdf/diplomasupplement.xml.php b/rdf/diplomasupplement.xml.php index 388b89512..ee8886c94 100644 --- a/rdf/diplomasupplement.xml.php +++ b/rdf/diplomasupplement.xml.php @@ -28,6 +28,7 @@ require_once('../include/datum.class.php'); require_once('../include/basis_db.class.php'); require_once('../include/studiengang.class.php'); require_once('../include/prestudent.class.php'); +require_once('../include/mitarbeiter.class.php'); $datum = new datum(); $db = new basis_db(); @@ -184,18 +185,16 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") } } $stg_oe_obj = new studiengang($row->studiengang_kz); - $qry = "SELECT * FROM campus.vw_mitarbeiter JOIN public.tbl_benutzerfunktion USING(uid) - WHERE oe_kurzbz='$stg_oe_obj->oe_kurzbz' AND funktion_kurzbz='stgl' AND - (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND - (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; - if($db->db_query($qry)) + $stgleiter = $stg_oe_obj->getLeitung($row->studiengang_kz); + $stgl=''; + foreach ($stgleiter as $stgleiter_uid) { - if($row1 = $db->db_fetch_object()) - { - echo " $row1->titelpre $row1->vorname $row1->nachname $row1->titelpost"; - } + $stgl_ma = new mitarbeiter($stgleiter_uid); + $stgl .= trim($stgl_ma->titelpre.' '.$stgl_ma->vorname.' '.$stgl_ma->nachname.' '.$stgl_ma->titelpost); } + echo " $stgl"; + $qry = "SELECT telefonklappe FROM public.tbl_mitarbeiter JOIN tbl_benutzerfunktion ON(uid=mitarbeiter_uid) WHERE funktion_kurzbz='ass' AND oe_kurzbz='$stg_oe_obj->oe_kurzbz'"; if($db->db_query($qry)) { diff --git a/rdf/lehrauftrag.xml.php b/rdf/lehrauftrag.xml.php index 34424a5af..5a6c14e9b 100644 --- a/rdf/lehrauftrag.xml.php +++ b/rdf/lehrauftrag.xml.php @@ -29,6 +29,8 @@ require_once('../include/benutzerberechtigung.class.php'); require_once('../include/studiengang.class.php'); require_once('../include/lehreinheit.class.php'); require_once('../include/fachbereich.class.php'); +require_once('../include/mitarbeiter.class.php'); + // header für no cache header("Cache-Control: no-cache"); @@ -89,24 +91,13 @@ $stgl=''; $db = new basis_db(); if($studiengang_kz!='') { - $qry = "SELECT - titelpre, vorname, nachname, titelpost - FROM - public.tbl_benutzerfunktion, public.tbl_person, public.tbl_benutzer, public.tbl_studiengang - WHERE - funktion_kurzbz='stgl' AND - tbl_studiengang.studiengang_kz='".addslashes($studiengang_kz)."' AND - tbl_studiengang.oe_kurzbz=tbl_benutzerfunktion.oe_kurzbz AND - tbl_benutzerfunktion.uid=tbl_benutzer.uid AND - tbl_benutzer.person_id=tbl_person.person_id AND - (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND - (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; - if($db->db_query($qry)) + $studiengang = new studiengang(); + $stgleiter = $studiengang->getLeitung($studiengang_kz); + + foreach ($stgleiter as $stgleiter_uid) { - if($row = $db->db_fetch_object()) - { - $stgl = trim($row->titelpre.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost); - } + $row = new mitarbeiter($stgleiter_uid); + $stgl .= trim($row->titelpre.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost); } } diff --git a/rdf/studienerfolg.rdf.php b/rdf/studienerfolg.rdf.php index c10e98461..0f1570037 100644 --- a/rdf/studienerfolg.rdf.php +++ b/rdf/studienerfolg.rdf.php @@ -74,25 +74,7 @@ function draw_studienerfolg($uid, $studiensemester_kurzbz) if($db->db_query($qry_semester)) if($row_semester = $db->db_fetch_object()) $row->semester=$row_semester->semester; - /* - $stg_oe_obj = new studiengang($row->studiengang_kz); - $stgl_query = "SELECT - titelpre, titelpost, vorname, nachname - FROM - public.tbl_person, public.tbl_benutzer, public.tbl_benutzerfunktion - WHERE - tbl_person.person_id = tbl_benutzer.person_id AND - tbl_benutzer.uid = tbl_benutzerfunktion.uid AND - tbl_benutzerfunktion.funktion_kurzbz = 'stgl' AND - tbl_benutzerfunktion.oe_kurzbz = '".$stg_oe_obj->oe_kurzbz."' AND - (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND - (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; - if($db->db_query($stgl_query)) - $stgl_row = $db->db_fetch_object(); - else - die('Studiengangsleiter wurde nicht gefunden'); - */ $xml .= " "; $xml .= " ".DOC_ROOT."skin/images/"; $xml .= " ".$row->sembezeichnung.""; diff --git a/rdf/zertifikat.rdf.php b/rdf/zertifikat.rdf.php index 1f24e8919..618199da0 100755 --- a/rdf/zertifikat.rdf.php +++ b/rdf/zertifikat.rdf.php @@ -29,6 +29,7 @@ require_once('../include/datum.class.php'); require_once('../include/note.class.php'); require_once('../include/studiensemester.class.php'); require_once('../include/studiengang.class.php'); +require_once('../include/mitarbeiter.class.php'); $datum = new datum(); $db = new basis_db(); @@ -166,21 +167,13 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") else die('Student not found'); $stg_oe_obj = new studiengang($row->studiengang_kz); - $stgl_query = "SELECT - titelpre, titelpost, vorname, nachname - FROM - tbl_person, tbl_benutzer, tbl_benutzerfunktion - WHERE - tbl_person.person_id = tbl_benutzer.person_id AND - tbl_benutzer.uid = tbl_benutzerfunktion.uid AND - tbl_benutzerfunktion.funktion_kurzbz = 'stgl' AND - tbl_benutzerfunktion.oe_kurzbz = '".$stg_oe_obj->oe_kurzbz."' AND - (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND - (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; - if($db->db_query($stgl_query)) - $stgl_row = $db->db_fetch_object(); - else - die('Stgl not found'); + $stgleiter = $stg_oe_obj->getLeitung($row->studiengang_kz); + $stgl=''; + foreach ($stgleiter as $stgleiter_uid) + { + $stgl_ma = new mitarbeiter($stgleiter_uid); + $stgl .= trim($stgl_ma->titelpre.' '.$stgl_ma->vorname.' '.$stgl_ma->nachname.' '.$stgl_ma->titelpost); + } $xml .= "\n "; $xml .= " ".$studiensemester->bezeichnung.""; @@ -190,10 +183,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") $gebdatum = date('d.m.Y',strtotime($row->gebdatum)); $xml .= " ".$gebdatum.""; $xml .= " ".$row->matrikelnr.""; - if(isset($stgl_row->nachname)) - $xml .= " ".$stgl_row->titelpre." ".$stgl_row->vorname." ".$stgl_row->nachname.""; - else - $xml .= " "; + $xml .= " ".$stgl.""; $datum_aktuell = date('d.m.Y'); $xml .= " Wien, am ".$datum_aktuell.""; diff --git a/rdf/zeugnis.rdf.php b/rdf/zeugnis.rdf.php index 501ae3944..6e438a3f9 100644 --- a/rdf/zeugnis.rdf.php +++ b/rdf/zeugnis.rdf.php @@ -32,6 +32,7 @@ require_once('../include/zeugnisnote.class.php'); require_once('../include/datum.class.php'); require_once('../include/note.class.php'); require_once('../include/studiengang.class.php'); +require_once('../include/mitarbeiter.class.php'); $datum = new datum(); $db = new basis_db(); @@ -121,50 +122,35 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") else die('Student not found'); - $stg_oe_obj = new studiengang($row->studiengang_kz); - $stgl_query = "SELECT - titelpre, titelpost, vorname, nachname - FROM - tbl_person, tbl_benutzer, tbl_benutzerfunktion - WHERE - tbl_person.person_id = tbl_benutzer.person_id AND - tbl_benutzer.uid = tbl_benutzerfunktion.uid AND - tbl_benutzerfunktion.funktion_kurzbz = 'stgl' AND - tbl_benutzerfunktion.oe_kurzbz = '".addslashes($stg_oe_obj->oe_kurzbz)."' AND - (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND - (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; + $studiengang = new studiengang(); + $stgleiter = $studiengang->getLeitung($row->studiengang_kz); + $stgl=''; + foreach ($stgleiter as $stgleiter_uid) + { + $stgl_ma = new mitarbeiter($stgleiter_uid); + $stgl .= trim($stgl_ma->titelpre.' '.$stgl_ma->vorname.' '.$stgl_ma->nachname.' '.$stgl_ma->titelpost); + } - if($stgl_result = $db->db_query($stgl_query)) - $stgl_row = $db->db_fetch_object($stgl_result); - else - die('Stgl not found'); - - /* - if($row->semester!=0) - $bezeichnung = $row->semester.'. Semester'; - else - {*/ - //Wenn das Semester 0 ist, dann wird das Semester aus der Rolle geholt. (Ausnahme: Incoming) - //damit bei Outgoing Studenten die im 0. Semester angelegt sind das richtige Semester aufscheint - $qry ="SELECT ausbildungssemester as semester FROM public.tbl_prestudentstatus - WHERE - prestudent_id='".addslashes($row->prestudent_id)."' AND - studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND - status_kurzbz!='Incoming' - ORDER BY DATUM DESC LIMIT 1"; - if($result_sem = $db->db_query($qry)) + //Wenn das Semester 0 ist, dann wird das Semester aus der Rolle geholt. (Ausnahme: Incoming) + //damit bei Outgoing Studenten die im 0. Semester angelegt sind das richtige Semester aufscheint + $qry ="SELECT ausbildungssemester as semester FROM public.tbl_prestudentstatus + WHERE + prestudent_id='".addslashes($row->prestudent_id)."' AND + studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."' AND + status_kurzbz!='Incoming' + ORDER BY DATUM DESC LIMIT 1"; + if($result_sem = $db->db_query($qry)) + { + if($row_sem = $db->db_fetch_object($result_sem)) { - if($row_sem = $db->db_fetch_object($result_sem)) - { - $row->semester = $row_sem->semester; - $bezeichnung = $row_sem->semester.'. Semester'; - } - else - $bezeichnung = ''; + $row->semester = $row_sem->semester; + $bezeichnung = $row_sem->semester.'. Semester'; } - else + else $bezeichnung = ''; - //} + } + else + $bezeichnung = ''; $xml .= "\n "; $xml .= " ".$row->sembezeichnung.""; @@ -192,7 +178,7 @@ if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml") $gebdatum = date('d.m.Y',strtotime($row->gebdatum)); $xml .= " ".$gebdatum.""; $xml .= " ".$row->matrikelnr.""; - $xml .= " ".$stgl_row->titelpre." ".$stgl_row->vorname." ".$stgl_row->nachname.($stgl_row->titelpost!=''?", ".$stgl_row->titelpost:'').""; + $xml .= " ".$stgl.""; $datum_aktuell = date('d.m.Y'); $xml .= " ".$datum_aktuell.""; diff --git a/system/checksystem.php b/system/checksystem.php index 2b5ca3ca7..eb1665572 100644 --- a/system/checksystem.php +++ b/system/checksystem.php @@ -38,7 +38,6 @@ echo '

    DB-Updates!

    '; // ********************** Pruefungen echo '

    Pruefe Tabellen und Attribute!

    '; - if(!$result = @$db->db_query("SELECT aktiv FROM public.tbl_organisationseinheit LIMIT 1;")) { $qry = 'ALTER TABLE public.tbl_organisationseinheit ADD COLUMN aktiv boolean; @@ -67,13 +66,66 @@ if(!$result = @$db->db_query("SELECT fachbereich FROM public.tbl_funktion LIMIT UPDATE public.tbl_funktion SET semester=true WHERE funktion_kurzbz='oeh-kandidatur'; UPDATE public.tbl_funktion SET fachbereich=true WHERE funktion_kurzbz='fbk'; UPDATE public.tbl_funktion SET fachbereich=true WHERE funktion_kurzbz='fbl'; - UPDATE public.tbl_funktion SET fachbereich=true WHERE funktion_kurzbz='oezuordnung';"; + UPDATE public.tbl_funktion SET fachbereich=true WHERE funktion_kurzbz='oezuordnung'; + + UPDATE public.tbl_benutzerfunktion SET oe_kurzbz='Systementwicklung' WHERE oe_kurzbz='Systementwicklg'; + UPDATE public.tbl_benutzerfunktion SET oe_kurzbz='Unternehmenskommunikation' WHERE oe_kurzbz='Unternehmenskomm'; + UPDATE public.tbl_organisationseinheit SET aktiv=false WHERE oe_kurzbz='Unternehmenskomm'; + UPDATE public.tbl_fachbereich SET aktiv=false WHERE oe_kurzbz='Unternehmenskomm'; + UPDATE public.tbl_organisationseinheit SET aktiv=false WHERE oe_kurzbz='Systementwicklg'; + UPDATE public.tbl_fachbereich SET aktiv=false WHERE oe_kurzbz='Systementwicklg'; + "; if(!$db->db_query($qry)) echo 'public.tbl_funktion: '.$db->db_last_error().'
    '; else echo ' public.tbl_funktion: Spalte funktion und semester hinzugefuegt!
    '; } +if($result = $db->db_query("SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE table_name='tbl_benutzerfunktion' AND constraint_name='organisationseinheit_benutzerfunktion'")) +{ + if(!$row = $db->db_fetch_object($result)) + { + $qry = "UPDATE public.tbl_benutzerfunktion SET oe_kurzbz='etw' WHERE oe_kurzbz='0'; + ALTER TABLE public.tbl_benutzerfunktion ADD CONSTRAINT organisationseinheit_benutzerfunktion FOREIGN KEY (oe_kurzbz) REFERENCES public.tbl_organisationseinheit (oe_kurzbz) ON DELETE RESTRICT ON UPDATE CASCADE;"; + if(!$db->db_query($qry)) + echo 'public.tbl_benutzerfunktion: '.$db->db_last_error().'
    '; + else + echo ' public.tbl_benutzerfunktion: FK-Constraint zur tbl_organisationseinheit hinzugefuegt!
    '; + } +} + +if(!@$db->db_query("SELECT bezeichnung FROM public.tbl_benutzerfunktion;")) +{ + $qry = " + -- Spalte Bezeichnung anlegen + ALTER TABLE public.tbl_benutzerfunktion ADD COLUMN bezeichnung varchar(64); + -- Bezeichnung fuellen + UPDATE public.tbl_benutzerfunktion SET bezeichnung=(SELECT beschreibung FROM public.tbl_funktion WHERE funktion_kurzbz=tbl_benutzerfunktion.funktion_kurzbz); + + -- OE-Zuordnung und FBL auf OE umstellen + UPDATE public.tbl_benutzerfunktion SET oe_kurzbz=(SELECT oe_kurzbz FROM public.tbl_fachbereich + WHERE fachbereich_kurzbz=tbl_benutzerfunktion.fachbereich_kurzbz) + WHERE (tbl_benutzerfunktion.funktion_kurzbz='oezuordnung' OR tbl_benutzerfunktion.funktion_kurzbz='fbl') AND tbl_benutzerfunktion.fachbereich_kurzbz is not null; + + -- Funktionseintrag aktualisieren + UPDATE public.tbl_funktion SET fachbereich=false WHERE (funktion_kurzbz='oezuordnung' OR funktion_kurzbz='fbl'); + + -- Fachbereich Feld leeren + UPDATE public.tbl_benutzerfunktion SET fachbereich_kurzbz=null WHERE (funktion_kurzbz='oezuordnung' OR funktion_kurzbz='fbl'); + + -- Stg und Fbl auf Leiter aendern + UPDATE public.tbl_benutzerfunktion SET funktion_kurzbz='Leitung' WHERE funktion_kurzbz='stgl' OR funktion_kurzbz='fbl'; + + -- Funktion stgl und fbl entfernen + DELETE FROM public.tbl_funktion WHERE funktion_kurzbz='fbl' OR funktion_kurzbz='stgl'; + "; + + if(!$db->db_query($qry)) + echo 'public.tbl_benutzerfunktion: '.$db->db_last_error().'
    '; + else + echo ' public.tbl_benutzerfunktion: bezeichnung hinzugefuegt, Stgl und Fbl durch Leitung ersetzt, oezuordnung korrigiert
    '; +} +echo '
    '; $tabellen=array( "bis.tbl_ausbildung" => array("ausbildungcode","ausbildungbez","ausbildungbeschreibung"), @@ -163,7 +215,7 @@ $tabellen=array( "public.tbl_aufnahmeschluessel" => array("aufnahmeschluessel"), "public.tbl_bankverbindung" => array("bankverbindung_id","person_id","name","anschrift","bic","blz","iban","kontonr","typ","verrechnung","updateamum","updatevon","insertamum","insertvon","ext_id"), "public.tbl_benutzer" => array("uid","person_id","aktiv","alias","insertamum","insertvon","updateamum","updatevon","ext_id","updateaktivvon","updateaktivam"), - "public.tbl_benutzerfunktion" => array("benutzerfunktion_id","fachbereich_kurzbz","uid","oe_kurzbz","funktion_kurzbz","semester", "datum_von","datum_bis", "updateamum","updatevon","insertamum","insertvon","ext_id"), + "public.tbl_benutzerfunktion" => array("benutzerfunktion_id","fachbereich_kurzbz","uid","oe_kurzbz","funktion_kurzbz","semester", "datum_von","datum_bis", "updateamum","updatevon","insertamum","insertvon","ext_id","bezeichnung"), "public.tbl_benutzergruppe" => array("uid","gruppe_kurzbz","studiensemester_kurzbz","updateamum","updatevon","insertamum","insertvon","ext_id"), "public.tbl_berechtigung" => array("berechtigung_kurzbz","beschreibung"), "public.tbl_betriebsmittel" => array("betriebsmittel_id","beschreibung","betriebsmitteltyp","nummer","nummerintern","reservieren","ort_kurzbz","updateamum","updatevon","insertamum","insertvon","ext_id"), diff --git a/system/mlists/mlists_generate.php b/system/mlists/mlists_generate.php index 3171bd872..047a5c936 100644 --- a/system/mlists/mlists_generate.php +++ b/system/mlists/mlists_generate.php @@ -170,7 +170,8 @@ $error_msg=''; public.tbl_mitarbeiter JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) JOIN public.tbl_benutzerfunktion USING(uid) - WHERE aktiv AND funktion_kurzbz='stgl' AND + JOIN public.tbl_studiengang USING(oe_kurzbz) + WHERE tbl_benutzer.aktiv AND funktion_kurzbz='Leitung' AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()))"; if(!($result = $db->db_query($sql_query))) @@ -190,9 +191,10 @@ $error_msg=''; public.tbl_mitarbeiter JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid) JOIN public.tbl_benutzerfunktion USING(uid) + JOIN public.tbl_studiengang USING(oe_kurzbz) WHERE - aktiv AND - tbl_benutzerfunktion.funktion_kurzbz='stgl' AND + tbl_benutzer.aktiv AND + tbl_benutzerfunktion.funktion_kurzbz='Leitung' AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) AND mitarbeiter_uid NOT LIKE '\\\\_%' AND mitarbeiter_uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER('$mlist_name'))"; diff --git a/system/xsl/accountinfoblatt_0_v2.xsl b/system/xsl/accountinfoblatt_0_v2.xsl new file mode 100644 index 000000000..bab616bd7 --- /dev/null +++ b/system/xsl/accountinfoblatt_0_v2.xsl @@ -0,0 +1,286 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + Account Information + + + + + + + + + + + + + Name: + + + + + + + + + + + + + + + + + + + + + Account: + + + + + + + + + + Email: + + + + + + + + + + + + + + + + + + + Passwort: + + + + + + + + + + + + + + + + + + + + Studiengang: + + + + + + + + + + + + + + + + Account Mini FAQ + + + + + + Wie melde ich mich am System an? + + + Windows NT/XP: Melden sie sich an der Domäne TW an indem Sie die Tasten <STRG> + <ALT> + <ENTF> gleichzeitig drücken, danach Accountname und Passwort eingeben. + + + Linux: Nach dem Systemstart im Boot Manager einfach Linux auswählen. Das System startet mit dem KDE Login Manager. Dort ist ebenfalls der Accountname und das Passwort einzugeben.\n + + + + Ändern des Passwortes + + + Windows NT/XP: In den EDV-Räumen.\n + Loggen Sie sich mit Ihrem Account unter Windows NT/XP in der TW Domäne ein, drücken Sie <STRG> + <ALT> + <ENTF> und wählen Sie den Punkt "Kennwort ändern". + + + Linux: Passwort ändern auf Ihrem Fileserver .\n + Loggen Sie sich mittels SSH (z.B. putty Programm) auf Ihrem Fileserver ein und geben Sie den Befehl "passwd" ein.\n + Webmail: Auch im Webmailsystem auf https://webmail.technikum-wien.at können Sie ihr Passwort ändern.\n + In allen Fällen wird neben dem Windows-Passwort auch das Unix-Passwort für die Fileserver bzw. den Mailserver mitgeändert.\n + + + + Wie und wo kann ich meine Daten ablegen? + + + Nach einem erfolgreichen Login ist unter Windows NT/XP das Laufwerk M: mit Ihrem Userverzeichnis am + Server verbunden. Dort haben Sie die Möglichkeit Ihre Daten abzulegen. Achten Sie immer darauf, Ihr Quota + (Speicherplatz den Sie zur Verfügung haben) nicht zu überschreiten! Einige Programme (wie etwa Netscape) + funktionieren dann nicht mehr einwandfrei.\n + + + + Welche Möglichkeiten habe ich auf meine Daten zuzugreifen? + + + Innerhalb des TW LANs wird Ihr Serververzeichnis immer mit dem Laufwerk M: verbunden. + Ausserhalb der FH können Sie per SSH bzw. WinSCP auf Ihre Daten auch von zu Hause aus zugreifen.\n + Dazu müssen Sie sich mit dem Server verbinden.\n + + + + Wie kann ich meine Mails von zu Hause aus abrufen? + + + Eine Anleitung zur Einrichtung Ihres Mail-Clients finden Sie auf https://cis.technikum-wien.at unter dem Punkt FAQ.\n + Eine weitere Möglichkeit, von überall Mails abzurufen, ist unser Webmail Service auf https://webmail.technikum-wien.at\n + + + + + Warum werden meine Einstellungen am Windows NT/XP Desktop nicht gespeichert? + + + Alle Studenten teilen sich dasselbe Profil. Sie können daher keine Einstellungen sichern.\n + + + + + Wo erhalte ich weitere Informationen? + + + Die primäre Anlaufstelle für Fragen rund um den Netzwerkbetrieb ist die Webseite\n + + + https://cis.technikum-wien.at\n + + + Verwenden Sie die Informationen auf dieser Seite, um einen Überblick über die vorhandenen Möglichkeiten zu erhalten. + + + + + + + + + Account Mini FAQ + + + + + System Log-in: + + + Windows NT/XP: Hold down <ctrl> + <alt> + <delete> simultaneously to log in to the domain of the University of Applied Sciences Technikum Wien. Enter your user name (Account) and password in the log-in window. + + + Linux: Start your system and choose Linux in the Boot Manager. The system will then launch KDE Log-in Manager. Enter your user name (see Account) and password in the log-in window.\n + + + + Password Change: + + + There are two ways to change your password:\n + In the computer labs of UAS Technikum Wien:\n + In Windows NT and Windows XP, hold down <ctrl> + <alt> + <delete> simultaneously to log in to the Technikum Wien domain. Select "Kennwort ändern" (Change Password). Then change your password. + + + In Linux, use an SSH client such as Putty to log in to your file server and enter "passwd". Then change your password.\n + Webmail: Open your web browser and go to https://webmail.technikum-wien.at. Enter your user name (Account) and password, then skip maintenance and select "My Account > Password" from the pane on the left. Then change your password.\n + + + + Disk space for your files: + + + In Windows NT and Windows XP, log in to the UAS Technikum Wien domain, and you will be automatically connected to volume M:, which contains your personal disk space.\n + In Linux, use an SSH client such as Putty to log in to your file server . + + + Make sure not to exceed your quota, as some software will stop functioning in that case.\n + + + + Access to your files: + + + From within UAS Technikum Wien, you can always access volume M: in Windows NT and Windows XP. From outside, use an SSH or SCP client to connect to .\n + + + + Setting up your UAS Technikum Wien mail account: + + + Set up a POP3 account in your mail program of choice. Enter your user name (see Account) and password, + pop.technikum-wien.at as your incoming mail server and smtp.technikum-wien.at as your outgoing mail server.\n + Alternatively, you can read mail in your web browser at https://webmail.technikum-wien.at.\n + + + + Looking for further information? + + + For questions concerning the UAS Technikum Wien network services, see\n + + + https://cis.technikum-wien.at\n + + + These pages will give you a detailed overview of all services available + + + + + + + \ No newline at end of file diff --git a/vilesci/bis/personalmeldung.php b/vilesci/bis/personalmeldung.php index fd7eef38a..1e6467780 100644 --- a/vilesci/bis/personalmeldung.php +++ b/vilesci/bis/personalmeldung.php @@ -196,7 +196,7 @@ if($result = $db->db_query($qry)) ".$rowvw->beschausmasscode." ".$rowvw->verwendung_code.""; //Studiengangsleiter - $qryslt="SELECT tbl_benutzerfunktion.*, tbl_studiengang.studiengang_kz FROM public.tbl_benutzerfunktion JOIN public.tbl_studiengang USING(oe_kurzbz) WHERE uid='".$row->mitarbeiter_uid."' AND funktion_kurzbz='stgl' AND studiengang_kz<10000;"; + $qryslt="SELECT tbl_benutzerfunktion.*, tbl_studiengang.studiengang_kz FROM public.tbl_benutzerfunktion JOIN public.tbl_studiengang USING(oe_kurzbz) WHERE uid='".$row->mitarbeiter_uid."' AND funktion_kurzbz='Leitung' AND studiengang_kz<10000;"; if($resultslt=$db->db_query($qryslt)) { while($rowslt=$db->db_fetch_object($resultslt)) diff --git a/vilesci/personen/institutsliste.php b/vilesci/personen/institutsliste.php index 832dc195c..306203b43 100644 --- a/vilesci/personen/institutsliste.php +++ b/vilesci/personen/institutsliste.php @@ -21,17 +21,16 @@ * 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/studiengang.class.php'); require_once('../../include/fachbereich.class.php'); require_once('../../include/studiensemester.class.php'); require_once('../../include/benutzerberechtigung.class.php'); +if (!$db = new basis_db()) + die('Es konnte keine Verbindung zum Server aufgebaut werden.'); + $stg_obj = new studiengang(); $stg_obj->getAll('typ, kurzbz', false); @@ -101,9 +100,9 @@ $qry = "SELECT ) as lvs_sommersemester, ( SELECT - fachbereich_kurzbz + tbl_fachbereich.fachbereich_kurzbz FROM - public.tbl_benutzerfunktion + public.tbl_benutzerfunktion JOIN public.tbl_fachbereich USING(oe_kurzbz) WHERE uid=tbl_mitarbeiter.mitarbeiter_uid AND funktion_kurzbz='oezuordnung'
    ECTS - Credits".($lv_obj->ects!=''?number_format($lv_obj->ects,1,'.',''):'')."Bei Fehlern in den Fixfeldern bitte an die zuständige Assistentin wenden.
    ECTS - Credits".($lv_obj->ects!=''?number_format($lv_obj->ects,1,'.',''):'')."Bei Fehlern in den Fixfeldern bitte an die zuständige Assistentin wenden.
    Institutsleiter"; if($result=$db->db_query($qry)) { while($row=$db->db_fetch_object($result)) { - echo "$row->vorname $row->nachname
    "; + echo "$row->titelpre $row->vorname $row->nachname $row->titelpost
    "; } } @@ -496,7 +499,7 @@ //FB Koordinator auslesen //$qry = "SELECT distinct vorname, nachname FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE funktion_kurzbz='fbk' AND studiengang_kz='$stg' AND fachbereich_kurzbz in (SELECT fachbereich_kurzbz FROM lehre.tbl_lehrfach, lehre.tbl_lehreinheit WHERE lehrveranstaltung_id='$lv' AND tbl_lehrfach.lehrfach_id=tbl_lehreinheit.lehrfach_id AND tbl_lehreinheit.studiensemester_kurzbz=(SELECT studiensemester_kurzbz FROM lehre.tbl_lehreinheit JOIN public.tbl_studiensemester USING(studiensemester_kurzbz) WHERE tbl_lehreinheit.lehrveranstaltung_id='$lv' ORDER BY ende DESC LIMIT 1))"; $qry = "SELECT - distinct vorname, nachname, tbl_lehrfach.fachbereich_kurzbz + distinct on(tbl_benutzerfunktion.uid) titelpre, titelpost, vorname, nachname, tbl_lehrfach.fachbereich_kurzbz FROM lehre.tbl_lehrveranstaltung, lehre.tbl_lehreinheit, lehre.tbl_lehrfach, public.tbl_benutzerfunktion, campus.vw_mitarbeiter WHERE @@ -515,7 +518,7 @@ { while($row=$db->db_fetch_object($result)) { - echo "$row->vorname $row->nachname
    "; + echo "$row->titelpre $row->vorname $row->nachname $row->titelpost
    "; } } diff --git a/cis/private/lehre/ects/preview.php b/cis/private/lehre/ects/preview.php index 43a5a399b..9e7e796f1 100644 --- a/cis/private/lehre/ects/preview.php +++ b/cis/private/lehre/ects/preview.php @@ -28,19 +28,14 @@ 03-02-2006 Anpassung an die neue Datenbank */ - require_once('../../../../config/cis.config.inc.php'); -// ------------------------------------------------------------------------------------------ -// Datenbankanbindung -// ------------------------------------------------------------------------------------------ - require_once('../../../../include/basis_db.class.php'); - if (!$db = new basis_db()) - die('Fehler beim Herstellen der Datenbankverbindung'); - - require_once('../../../../include/studiensemester.class.php'); - require_once('../../../../include/lehrveranstaltung.class.php'); - require_once('../../../../include/lvinfo.class.php'); - require_once('../../../../include/studiengang.class.php'); +require_once('../../../../config/cis.config.inc.php'); +require_once('../../../../include/studiensemester.class.php'); +require_once('../../../../include/lehrveranstaltung.class.php'); +require_once('../../../../include/lvinfo.class.php'); +require_once('../../../../include/studiengang.class.php'); +if (!$db = new basis_db()) + die('Fehler beim Herstellen der Datenbankverbindung'); ?> @@ -205,8 +200,15 @@ while($row = $db->db_fetch_object($res)) $lehrform_kurzbz[] = $row->lehrform_kurzbz; //Fachbereichsleiter fuer alle FB ermitteln - $qry="SELECT vorname, nachname, fachbereich_kurzbz FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) - WHERE funktion_kurzbz='fbl' AND fachbereich_kurzbz in($fachbereiche) AND + $qry=" + SELECT + vorname, nachname, tbl_fachbereich.fachbereich_kurzbz + FROM + public.tbl_benutzerfunktion + JOIN public.tbl_fachbereich USING(oe_kurzbz) + JOIN campus.vw_mitarbeiter USING(uid) + WHERE + funktion_kurzbz='Leitung' AND tbl_fachbereich.fachbereich_kurzbz in($fachbereiche) AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; diff --git a/cis/private/lehre/pinboard.php b/cis/private/lehre/pinboard.php index 790ae44b3..c6dc80fa4 100644 --- a/cis/private/lehre/pinboard.php +++ b/cis/private/lehre/pinboard.php @@ -54,6 +54,7 @@ require_once('../../../include/studiengang.class.php'); require_once('../../../include/studiensemester.class.php'); require_once('../../../include/news.class.php'); + require_once('../../../include/mitarbeiter.class.php'); // Open der NEWs-Classe if (!$news = new news()) @@ -296,85 +297,77 @@ function show(id)

    Studiengangsleiter:
    oe_kurzbz' AND funktion_kurzbz='stgl' AND (datum_von<=now() OR datum_von is null) AND (datum_bis>=now() OR datum_bis is null) LIMIT 1)"; - if($result_course_leader = $db->db_query($qry)) - { - $num_rows_course_leader = $db->db_num_rows($result_course_leader); - if($num_rows_course_leader > 0) - { - $row_course_leader = $db->db_fetch_object($result_course_leader, 0); - } - } - - echo ""; - - if(isset($row_course_leader) && $row_course_leader != "") - { - if(!($row_course_leader->vorname == "" && $row_course_leader->nachname == "")) - { - echo $row_course_leader->titelpre.' '.$row_course_leader->vorname.' '.$row_course_leader->nachname.' '.$row_course_leader->titelpost; - } - else - { - echo "Nicht definiert"; - } - } - else - { - echo "Nicht definiert"; - } - - echo "
    "; - - if(isset($row_course_leader) && $row_course_leader != "") - { - if($row_course_leader->uid != "") - { - echo "uid@".DOMAIN."\" class=\"Item\">$row_course_leader->uid@".DOMAIN.""; - } - else - { - echo "E-Mail nicht definiert"; - } - } - else - { - echo "E-Mail nicht definiert"; - } - - echo "
    "; - echo "Tel.:"; - - if(isset($row_course_leader) && $row_course_leader != "") - { - if($row_course_leader->telefonklappe != "") - { - $hauptnummer=''; - $qry_standort = "SELECT tbl_firma.telefon as nummer FROM public.tbl_standort, public.tbl_adresse, public.tbl_firma - WHERE standort_kurzbz='".addslashes($row_course_leader->standort_kurzbz)."' AND - tbl_adresse.adresse_id=tbl_standort.adresse_id AND - tbl_adresse.firma_id=tbl_firma.firma_id"; - if($result_standort = $db->db_query($qry_standort)) + $stg_oe_obj = new studiengang(); + $stgl = $stg_oe_obj->getLeitung($studiengang_kz); + + if(count($stgl)>0) + { + foreach ($stgl as $uid) + { + $row_course_leader = new mitarbeiter($uid); + + echo ""; + + echo $row_course_leader->titelpre.' '.$row_course_leader->vorname.' '.$row_course_leader->nachname.' '.$row_course_leader->titelpost; + + + echo "
    "; + + if(isset($row_course_leader) && $row_course_leader != "") { - if($row_standort = $db->db_fetch_object($result_standort)) + if($row_course_leader->uid != "") { - $hauptnummer = $row_standort->nummer; + echo "uid@".DOMAIN."\" class=\"Item\">$row_course_leader->uid@".DOMAIN.""; + } + else + { + echo "E-Mail nicht definiert"; } } - - echo $hauptnummer.' - '.$row_course_leader->telefonklappe; - } - else - { - echo "Nicht vorhanden"; - } - } - else - { - echo "Nicht vorhanden"; - } + else + { + echo "E-Mail nicht definiert"; + } + + echo "
    "; + echo "Tel.:"; + + if(isset($row_course_leader) && $row_course_leader != "") + { + if($row_course_leader->telefonklappe != "") + { + $hauptnummer=''; + $qry_standort = "SELECT tbl_firma.telefon as nummer FROM public.tbl_standort, public.tbl_adresse, public.tbl_firma + WHERE standort_kurzbz='".addslashes($row_course_leader->standort_kurzbz)."' AND + tbl_adresse.adresse_id=tbl_standort.adresse_id AND + tbl_adresse.firma_id=tbl_firma.firma_id"; + if($result_standort = $db->db_query($qry_standort)) + { + if($row_standort = $db->db_fetch_object($result_standort)) + { + $hauptnummer = $row_standort->nummer; + } + } + + echo $hauptnummer.' - '.$row_course_leader->telefonklappe; + } + else + { + echo "Nicht vorhanden"; + } + } + else + { + echo "Nicht vorhanden"; + } + } + } + else + { + echo 'Nicht definiert
    + E-Mail nicht definiert
    + Tel.: Nicht vorhanden'; + } echo "

    "; echo "

    "; @@ -461,7 +454,7 @@ function show(id) { echo "Nicht vorhanden"; } - echo "

    "; + echo "
    "; } } } diff --git a/cis/private/menu.php b/cis/private/menu.php index 59babb705..0b090e57b 100644 --- a/cis/private/menu.php +++ b/cis/private/menu.php @@ -21,21 +21,21 @@ * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > * */ - require_once('../../config/cis.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/cis.config.inc.php'); +require_once('../../include/globals.inc.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/benutzerberechtigung.class.php'); +require_once('../../include/funktion.class.php'); +require_once('../../include/studiensemester.class.php'); +require_once('../../include/studiengang.class.php'); +require_once('../../include/lehrveranstaltung.class.php'); +require_once('../../include/mitarbeiter.class.php'); - require_once('../../include/globals.inc.php'); - require_once('../../include/functions.inc.php'); - require_once('../../include/benutzerberechtigung.class.php'); - require_once('../../include/funktion.class.php'); - require_once('../../include/studiensemester.class.php'); - require_once('../../include/studiengang.class.php'); - require_once('../../include/lehrveranstaltung.class.php'); +if (!$db = new basis_db()) + die('Es konnte keine Verbindung zum Server aufgebaut werden.'); - if (!$user=get_uid()) - die('Sie sind nicht angemeldet. Es wurde keine Benutzer UID gefunden ! Zurück'); +if (!$user=get_uid()) + die('Sie sind nicht angemeldet. Es wurde keine Benutzer UID gefunden ! Zurück'); $cutlength=10; $rechte=new benutzerberechtigung(); diff --git a/cis/private/profile/index.php b/cis/private/profile/index.php index 2c9aca61a..217a06963 100644 --- a/cis/private/profile/index.php +++ b/cis/private/profile/index.php @@ -220,9 +220,6 @@ function RefreshImage() { echo "Alias: $email_alias@".DOMAIN.""; } - - if($email!='') - echo "
    Extern: $email"; echo '

    '; @@ -278,28 +275,25 @@ function RefreshImage() //Funktionen $qry = "SELECT *, tbl_benutzerfunktion.oe_kurzbz as oe_kurzbz, tbl_organisationseinheit.bezeichnung as oe_bezeichnung, - tbl_fachbereich.bezeichnung as bezeichnung, tbl_benutzerfunktion.semester + tbl_benutzerfunktion.semester, tbl_benutzerfunktion.bezeichnung as bf_bezeichnung FROM public.tbl_benutzerfunktion JOIN public.tbl_funktion USING(funktion_kurzbz) JOIN public.tbl_organisationseinheit USING(oe_kurzbz) - LEFT JOIN public.tbl_fachbereich USING(fachbereich_kurzbz) - LEFT JOIN public.tbl_studiengang ON(tbl_benutzerfunktion.oe_kurzbz=tbl_studiengang.oe_kurzbz) WHERE uid='$uid' AND - (tbl_fachbereich.aktiv=true OR fachbereich_kurzbz is null) AND - (tbl_studiengang.aktiv=true OR tbl_benutzerfunktion.oe_kurzbz is null) AND (tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND (tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())"; + if($result_funktion = $db->db_query($qry)) { if($db->db_num_rows($result_funktion)>0) { - echo '

    Funktionen'; + echo '

    Funktionen
    FunktionOrganisationseinheitSemesterInstitut
    '; while($row_funktion = $db->db_fetch_object($result_funktion)) { - echo ""; + echo ""; } echo '
    BezeichnungOrganisationseinheitSemesterInstitut
    $row_funktion->beschreibung".$row_funktion->organisationseinheittyp_kurzbz.' '.$row_funktion->oe_bezeichnung."$row_funktion->semester$row_funktion->bezeichnung
    $row_funktion->bf_bezeichnung".$row_funktion->organisationseinheittyp_kurzbz.' '.$row_funktion->oe_bezeichnung."$row_funktion->semester$row_funktion->fachbereich_kurzbz
    '; } diff --git a/cis/private/profile/zeitsperre.php b/cis/private/profile/zeitsperre.php index 1302bff71..22a94725d 100644 --- a/cis/private/profile/zeitsperre.php +++ b/cis/private/profile/zeitsperre.php @@ -22,16 +22,17 @@ // ** // * @brief Uebersicht der Zeitsperren fuer Lektorengruppen - require_once('../../../config/cis.config.inc.php'); - require_once('../../../include/globals.inc.php'); - require_once('../../../include/functions.inc.php'); - require_once('../../../include/person.class.php'); - require_once('../../../include/benutzer.class.php'); - require_once('../../../include/mitarbeiter.class.php'); - require_once('../../../include/studiensemester.class.php'); - require_once('../../../include/zeitsperre.class.php'); - require_once('../../../include/datum.class.php'); - require_once('../../../include/fachbereich.class.php'); +require_once('../../../config/cis.config.inc.php'); +require_once('../../../include/globals.inc.php'); +require_once('../../../include/functions.inc.php'); +require_once('../../../include/person.class.php'); +require_once('../../../include/benutzer.class.php'); +require_once('../../../include/mitarbeiter.class.php'); +require_once('../../../include/studiensemester.class.php'); +require_once('../../../include/zeitsperre.class.php'); +require_once('../../../include/datum.class.php'); +require_once('../../../include/fachbereich.class.php'); +require_once('../../../include/organisationseinheit.class.php'); $uid = get_uid(); @@ -52,10 +53,10 @@ else $funktion=null; - if(isset($_GET['institut'])) - $institut = $_GET['institut']; + if(isset($_GET['organisationseinheit'])) + $organisationseinheit = $_GET['organisationseinheit']; else - $institut = null; + $organisationseinheit = null; $stge=array(); if(isset($_GET['stg_kz'])) @@ -72,8 +73,8 @@ // Link fuer den Export $export_link='zeitsperre_export.php?'; - if(!is_null($institut)) - $export_link.="institut=$institut"; + if(!is_null($organisationseinheit)) + $export_link.="organisationseinheit=$organisationseinheit"; else { if ($fix==true) @@ -108,9 +109,9 @@ // Lektoren holen $ma=new mitarbeiter(); - if(!is_null($institut)) + if(!is_null($organisationseinheit)) { - $mitarbeiter = $ma->getMitarbeiterInstitut($institut); + $mitarbeiter = $ma->getMitarbeiterOrganisationseinheit($organisationseinheit); } else { @@ -134,32 +135,31 @@ - +
     Zeitsperren - HELP  -

    Zeitsperren von

    '; - echo 'Institut: '; + $oe_obj = new organisationseinheit(); + $oe_obj->getAll(); + + echo ""; + foreach ($oe_obj->result as $oe) { - if($fb->aktiv) + if($oe->aktiv) { - if($fb->fachbereich_kurzbz==$institut) + if($oe->oe_kurzbz==$organisationseinheit) $selected='selected'; else $selected=''; - echo ""; + echo ""; } } echo ''; @@ -187,27 +187,30 @@ aktiv) + foreach ($mitarbeiter as $ma) { - $zs->getzeitsperren($ma->uid, false); - echo '
    '.trim($ma->nachname).' '.trim($ma->vorname).''.$grund.'
    '.$erbk.'
    '.trim($ma->nachname).' '.trim($ma->vorname).''.$grund.'
    '.$erbk.'