From eefc0369e934d4f004bce3e713ff50e4b8675da3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Tue, 7 Dec 2010 15:58:24 +0000 Subject: [PATCH] Raummitteilung --- vilesci/lehre/raummitteilung.php | 265 +++++++++++++++++++++++++++++++ 1 file changed, 265 insertions(+) create mode 100644 vilesci/lehre/raummitteilung.php diff --git a/vilesci/lehre/raummitteilung.php b/vilesci/lehre/raummitteilung.php new file mode 100644 index 000000000..07f8f66d1 --- /dev/null +++ b/vilesci/lehre/raummitteilung.php @@ -0,0 +1,265 @@ +, + * Andreas Oesterreicher and + * Karl Burkhart . + */ +/* + * Raummitteilung + * + * Oeffnet ein E-Mail Fenster mit allen Personen die in einem bestimmten + * Zeitraum einem Raum zugeteilt sind. (Reservierung und LV-Plan) + * + * Dies dient dazu, die Personen im Falle eines Problemes in diesem Raum zu informieren + */ +require_once('../../config/vilesci.config.inc.php'); +require_once('../../include/ort.class.php'); +require_once('../../include/datum.class.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/variable.class.php'); + +?> + + + + Raummitteilung + + + + + + + + +

Raummitteilung

+loadVariables($user); + +echo '
'; + +echo 'Ort '; + +echo ' Von + + Stunde + Bis + + Stunde '; +echo ' '; +echo '
'; + +if(isset($_POST['show'])) +{ + $mails = array(); + $von = $datum_obj->formatDatum($von, 'Y-m-d'); + $bis = $datum_obj->formatDatum($bis, 'Y-m-d'); + + //LV-Plan + $qry = "SELECT distinct lehreinheit_id FROM + lehre.tbl_stundenplan + WHERE + tbl_stundenplan.datum>='".addslashes($von)."' AND tbl_stundenplan.datum<='".addslashes($bis)."' + AND NOT (tbl_stundenplan.datum='".addslashes($von)."' AND tbl_stundenplan.stunde<'".addslashes($von_stunde)."') + AND NOT (tbl_stundenplan.datum='".addslashes($bis)."' AND tbl_stundenplan.stunde>'".addslashes($bis_stunde)."') + AND tbl_stundenplan.ort_kurzbz='".addslashes($ort_kurzbz)."' + "; + + if($result = $db->db_query($qry)) + { + $lehreinheiten=array(); + while($row = $db->db_fetch_object($result)) + $lehreinheiten[]=$row->lehreinheit_id; + + if(count($lehreinheiten)>0) + { + // Studenten aus dem LV-Plan + $les = $db->implode4SQL($lehreinheiten); + $qry = "SELECT distinct uid FROM campus.vw_student_lehrveranstaltung WHERE lehreinheit_id IN($les)"; + if($result = $db->db_query($qry)) + { + while($row = $db->db_fetch_object($result)) + $mails[]=$row->uid.'@'.DOMAIN; + } + + //Lektoren aus dem LV-Plan + $qry = "SELECT distinct mitarbeiter_uid as uid FROM lehre.tbl_lehreinheitmitarbeiter WHERE lehreinheit_id IN($les)"; + if($result = $db->db_query($qry)) + { + while($row = $db->db_fetch_object($result)) + $mails[]=$row->uid.'@'.DOMAIN; + } + } + } + + //Reservierung + $qry = "SELECT * + FROM + campus.tbl_reservierung + WHERE + datum>='$von' AND datum<='$bis' + AND NOT (datum='$von' AND stunde<'$von_stunde') + AND NOT (datum='$bis' AND stunde>'$bis_stunde') + AND ort_kurzbz='".addslashes($ort_kurzbz)."'"; + if($result = $db->db_query($qry)) + { + while($row = $db->db_fetch_object($result)) + { + $stsem = getStudiensemesterFromDatum($row->datum); + //Reservierer + $mails[]=$row->uid.'@'.DOMAIN; + + if($row->studiengang_kz!=0 && $row->gruppe_kurzbz=='') + { + //Studierende aus Lehrverbandsgruppen + $qry = "SELECT + student_uid as uid + FROM + public.tbl_studentlehrverband + WHERE + studiensemester_kurzbz='".$stsem."' + AND studiengang_kz='".$row->studiengang_kz."'"; + if($row->semester!='') + $qry.=" AND semester='".$row->semester."'"; + if($row->verband!='') + $qry.=" AND verband='".$row->verband."'"; + if($row->gruppe!='') + $qry.=" AND gruppe='".$row->gruppe."'"; + + if($result_gruppe = $db->db_query($qry)) + { + while($row_gruppe = $db->db_fetch_object($result_gruppe)) + $mails[] = $row_gruppe->uid.'@'.DOMAIN; + } + } + elseif($row->gruppe_kurzbz!='') + { + //Studierende aus den Spezialgruppen + $qry = "SELECT + uid + FROM + public.tbl_benutzergruppe + WHERE + gruppe_kurzbz='".addslashes($row->gruppe_kurzbz)."' + AND studiensemester_kurzbz='".$stsem."'"; + if($result_gruppe = $db->db_query($qry)) + { + while($row_gruppe = $db->db_fetch_object($result_gruppe)) + $mails[] = $row_gruppe->uid.'@'.DOMAIN; + } + } + } + } + + //Zusammenfassen + $mails = array_unique($mails); + echo '
Anzahl der Empfänger: ',count($mails); + + echo '

E-Mail öffnen'; + echo " + "; +} +?> + + \ No newline at end of file