, * Andreas Oesterreicher , * Rudolf Hangl and * Gerald Simane-Sequens . */ /**************************************************************************** * Script: stpl_detail.php * Descr: Das Script dient zur Detailanzeige eines Eintrags im Stundenplan. * Es wird in Verbandsplan und Reservierungen gesucht. * Verzweigungen: von stpl_week.php * Author: Christian Paminger * Erstellt: 21.8.2001 * Update: 11.11.2004 von Christian Paminger *****************************************************************************/ require_once('../../../config/cis.config.inc.php'); require_once('../../../include/ort.class.php'); require_once('../../../include/functions.inc.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/phrasen.class.php'); $sprache = getSprache(); $p = new phrasen($sprache); if (!$db = new basis_db()) die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung')); // Variablen uebernehmen if (isset($_GET['type'])) $type=$_GET['type']; else $type=''; if (isset($_GET['datum'])) $datum=$_GET['datum']; if (isset($_GET['stunde'])) $stunde=$_GET['stunde']; if (isset($_GET['ort_kurzbz'])) $ort_kurzbz=$_GET['ort_kurzbz']; if (isset($_GET['pers_uid'])) $pers_uid=$_GET['pers_uid']; if (isset($_GET['stg_kz'])) $stg_kz=$_GET['stg_kz']; if (isset($_GET['sem'])) $sem=$_GET['sem']; if($sem!='' && !is_numeric($sem)) die($p->t('lvplan/semesterIstUngueltig')); if($stunde!='' && !is_numeric($stunde)) die($p->t('lvplan/stundeIstUngueltig')); if (isset($_GET['ver'])) $ver=$_GET['ver']; if (isset($_GET['grp'])) $grp=$_GET['grp']; if (isset($_GET['gruppe_kurzbz'])) $gruppe_kurzbz=$_GET['gruppe_kurzbz']; $datum_obj = new datum(); if(!$datum_obj->checkDatum($datum)) die($p->t('lvplan/datumIstUngueltig')); $stsem = getStudiensemesterFromDatum($datum); //Stundenplan $sql_query=" SELECT campus.vw_stundenplan.*, lehrfach.bezeichnung, vw_mitarbeiter.titelpre, vw_mitarbeiter.titelpost, vw_mitarbeiter.nachname, vw_mitarbeiter.vorname, (SELECT count(*) FROM public.tbl_studentlehrverband WHERE studiengang_kz=vw_stundenplan.studiengang_kz AND semester=vw_stundenplan.semester AND (verband=vw_stundenplan.verband OR vw_stundenplan.verband is null OR trim(vw_stundenplan.verband)='') AND (gruppe=vw_stundenplan.gruppe OR vw_stundenplan.gruppe is null OR trim(vw_stundenplan.gruppe)='') AND studiensemester_kurzbz=".$db->db_add_param($stsem).") as anzahl_lvb, (SELECT count(*) FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz=vw_stundenplan.gruppe_kurzbz AND studiensemester_kurzbz=".$db->db_add_param($stsem).") as anzahl_grp FROM campus.vw_stundenplan JOIN lehre.tbl_lehrveranstaltung as lehrfach ON (vw_stundenplan.lehrfach_id=lehrfach.lehrveranstaltung_id) JOIN campus.vw_mitarbeiter USING (uid) WHERE datum=".$db->db_add_param($datum)." AND stunde=".$db->db_add_param($stunde); if ($type=='lektor') { $sql_query.=" AND vw_stundenplan.uid=".$db->db_add_param($pers_uid); } elseif ($type=='ort' || $type=='lva') $sql_query.=" AND vw_stundenplan.ort_kurzbz=".$db->db_add_param($ort_kurzbz); else { if($stg_kz=='' || $sem=='') die('Fehlerhafte Parameteruebergabe'); if($type=="verband" && $stg_kz!='' && $sem!='') { // Studiengangsansicht $sql_query.=" AND vw_stundenplan.studiengang_kz=".$db->db_add_param($stg_kz)." AND (vw_stundenplan.semester=".$db->db_add_param($sem); if ($type=='student') $sql_query.=' OR vw_stundenplan.semester='.$db->db_add_param($sem+1); $sql_query.=')'; } else { // Pers. Ansicht $sql_query.=" AND EXISTS (SELECT 1 FROM campus.vw_student_lehrveranstaltung WHERE lehreinheit_id=vw_stundenplan.lehreinheit_id AND uid=".$db->db_add_param($pers_uid).")"; } // Manfred weiss nicht mehr warum, aber wir aktivieren 23-09-2009 // 01-10-2009: jetzt weiss ers wieder Grund: Student sieht sonst die uebergeordneten nicht /* if (isset($ver) && $ver!='0') $sql_query.=" AND (verband='$ver' OR verband IS NULL OR verband='0')"; if (isset($ver) && $grp!='0') $sql_query.=" AND (gruppe='$grp' OR gruppe IS NULL OR gruppe='0')"; */ } $sql_query.=' ORDER BY unr ASC, stg_kurzbz, vw_stundenplan.semester, verband, gruppe, gruppe_kurzbz LIMIT 100'; //echo $sql_query.'
'; $erg_stpl = $db->db_query($sql_query); $num_rows_stpl = $db->db_num_rows($erg_stpl); //Reservierungen $sql_query=" SELECT vw_reservierung.*, vw_mitarbeiter.titelpre, vw_mitarbeiter.titelpost, vw_mitarbeiter.vorname,vw_mitarbeiter.nachname FROM campus.vw_reservierung, campus.vw_mitarbeiter WHERE datum=".$db->db_add_param($datum)." AND stunde=".$db->db_add_param($stunde); if (isset($ort_kurzbz) && $type=='ort') $sql_query.=" AND vw_reservierung.ort_kurzbz=".$db->db_add_param($ort_kurzbz); if ($type=='lektor') $sql_query.=" AND vw_reservierung.uid=".$db->db_add_param($pers_uid); $sql_query.=" AND vw_reservierung.uid=vw_mitarbeiter.uid"; if ($type=='verband' || $type=='student') { $sql_query.=" AND studiengang_kz=".$db->db_add_param($stg_kz)." AND (semester=".$db->db_add_param($sem)." OR semester=0 OR semester IS NULL)"; } $sql_query.=' ORDER BY titel LIMIT 100'; //echo $sql_query.'
'; $erg_repl = $db->db_query($sql_query); $num_rows_repl = $db->db_num_rows($erg_repl); echo ' '.$p->t('lvplan/lehrveranstaltungsplanDetails').'

