From 7283c01f89e9d190cd19c7944cd6dcca1246ff42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Tue, 6 May 2008 14:06:27 +0000 Subject: [PATCH] --- cis/private/lvplan/raumsuche.php | 112 +++++++++++++++++++++++++------ include/ort.class.php | 23 ++++--- 2 files changed, 103 insertions(+), 32 deletions(-) diff --git a/cis/private/lvplan/raumsuche.php b/cis/private/lvplan/raumsuche.php index 172cc5fde..4c9b2c903 100644 --- a/cis/private/lvplan/raumsuche.php +++ b/cis/private/lvplan/raumsuche.php @@ -41,6 +41,35 @@ echo ' Reservierungsliste +

@@ -52,10 +81,10 @@ echo ' '; -echo ' - Datum* - Von* - Bis* +echo ' + Datum* + Von* + Bis* Raumtyp: '; if($sent) { - $ort = new ort($conn); - $ort->search($datum, $vonzeit, $biszeit, $raumtyp, $anzahlpersonen, true); - - echo '
'; - echo ''; - $i=0; - $datum_sec = $datum_obj->mktime_datum($datum); - foreach ($ort->result as $row) + $error=false; + if($datum=='') { - $i++; - echo ''; - echo ""; - echo ""; - echo ""; - echo ""; - echo ""; - echo ''; + echo "
Es muss ein Datum angegeben werden"; + $error = true; + } + if($vonzeit=='') + { + echo "
VON-Zeit muss angegeben werden"; + $error = true; + } + if($biszeit=='') + { + echo "
BIS-Zeit muss angegeben werden"; + $error = true; + } + + if(!$error) + { + //Von Zeit pruefen + if(!preg_match('/^[1-9]{2}:[0-9]{2}$/', $vonzeit)) + { + echo "
VON-Zeit muss im Format hh:mm (12:30) angegeben werden"; + $error = true; + } + //Bis Zeit pruefen + if(!preg_match('/^[1-9]{2}:[0-9]{2}$/', $biszeit)) + { + echo "
BIS-Zeit muss im Format hh:mm (12:30) angegeben werden"; + $error = true; + } + //Datum pruefen + if(!preg_match('/^([0-9]){2}\.([0-9]){2}\.([0-9]){4}$/', $datum)) + { + echo "
Das angegebene Datum ist ungueltig! Bitte geben Sie das Datum im Format dd.mm.YYYY (31.12.2008) ein"; + $error = true; + } + } + if(!$error) + { + $ort = new ort($conn); + $ort->search($datum, $vonzeit, $biszeit, $raumtyp, $anzahlpersonen, true); + + echo '
RaumBezeichnungNummerPersonenReservieren
$row->ort_kurzbz$row->bezeichnung$row->planbezeichnung$row->max_personReservieren
'; + echo ''; + $i=0; + $datum_sec = $datum_obj->mktime_datum($datum); + foreach ($ort->result as $row) + { + $i++; + echo ''; + echo ""; + echo ""; + echo ""; + echo ""; + echo ""; + echo ''; + } + echo '
RaumBezeichnungNummerPersonenReservieren
$row->ort_kurzbz$row->bezeichnung$row->planbezeichnung$row->max_personReservieren
'; } - echo ''; } ?> \ No newline at end of file diff --git a/include/ort.class.php b/include/ort.class.php index d6db875c4..86bc646cd 100644 --- a/include/ort.class.php +++ b/include/ort.class.php @@ -311,9 +311,9 @@ class ort //stundevon ermitteln $qry = "SELECT stunde FROM ( - SELECT stunde, extract(epoch from (beginn-('$zeit_von'::time))) AS delta FROM lehre.tbl_stunde + SELECT stunde, extract(epoch from (beginn-('".addslashes($zeit_von)."'::time))) AS delta FROM lehre.tbl_stunde UNION - SELECT stunde, extract(epoch from (ende-('$zeit_von'::time))) AS delta FROM lehre.tbl_stunde + SELECT stunde, extract(epoch from (ende-('".addslashes($zeit_von)."'::time))) AS delta FROM lehre.tbl_stunde ) foo WHERE delta>=0 ORDER BY delta LIMIT 1;"; if($result = pg_query($this->conn, $qry)) @@ -322,9 +322,9 @@ class ort //stundebis ermitteln $qry = "SELECT stunde FROM ( - SELECT stunde, extract(epoch from (beginn-('$zeit_bis'::time))) AS delta FROM lehre.tbl_stunde + SELECT stunde, extract(epoch from (beginn-('".addslashes($zeit_bis)."'::time))) AS delta FROM lehre.tbl_stunde UNION - SELECT stunde, extract(epoch from (ende-('$zeit_bis'::time))) AS delta FROM lehre.tbl_stunde + SELECT stunde, extract(epoch from (ende-('".addslashes($zeit_bis)."'::time))) AS delta FROM lehre.tbl_stunde ) foo WHERE delta>=0 ORDER BY delta LIMIT 1;"; if($result = pg_query($this->conn, $qry)) @@ -338,21 +338,22 @@ class ort public.tbl_ort JOIN public.tbl_ortraumtyp USING(ort_kurzbz) WHERE aktiv AND lehre AND ort_kurzbz NOT LIKE '\\\\_%'"; - if($reservierung) - $qry.=" AND reservieren"; + //derzeit noch nicht in verwendung + //if($reservierung) + // $qry.=" AND reservieren"; if($raumtyp!=null) - $qry.=" AND raumtyp_kurzbz='$raumtyp'"; + $qry.=" AND raumtyp_kurzbz='".addslashes($raumtyp)."'"; if($anzpersonen!=null) - $qry.=" AND (max_person>='$anzpersonen' OR max_person is null)"; + $qry.=" AND (max_person>='".addslashes($anzpersonen)."' OR max_person is null)"; $qry.=" AND ort_kurzbz NOT IN ( - SELECT ort_kurzbz FROM lehre.tbl_$db_table WHERE datum='$datum' AND stunde>='$stundevon' AND stunde<='$stundebis' + SELECT ort_kurzbz FROM lehre.tbl_$db_table WHERE datum='".addslashes($datum)."' AND stunde>='".addslashes($stundevon)."' AND stunde<='".addslashes($stundebis)."' UNION - SELECT ort_kurzbz FROM campus.tbl_reservierung WHERE datum='$datum' AND stunde>='$stundevon' AND stunde<='$stundebis' + SELECT ort_kurzbz FROM campus.tbl_reservierung WHERE datum='".addslashes($datum)."' AND stunde>='".addslashes($stundevon)."' AND stunde<='".addslashes($stundebis)."' ) "; - + //echo $qry; if($result = pg_query($this->conn, $qry)) { while($row = pg_fetch_object($result))