, * Andreas Oesterreicher and * Rudolf Hangl . */ /* Erstellt einen Lehrauftrag im PDF Format * * Erstellt ein XML File fuer den Lehrauftrag */ require_once('../vilesci/config.inc.php'); require_once('../include/functions.inc.php'); require_once('../include/benutzerberechtigung.class.php'); require_once('../include/studiengang.class.php'); require_once('../include/lehreinheit.class.php'); require_once('../include/fachbereich.class.php'); // header für no cache header("Cache-Control: no-cache"); header("Cache-Control: post-check=0, pre-check=0",false); header("Expires Mon, 26 Jul 1997 05:00:00 GMT"); header("Pragma: no-cache"); // content type setzen header("Content-type: application/xhtml+xml"); // Datenbank Verbindung if (!$conn = pg_pconnect(CONN_STRING)) die('Es konnte keine Verbindung zum Server aufgebaut werden!'); //Parameter holen if(isset($_GET['uid'])) $uid = $_GET['uid']; else $uid=null; if(isset($_GET['stg_kz'])) $studiengang_kz = $_GET['stg_kz']; else die('Fehlerhafte Parameteruebergabe'); if(isset($_GET['ss'])) $ss = $_GET['ss']; else die('Fehlerhafte Parameteruebergabe'); //String der laenger als limit ist wird //abgeschnitten und '...' angehaengt function CutString($strVal, $limit) { if(strlen($strVal) > $limit+3) return substr($strVal, 0, $limit) . "..."; else return $strVal; } // GENERATE XML $xml = ''; //Studiengang laden $studiengang = new studiengang($conn, $studiengang_kz); //Fachbereiche laden $fb_arr = array(); $fachbereich_obj = new fachbereich($conn); $fachbereich_obj->getAll(); foreach ($fachbereich_obj->result as $fb) $fb_arr[$fb->fachbereich_kurzbz] = $fb->bezeichnung; //Studiengangsleiter holen $stgl=''; $qry = "SELECT titelpre, vorname, nachname, titelpost FROM public.tbl_benutzerfunktion, public.tbl_person, public.tbl_benutzer WHERE funktion_kurzbz='stgl' AND studiengang_kz='".addslashes($studiengang_kz)."' AND tbl_benutzerfunktion.uid=tbl_benutzer.uid AND tbl_benutzer.person_id=tbl_person.person_id"; if($result = pg_query($conn, $qry)) { if($row = pg_fetch_object($result)) { $stgl = trim($row->titelpost.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost); } } if($uid==null) { $qry = "SELECT distinct tbl_lehreinheitmitarbeiter.mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter, lehre.tbl_lehreinheit, lehre.tbl_lehrveranstaltung WHERE tbl_lehreinheitmitarbeiter.lehreinheit_id=tbl_lehreinheit.lehreinheit_id AND tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND tbl_lehrveranstaltung.studiengang_kz='".addslashes($studiengang_kz)."' AND tbl_lehreinheit.studiensemester_kurzbz='".addslashes($ss)."'"; if($result = pg_query($conn, $qry)) { while($row = pg_fetch_object($result)) { drawLehrauftrag($row->mitarbeiter_uid); } } } else drawLehrauftrag($uid); function drawLehrauftrag($uid) { global $studiengang; global $studiengang_kz; global $fb_arr; global $ss; global $xml; global $conn; global $stgl; $xml.=' FH-'; //Studiengang if($studiengang->typ=='d') $xml.= 'Diplom-'; elseif($studiengang->typ=='m') $xml.= 'Master-'; elseif($studiengang->typ=='b') $xml.= 'Bachelor-'; $xml.= 'Studiengang '.$studiengang->bezeichnung.''; //Studiensemester if(substr($ss,0,2)=='WS') $studiensemester = 'Wintersemester '.substr($ss,2); else $studiensemester = 'Sommersemester '.substr($ss,2); $xml.=" $studiensemester"; //Lektor $qry = "SELECT * FROM campus.vw_mitarbeiter LEFT JOIN public.tbl_adresse USING(person_id) WHERE uid='".addslashes($uid)."' ORDER BY zustelladresse LIMIT 1"; if($result = pg_query($conn, $qry)) { if($row = pg_fetch_object($result)) { $xml.=' '.$row->titelpre.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost.' '.$row->strasse.' '.$row->plz.' '.$row->ort.' '.$row->svnr.' '.$row->personalnummer.' '; } } //Lehreinheiten $qry = "SELECT * FROM campus.vw_lehreinheit WHERE lv_studiengang_kz='".addslashes($studiengang_kz)."' AND mitarbeiter_uid='".addslashes($uid)."' AND studiensemester_kurzbz='$ss' ORDER BY lehreinheit_id"; if($result = pg_query($conn, $qry)) { $last_le=''; $gesamtkosten = 0; $gesamtstunden = 0; $gruppen = array(); $grp=''; while($row = pg_fetch_object($result)) { if($last_le!=$row->lehreinheit_id && $last_le!='') { array_unique($gruppen); foreach ($gruppen as $gruppe) $grp.=$gruppe.' '; $xml.=' '.$lehreinheit_id.' '.$fb_arr[$fachbereich].' '.trim($grp).' '.$stunden.' '.$satz.' '.$faktor.' '.number_format($brutto,2,',','.').' '; $gesamtkosten = $gesamtkosten + $brutto; $gesamtstunden = $gesamtstunden + $stunden; $lehreinheit_id=''; $lehrveranstaltung = ''; $fachbereich = ''; $gruppen= array(); $stunden = ''; $satz = ''; $faktor = ''; $brutto = ''; $grp=''; } $lehreinheit_id=$row->lehreinheit_id; $lehrveranstaltung = CutString($row->lv_bezeichnung,30).' '.$row->lehrform_kurzbz.' '.$row->semester.'. Semester'; $fachbereich = $row->fachbereich_kurzbz; if($row->gruppe_kurzbz!='') $gruppen[] = $row->gruppe_kurzbz; else $gruppen[] = $row->semester.$row->verband.$row->gruppe.' '; $stunden = $row->semesterstunden; $satz = $row->stundensatz; $faktor = $row->faktor; $brutto = $row->semesterstunden*$row->stundensatz*$row->faktor; $last_le=$row->lehreinheit_id; } array_unique($gruppen); foreach ($gruppen as $gruppe) $grp.=$gruppe.' '; $xml.=' '.(isset($lehreinheit_id)?$lehreinheit_id:'').' '.(isset($fachbereich)?$fb_arr[$fachbereich]:'').' '.trim($grp).' '.(isset($stunden)?$stunden:'').' '.(isset($satz)?$satz:'').' '.(isset($faktor)?$faktor:'').' '.(isset($brutto)?number_format($brutto,2,',','.'):'').' '; if(isset($brutto)) $gesamtkosten = $gesamtkosten + $brutto; if(isset($stunden)) $gesamtstunden = $gesamtstunden + $stunden; } // Gesamtstunden und Gesamtkosten $xml.=" $gesamtstunden ".number_format($gesamtkosten,2,',','.').""; $xml.=" $stgl"; $xml.= ' '.date('d.m.Y').' '; } // END GENERATE XML echo $xml.''; ?>