setTitle(_c("room-reservation:Schedule of room bookings")); $page->show(); /** require_once("sec/secure.inc"); require_once("mod_rooms.inc"); TestConfig(); // Ist der User berechtigt? $bAllowAccess = false; foreach($user[groups] as $group) { foreach($cfgRooms["AllowedGroups"] as $allowed) { $bAllowAccess |= (($group == $allowed) == true); } } if(!$bAllowAccess and $cfgRooms["RestrictAccess"] == true) die_nice("Fehler: Sie sind nicht berechtigt, diese Seite zu benutzen. Wenden Sie sich an einen Administrator."); $bookings = new AllBookings(false); // Zeitstunden in Schulstunden umrechnen $lessons_begin = array_flip($cfgRooms["TimeslicesBegin"]); $lessons_end = array_flip($cfgRooms["TimeslicesEnd"]); $action = $_GET["action"]; $room = isset($_GET["room"]) ? $_GET["room"] : $cfgRooms["Rooms"][0]; $start = isset($_GET["start"]) ? $_GET["start"] : Monday(); $act = $user[act]; $id = isset($_POST["id"]) ? $_POST["id"] : $_GET["id"]; $class = isset($_POST["class"]) ? $_POST["class"] : $_GET["class"]; $room_form = isset($_POST["room_form"]) ? $_POST["room_form"] : $_GET["room"]; $date = isset($_POST["date"]) ? $_POST["date"] : $_GET["date"]; $timebegin = isset($_POST["timebegin"]) ? $_POST["timebegin"] : $_GET["timebegin"]; $timeend = isset($_POST["timeend"]) ? $_POST["timeend"] : (isset($_GET["timeend"]) ? $_GET["timeend"] : $cfgRooms["TimeslicesEnd"][$lessons_begin[$timebegin]]); // Standardmäßig auf einen Zeitraum später als Anfangszeit $reason = isset($_POST["reason"]) ? $_POST["reason"] : $_GET["reason"]; $submit = $_POST["submit"]; $cancel = $_POST["cancel"]; PageBlue("Raumbelegungsplan", "rooms_index"); // Formular anzeigen function ShowForm() { global $cfgRooms; global $act, $class, $room_form, $date, $timebegin, $timeend, $reason, $user; Title("Einen Raum buchen"); $form = "
Füllen Sie das Formular aus und klicken Sie dann auf die Schaltfläche „Raum buchen“.
"; echo $form; } if($action == "book") { ShowForm(); } // ...oder Buchung löschen? else if($action == "delete") { // Rausfinden, wo unsere gewünschte ID im Array steht for($n = 0; isset($bookings->objBookings[$n]->sqlData->id) and ($id != $bookings->objBookings[$n]->sqlData->id); $n++); // Auf Besitz oder Admin prüfen $bAdminMode = FALSE; $bAdminMode |= ($bookings->objBookings[$n]->UserIsOwner() and !$bookings->objBookings[$n]->rawData->fixed); // Benutzer dürfen keine festen Buchungen löschen $bAdminMode |= $bookings->UserIsAdmin(); if(!$bAdminMode) echo "Sie müssen bestätigen, dass Sie die Warnung über das Löschen von festen Buchungen zur Kenntnis genommen haben.
\n"; // Formular zur Bestätigung anzeigen echo "Wollen Sie diese Buchung löschen?
\n";
$bookings->PrintBooking($id);
echo "
\n";
echo "
".icona("dlg-info", 16, "bl")."Ihre Buchung wurde eingetragen.
\n"; } } else { Title("Raumbelegungen für den Raum $room in Woche ".date("W", $start)); } $nPrevWeek = strtotime("last monday", Monday($start)); // der Montag vor dem Montag in der Startwoche $nFirstWeek = Monday(); // der Montag in der aktuellen Woche $nLastWeek = strtotime("last monday", Monday($bookings->GetLastBookingDate())); $nNextWeek = strtotime("next monday", Monday($start)); // der Montag nach dem Montag der Startwoche echo ""; // Navigation für die Wochen ausgeben echo "Vorherige Woche | Aktuelle Woche | "; // Fünf Wochen zur direkten Anwahl anbieten for($i = 1; $i <= 5; $i++) { $nCurWeek = Monday(strtotime("$i week", $start)); echo "Woche ".date("W", $nCurWeek)." | "; } echo "Letzte Buchung | Nächste Woche
"; echo "