'.$p->t('lvplan/lehrveranstaltungsplan').' ⇒ '.$p->t('abgabetool/details').'

'.$p->t('abgabetool/datum').': '.htmlentities($datum_obj->formatDatum($datum, 'd.m.Y')).'
'.$p->t('global/stunde').': '.htmlentities($stunde).'

'; // LVPlan if ($num_rows_stpl>0) { echo ' '; $ort = new ort(); $i=0; while($row = $db->db_fetch_object($erg_stpl)) { $i++; $unr = $row->unr; $ortkurzbz = $row->ort_kurzbz; $lehrfachkurzbz = $row->lehrfach; $bezeichnung = $row->bezeichnung; $pers_kurzbz = $row->lektor; $titelpre = $row->titelpre; $titelpost = $row->titelpost; $pers_vorname = $row->vorname; $pers_nachname = $row->nachname; $pers_email = $row->uid.'@'.DOMAIN; $stgkurzbz = mb_strtoupper(trim($row->stg_typ.$row->stg_kurzbz)); $semester = trim($row->semester); $verband = trim($row->verband); $gruppe = trim($row->gruppe); $gruppe_kurzbz = trim($row->gruppe_kurzbz); $anzahl_lvb = trim($row->anzahl_lvb); $anzahl_grp = trim($row->anzahl_grp); $titel = trim($row->titel); $gesamtanzahl = ($anzahl_grp!=0?$anzahl_grp:$anzahl_lvb); $ort->load($ortkurzbz); echo ' '; } echo '
'.$p->t('lvplan/unr').' '.$p->t('lvaliste/lektor').' '.$p->t('lvplan/ort').' '.$p->t('lvaliste/lehrfach').' '.$p->t('global/bezeichnung').' '.$p->t('global/verband').' '.$p->t('lvplan/einheit').' '.$p->t('lvplan/info').'
'.$db->convert_html_chars($unr).' '.$db->convert_html_chars($titelpre.' '.$pers_vorname.' '.$pers_nachname.' '.$titelpost).' '.(!empty($ortkurzbz)?($ort->content_id!=''?''.$db->convert_html_chars($ortkurzbz).'':$db->convert_html_chars($ortkurzbz)):$db->convert_html_chars($ortkurzbz)).' '.$db->convert_html_chars($lehrfachkurzbz).' '.$db->convert_html_chars($bezeichnung).' '.(!is_null($semester) && !empty($semester)?'':''); echo $db->convert_html_chars($stgkurzbz.'-'.$semester.$verband.$gruppe); echo (!is_null($semester) && !empty($semester)?'':''); echo ' '.$db->convert_html_chars($gruppe_kurzbz).' '.$db->convert_html_chars($titel).'

'; } // Reservierungen if ($num_rows_repl>0) { echo '

'.$p->t('lvplan/reservierungen').'

'; echo ''; echo ''; $i=0; $ort = new ort(); while($row = $db->db_fetch_object($erg_repl)) { $i++; $titel=$row->titel; $ortkurzbz=$row->ort_kurzbz; $titelpre=$row->titelpre; $titelpost=$row->titelpost; $pers_vorname=$row->vorname; $pers_nachname=$row->nachname; $pers_email=$row->uid.'@'.DOMAIN; $beschreibung=$row->beschreibung; $ort->load($ortkurzbz); echo ''; echo ''; echo ''; echo ''; echo ''; } echo '
'.$p->t('global/titel').''.$p->t('lvplan/ort').''.$p->t('global/person').''.$p->t('global/beschreibung').'
'.$db->convert_html_chars($titel).''.(!empty($ortkurzbz)?($ort->content_id!=''?''.$db->convert_html_chars($ortkurzbz).'':$db->convert_html_chars($ortkurzbz)):$db->convert_html_chars($ortkurzbz)).''.$db->convert_html_chars($titelpre.' '.$pers_vorname.' '.$pers_nachname.' '.$titelpost).''.$db->convert_html_chars($beschreibung).'

'; } echo '

'.$p->t('lvplan/fehlerUndFeedback').' '.$p->t('lvplan/lvKoordinationsstelle').'.

'; ?>