$theTemplate->clearTags(); $theTemplate->tag("user_hash", $user_hash); $theTemplate->tag("user_id", $user_id); $theTemplate->tag("show_id", $_GET['id']); $theTemplate->tag("personal", $personal); $theTemplate->tag("show_info", getShowInfoHTML($_GET['id'])); $theTemplate->tag("booking_info", $booking_info); $theTemplate->tag("screen", (string) $screen); $theTemplate->tag("legend", $legend); // Buchungs-Template ausgeben echo $theTemplate; } else { // Template laden $theTemplate = new Template("booking.tpl"); $theTemplate->load("MAILFORM"); $theTemplate->tag("post_email", ""); $theTemplate->tag("post_prename", ""); $theTemplate->tag("post_lasname", ""); // Fals das Formular schon abgeschickt wurde => Fehler auswertung if ($_POST['sended'] == 1) { $theTemplate->tag("post_email", killhtml($_POST['email'])); // eingebenen Wert vorausfüllen $theTemplate->tag("post_prename", killhtml($_POST['prename'])); // eingebenen Wert vorausfüllen $theTemplate->tag("post_lasname", killhtml($_POST['lastname'])); // eingebenen Wert vorausfüllen // Fehler behandlung if (!checkFormData($_POST['email'], "email", TRUE)) { echo '<div class="error" style="visibility: visible; position: absolute; top: 310px; left: 430px;"><span>Bitte tragen Sie eine gültige E-Mail-Adresse ein</span></div>'; } if (!checkFormData($_POST['prename'], "text", TRUE, "[a-zA-Z ]{2,50}")) {
<?php //Login-Include Dateien einbinden require_once INC_PATH . "inc_user_login.php"; // Wenn der Benutzer eingeloggt ist... if ($_SESSION["login"] == "ok") { // ... Weiterleitung zur Admin-Seite include ROOT_PATH . "data/admin.php"; // Sonst Login-Formular ausgeben } else { // Template laden $theTemplate = new Template("admin.tpl"); if (isset($_POST['login'])) { // Fehler-Template laden $theTemplate->load("LOGIN_ERROR"); $error = (string) $theTemplate; } else { $error = ""; } // Formular-Template laden und ausgeben $theTemplate->load("LOGIN"); $theTemplate->tag("error", $error); echo $theTemplate; } // Dynamische Titel erweiterung setzen $settings['title_ext'] = "Verwaltung";
$running_weeks = $sql->getData("running_weeks", "running_weeks_id", "WHERE `running_year` = '" . date("Y") . "' AND `movie_id` = '" . $movie['movie_id'] . "' AND (`running_week` = '" . $this_week . "' OR `running_week` = '" . ($this_week + 1) . "' )", 0, TRUE); $movie['running_weeks_id'] = array(); // Array initialisieren foreach ($running_weeks as $running_week) { // Die IDs aus den einzelnen Showwochen laden $movie['running_weeks_ids'][] = $running_week['running_weeks_id']; } // HTML Ausgabe für Timetable laden $all_now_movies .= getTimetableHTML($movie['running_weeks_ids']); } // Template für Jetzt im Kino-Seite laden $theTemplate = new Template("main.tpl"); $theTemplate->load("RESERVATION"); // Wochendaten ermitteln $week_data = getWeekData($this_week); $theTemplate->tag("start", $week_data[1][4]); // Wochenstart $theTemplate->tag("end", $week_data[1][3]); // Wochen-Ende $theTemplate->tag("number", $this_week); // Wochen-Nummer if ($all_now_movies != "") { $theTemplate->tag("movies", $all_now_movies); // Die Filme ins Template einbinden } else { // Movie-Templates laden $movieTemplate = new Template("movie.tpl"); $movieTemplate->load("NO_SHOWS"); $theTemplate->tag("movies", (string) $movieTemplate); // keine Vorstellungen gefunden-Template einbinden }
<?php // Saal Daten aus DB laden $screen_data = $sql->getData("screens", "*", "WHERE `screen_id` = '1'", 1); $screen = new ScreenRoom($screen_data['screen_seats']); // Template laden und ausgeben $theTemplate = new Template("main.tpl"); $theTemplate->load("SCREENROOM"); $theTemplate->tag("screen", $screen); echo $theTemplate;
$running_weeks = $sql->getData("running_weeks", "running_weeks_id", "WHERE `running_year` = '" . date("Y") . "' AND `movie_id` = '" . $movie['movie_id'] . "' AND `running_week` = '" . $show_week . "'", 0, TRUE); $movie['running_weeks_id'] = array(); // Array initialisieren foreach ($running_weeks as $running_week) { // Die IDs aus den einzelnen Showwochen laden $movie['running_weeks_ids'][] = $running_week['running_weeks_id']; } // HTML Ausgabe für Timetable laden $all_now_movies .= getTimetableHTML($movie['running_weeks_ids'], TRUE); } // Template für Jetzt im Kino-Seite laden $theTemplate = new Template("admin.tpl"); $theTemplate->load("SELECT_SHOW"); // Wochendaten ermitteln $week_data = getWeekData($show_week); $theTemplate->tag("start", $week_data[1][4]); // Wochenstart $theTemplate->tag("end", $week_data[1][3]); // Wochen-Ende $theTemplate->tag("number", $show_week); // Wochen-Nummer $theTemplate->tag("last", "?go=admin&week=" . ($show_week - 1)); // URL zur letzten Woche $theTemplate->tag("next", "?go=admin&week=" . ($show_week + 1)); // URL zur nächsten Woche if ($all_now_movies != "") { $theTemplate->tag("movies", $all_now_movies); // Die Filme ins Template einbinden } else { // Movie-Templates laden $movieTemplate = new Template("movie.tpl");
// Allgemeine Funktionen aufrufen getGoTo($_GET['go']); // Seiten-Template generieren $theTemplate = new Template("main.tpl"); $theTemplate->load("DOCTYPE"); // Doctype laden $template['doc'] = (string) $theTemplate; // Typecasting, da sonst als Referenz zwischengespeichert // Menüs laden for ($i = 1; $theTemplate->load("MENU" . $i); $i++) { $template['menu'][$i] = (string) $theTemplate; // Erlaubt theortisch unendlich viele Menüs, wenn diese in der Template-Datei eingetragen werden, genutzt wird allerdings nur eines } // Body erzeugen $theTemplate->load("BODY"); $theTemplate->tag("content", getContent($settings['goto'])); foreach ($template['menu'] as $number => $aMenu) { $theTemplate->tag("menu" . $number, $aMenu); } $template['body'] = (string) $theTemplate; // Haupt-Template laden $output = getMainTemplate(); $output = str_replace("{..body..}", $template['body'], $output); $output = str_replace("{..doctype..}", $template['doc'], $output); // Seite ausgeben echo $output; // DB-Objekt zerstören => Verbindung beenden unset($db); } else { echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html>
<?php // Aktuelle Kinowoche $show_week = date("W"); makeKinoWeek(&$show_week, date("w")); // Filme laden, die in dieser Woche laufen $movies_this_week = $sql->getData("running_weeks", "*", "WHERE `running_year` = '" . date("Y") . "' AND `running_week` = '" . $show_week . "'"); // Zufälligen Film auswählen if ($sql->wasGetSuccessful($movies_this_week)) { $random_number = rand(0, count($movies_this_week) - 1); // Zufallszahl $random_movie = getMovieHTML($movies_this_week[$random_number]['movie_id']); // Array Eintrag nach Zufallszahl auswählen } else { $random_movie = ""; } // Template laden und ausgeben $theTemplate = new Template("main.tpl"); $theTemplate->load("START"); $theTemplate->tag("movie", $random_movie); echo $theTemplate;
function getTimetableHTML($RUNNING_IDS, $ADMIN = FALSE) { global $sql; // Kinowochen der Running IDS ermitteln if (!is_array($RUNNING_IDS)) { $RUNNING_IDS = array($RUNNING_IDS); // Bei nur einer einzigen Running ID muss nicht extra ein Array übergeben werden } $kino_weeks = $sql->getData("running_weeks", "*", "WHERE `running_weeks_id` IN(" . implode(",", $RUNNING_IDS) . ") ORDER BY `running_week`"); $kino_weeks = $kino_weeks == FALSE ? array() : $kino_weeks; // Fehler abfangen, wenn keine running week gefunden wird // Template laden $theTemplate = new Template("movie.tpl"); // Für jede Woche durchgehen $all_show_weeks = ""; foreach ($kino_weeks as $kino_week) { // Wochendaten laden $week_data = getWeekData($kino_week['running_week']); // Spielzeiten laden $showtimes = $sql->getData("running_table", "*", "WHERE `running_weeks_id` = '" . $kino_week['running_weeks_id'] . "' ORDER BY `running_day`, `running_time`"); $showtimes = $showtimes == FALSE ? array() : $showtimes; // Alle Auführungen der Woche durchgehen $times = array(0 => array(), 1 => array(), 2 => array(), 3 => array(), 4 => array(), 5 => array(), 6 => array()); // Times Array initialisieren foreach ($showtimes as $show) { // Timestamp der Auffühung $showtimestamp = strtotime(date("Y-m-d", $week_data[0][$show['running_day']]) . $show['running_time']); // Unterscheidung zw. normaler und Admin ausgabe if ($ADMIN) { $theTemplate->load("SHOW"); $theTemplate->clearTags(); $theTemplate->tag("url", "?go=admin&id=" . $show['show_id']); } else { // Showtime Template laden und Tags umsetzen if ($showtimestamp >= time() + 60 * 45) { $theTemplate->load("SHOW"); $theTemplate->clearTags(); $theTemplate->tag("url", "?go=booking&id=" . $show['show_id']); } else { $theTemplate->load("SHOW_OLD"); $theTemplate->clearTags(); } } $theTemplate->tag("time", date("H:i", $showtimestamp)); $times[$show['running_day']][] = (string) $theTemplate; } // Showtime Separator laden $theTemplate->load("SHOW_SEPARATOR"); $theTemplate->clearTags(); $theSeparator = (string) $theTemplate; // Timetable Template laden und Tags umsetzen $theTemplate->load("SHOW_WEEK"); $theTemplate->clearTags(); $theTemplate->tag("start", $week_data[1][4]); $theTemplate->tag("end", $week_data[1][3]); $theTemplate->tag("so_times", implode($theSeparator, $times[0])); $theTemplate->tag("mo_times", implode($theSeparator, $times[1])); $theTemplate->tag("di_times", implode($theSeparator, $times[2])); $theTemplate->tag("mi_times", implode($theSeparator, $times[3])); $theTemplate->tag("do_times", implode($theSeparator, $times[4])); $theTemplate->tag("fr_times", implode($theSeparator, $times[5])); $theTemplate->tag("sa_times", implode($theSeparator, $times[6])); $theTemplate->tag("so_date", $week_data[1][0]); $theTemplate->tag("mo_date", $week_data[1][1]); $theTemplate->tag("di_date", $week_data[1][2]); $theTemplate->tag("mi_date", $week_data[1][3]); $theTemplate->tag("do_date", $week_data[1][4]); $theTemplate->tag("fr_date", $week_data[1][5]); $theTemplate->tag("sa_date", $week_data[1][6]); // Show Week hinten dran hängen $all_show_weeks .= (string) $theTemplate; } // Timetable Template laden $theTemplate->load("TIMETABLE"); $theTemplate->clearTags(); $theTemplate->tag("show_weeks", $all_show_weeks); // HTML zurückgeben return (string) $theTemplate; }
<?php // Demnächst-Filme aus der Tabelle laden $next_movies = $sql->getData("next", "*", "ORDER BY `next_position`"); $next_movies = $next_movies == FALSE ? array() : $next_movies; // Für alle Filme die Film-Daten laden und ausgeben $all_next_movies = ""; foreach ($next_movies as $movie) { // HTML Ausgabe für Film laden $all_next_movies .= getMovieHTML($movie['movie_id']); } // Template für Vorschau-Seite laden $theTemplate = new Template("main.tpl"); $theTemplate->load("NEXT"); $theTemplate->tag("movies", $all_next_movies); // Die Filme ins Template einbinden // Template ausgeben echo $theTemplate; // Dynamische Titel erweiterung setzen $settings['title_ext'] = "Demnächst im High Noon";
public function __toString() { // Template laden $theTemplate = new Template("screen.tpl"); // leeren String initialisieren $string_screen_room = ""; // Die Zeilen und Zeichen/Elemente durchgehen foreach ($this->screen_data as $aLine) { // Zeilen-Template laden $theTemplate->load("SCREEN_LINE_CONTAINER"); $theTemplate->clearTags(); $string_line = ""; // Die Zeichen/Elemente durchgehen foreach ($aLine as $aSeat) { $string_line .= (string) $aSeat; // jeweils einfach die String-Darstellung des Elements laden } $theTemplate->tag("seats", $string_line); // ins Zeilen Template einfügen $string_screen_room .= (string) $theTemplate; } // Container-Template für einen Vorführaum laden $theTemplate->load("SCREEN_CONTAINER"); $theTemplate->clearTags(); $theTemplate->tag("screen_room", $string_screen_room); // Die tatsächlichen Raum-Elemente einfügen // alles ausgeben return (string) $theTemplate; }