diff --git a/cis/private/tools/notebook_registration.php b/cis/private/tools/notebook_registration.php
index 7b2203958..1faf16473 100644
--- a/cis/private/tools/notebook_registration.php
+++ b/cis/private/tools/notebook_registration.php
@@ -253,7 +253,7 @@
else if ($error == 3)
echo '
Die MAC Adresse ist bereits in Verwendung, bitte melden Sie sich bei der ITS its@technikum-wien.at
';
- if(isset($mac_result))
+ if(isset($mac_result) && $mac_result!='')
{
if($mac_result == 0)
{
diff --git a/content/fasoverlay.js.php b/content/fasoverlay.js.php
index a7acce21a..273be21c7 100644
--- a/content/fasoverlay.js.php
+++ b/content/fasoverlay.js.php
@@ -805,7 +805,7 @@ function StatistikPrintLVPlanungExcel()
var col;
col = tree.columns ? tree.columns["uid"] : "uid";
var uid=tree.view.getCellText(tree.currentIndex,col);
- var url = 'content/statistik/lvplanung..xls.php?uid='+uid+'&studiensemester_kurzbz='+studiensemester;
+ var url = 'content/statistik/lvplanung.xls.php?uid='+uid+'&studiensemester_kurzbz='+studiensemester;
}
window.open(url,'LV-Planung');
}
diff --git a/include/tw/vilesci_menu_main.inc.php b/include/tw/vilesci_menu_main.inc.php
index a1fbe94bd..d6ff8602e 100644
--- a/include/tw/vilesci_menu_main.inc.php
+++ b/include/tw/vilesci_menu_main.inc.php
@@ -75,6 +75,7 @@ $menu=array
'Stundenplan'=>array('name'=>'Stundenplan', 'link'=>'../cis/private/lvplan/index.html', 'target'=>'main'),
'Zeitwuensche'=>array('name'=>'Zeitwünsche', 'link'=>'lehre/zeitwuensche.php', 'target'=>'main'),
'LVPlanSync'=>array('name'=>'Sync', 'link'=>'../system/sync/index.html', 'target'=>'main'),
+ 'Ueberbuchungen'=>array('name'=>'Überbuchungen', 'link'=>'lehre/check/ueberbuchung.php', 'target'=>'main'),
//'Studenten'=>array('name'=>'Studenten', 'link'=>'lehre/lehrveranstaltung_frameset.html', 'target'=>'main'),
//'Insert'=>array('name'=>'Insert', 'link'=>'lehre/stdplan_insert.php', 'target'=>'main'),
//'Delete'=>array('name'=>'Delete', 'link'=>'lehre/stdplan_delete.php', 'target'=>'main'),
diff --git a/vilesci/lehre/check/ueberbuchung.php b/vilesci/lehre/check/ueberbuchung.php
new file mode 100644
index 000000000..d5ad32297
--- /dev/null
+++ b/vilesci/lehre/check/ueberbuchung.php
@@ -0,0 +1,203 @@
+
+ * Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
+ * Rudolf Hangl < rudolf.hangl@technikum-wien.at >
+ * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
+ */
+
+/*
+ * Prueft im Stundenplan ob die Personen in den zugeteilten Räumen Platz haben
+ */
+require_once('../../../config/vilesci.config.inc.php');
+require_once('../../../include/studiensemester.class.php');
+require_once('../../../include/functions.inc.php');
+require_once('../../../include/studiengang.class.php');
+require_once('../../../include/ort.class.php');
+
+if (!$db = new basis_db())
+ die('Es konnte keine Verbindung zum Server aufgebaut werden.');
+
+$beginn = (isset($_GET['beginn'])?$_GET['beginn']:'');
+$ende = (isset($_GET['ende'])?$_GET['ende']:'');
+$stg_kz = (isset($_GET['stg_kz'])?$_GET['stg_kz']:'');
+$dontloadcontent=false;
+
+$user = get_uid();
+loadVariables($user);
+if (empty($db_stpl_table))
+ die('Bitte die Variablen warten! db_stpl_table ist leer');
+
+echo '
+
+
+ LV-Plan - Überbuchungen
+
+
+
+
+
+
+LV-Plan Überbuchungen - '.$db_stpl_table.'
+';
+echo '';
+
+if($dontloadcontent)
+ exit;
+
+
+$ort_obj = new ort();
+$ort_obj->getAll();
+$ort = array();
+
+foreach ($ort_obj->result as $row)
+{
+ $ort[$row->ort_kurzbz]->max_person = $row->max_person;
+}
+$qry = "SELECT distinct datum, stunde, ort_kurzbz, studiensemester_kurzbz, vw_".$db_stpl_table.".studiengang_kz, vw_".$db_stpl_table.".semester, verband, gruppe, gruppe_kurzbz, UPPER(stg_typ || stg_kurzbz) as stg_kurzbz
+ FROM lehre.vw_".$db_stpl_table." JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrveranstaltung ON(tbl_lehreinheit.lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id)
+ WHERE datum>='".addslashes($beginn)."' AND datum<='".addslashes($ende)."'";
+if($stg_kz!='')
+ $qry.=" AND tbl_lehrveranstaltung.studiengang_kz='".addslashes($stg_kz)."'";
+
+$qry.=" ORDER BY datum, stunde, ort_kurzbz, studiensemester_kurzbz, studiengang_kz, semester, verband, gruppe, gruppe_kurzbz, stg_kurzbz";
+
+echo '
+
+
+ | Datum |
+ Stunde |
+ Ort |
+ Studenten aktuell (Plätze maximal) |
+ Gruppen (Studenten aktuell) |
+
+
+ ';
+
+//echo $qry;
+$lastdatum=0;
+$laststunde=0;
+$lastort=0;
+$anzahl_studenten=0;
+
+function getAnzahl($studiengang_kz, $semester, $verband, $gruppe, $gruppe_kurzbz, $studiensemester_kurzbz)
+{
+ global $db;
+ if($gruppe_kurzbz=='')
+ {
+ $qry = "SELECT count(*) as anzahl FROM public.tbl_studentlehrverband
+ WHERE studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'
+ AND studiengang_kz='".addslashes($studiengang_kz)."' AND
+ semester='".addslashes($semester)."'";
+ if($verband!='')
+ $qry.=" AND verband='".addslashes($verband)."'";
+ if($gruppe!='')
+ $qry.=" AND gruppe='".addslashes($gruppe)."'";
+ }
+ else
+ {
+ $qry = "SELECT count(*) as anzahl FROM public.tbl_benutzergruppe
+ WHERE studiensemester_kurzbz='".addslashes($studiensemester_kurzbz)."'
+ AND gruppe_kurzbz='".addslashes($gruppe_kurzbz)."'";
+ }
+ if($res_anz = $db->db_query($qry))
+ {
+ if($row_anz = $db->db_fetch_object($res_anz))
+ {
+ return $row_anz->anzahl;
+ }
+ }
+}
+$gruppen='';
+if($result = $db->db_query($qry))
+{
+ while($row = $db->db_fetch_object($result))
+ {
+ if($lastdatum==$row->datum && $laststunde==$row->stunde && $lastort==$row->ort_kurzbz)
+ {
+ //Solange alles gleich ist zusammenzaehlen
+ $anzahl = getAnzahl($row->studiengang_kz, $row->semester, $row->verband, $row->gruppe, $row->gruppe_kurzbz, $row->studiensemester_kurzbz);
+ $anzahl_studenten += $anzahl;
+ $gruppen .=($row->gruppe_kurzbz==''?$row->stg_kurzbz.$row->semester.$row->verband.$row->gruppe:$row->gruppe_kurzbz)." ($anzahl), ";
+ }
+ else
+ {
+ if($lastdatum!=0)
+ {
+ // wenn sich der Raum, Datum oder Stunde aendert, dann pruefen ob die Anzahl in den Raum passt
+ // und ggf eine Meldung ausgeben
+ $gruppen = mb_substr($gruppen, 0, mb_strlen($gruppen)-2);
+ if($anzahl_studenten>$ort[$lastort]->max_person)
+ {
+ echo "| $lastdatum | $laststunde | $lastort | $anzahl_studenten (".$ort[$lastort]->max_person.") | $gruppen |
";
+ }
+ $anzahl_studenten=0;
+ $gruppen='';
+ }
+
+ $anzahl = getAnzahl($row->studiengang_kz, $row->semester, $row->verband, $row->gruppe, $row->gruppe_kurzbz, $row->studiensemester_kurzbz);
+ $anzahl_studenten += $anzahl;
+ $gruppen .=($row->gruppe_kurzbz==''?$row->stg_kurzbz.$row->semester.$row->verband.$row->gruppe:$row->gruppe_kurzbz)." ($anzahl), ";
+ }
+ $lastdatum = $row->datum;
+ $laststunde = $row->stunde;
+ $lastort = $row->ort_kurzbz;
+ }
+}
+else
+{
+ echo "Fehler:".$qry;
+}
+
+echo '
';
+?>
+
+
\ No newline at end of file