From d4c17f48f53dd1f123c06b2277dda55a291d6d97 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Philip=20H=C3=A4usler?=
Date: Wed, 12 Oct 2011 17:02:48 +0200
Subject: [PATCH] #35 admin_shifts: escape from preview
---
includes/pages/admin_shifts.php | 26 ++++++++++++++++++----
public/css/base.css | 4 ++++
templates/admin_shift_preview.html | 11 +++++++++-
templates/admin_shifts.html | 35 +++++++++++++++++++++---------
4 files changed, 61 insertions(+), 15 deletions(-)
diff --git a/includes/pages/admin_shifts.php b/includes/pages/admin_shifts.php
index 5dacb3ff..94c6f38a 100644
--- a/includes/pages/admin_shifts.php
+++ b/includes/pages/admin_shifts.php
@@ -11,6 +11,8 @@ function admin_shifts() {
$end = $start +24 * 60 * 60;
$mode = '';
$angelmode = '';
+ $length = '';
+ $change_hours = '';
// Locations laden
$rooms = sql_select("SELECT * FROM `Room` WHERE `show`='Y' ORDER BY `Name`");
@@ -24,7 +26,7 @@ function admin_shifts() {
foreach ($types as $type)
$needed_angel_types[$type['TID']] = 0;
- if (isset ($_REQUEST['preview'])) {
+ if (isset ($_REQUEST['preview']) || isset ($_REQUEST['back'])) {
// Name/Bezeichnung der Schicht, darf leer sein
$name = strip_request_item('name');
@@ -110,6 +112,10 @@ function admin_shifts() {
$msg .= error("Bitte wähle benötigte Engel.");
}
+ // Beim Zurück-Knopf das Formular zeigen
+ if (isset ($_REQUEST['back']))
+ $ok = false;
+
// Alle Eingaben in Ordnung
if ($ok) {
if ($angelmode == 'location') {
@@ -200,8 +206,20 @@ function admin_shifts() {
$_SESSION['admin_shifts_shifts'] = $shifts;
$_SESSION['admin_shifts_types'] = $needed_angel_types;
+ $hidden_types = "";
+ foreach ($needed_angel_types as $type_id => $count)
+ $hidden_types .= '';
return template_render('../templates/admin_shift_preview.html', array (
- 'shifts_table' => $shifts_table
+ 'shifts_table' => $shifts_table,
+ 'name' => $name,
+ 'rid' => $rid,
+ 'start' => date("Y-m-d H:i", $start),
+ 'end' => date("Y-m-d H:i", $end),
+ 'mode' => $mode,
+ 'length' => $length,
+ 'change_hours' => $change_hours,
+ 'angelmode' => $angelmode,
+ 'needed_angel_types' => $hidden_types
));
}
@@ -244,9 +262,9 @@ function admin_shifts() {
'end' => date("Y-m-d H:i", $end),
'mode_single_selected' => $_REQUEST['mode'] == 'single' ? 'checked="checked"' : '',
'mode_multi_selected' => $_REQUEST['mode'] == 'multi' ? 'checked="checked"' : '',
- 'mode_multi_length' => !empty($_REQUEST['length'])? $_REQUEST['length'] : '120',
+ 'mode_multi_length' => !empty ($_REQUEST['length']) ? $_REQUEST['length'] : '120',
'mode_variable_selected' => $_REQUEST['mode'] == 'variable' ? 'checked="checked"' : '',
- 'mode_variable_hours' => !empty($_REQUEST['change_hours'])? $_REQUEST['change_hours'] : '00, 04, 08, 10, 12, 14, 16, 18, 20, 22',
+ 'mode_variable_hours' => !empty ($_REQUEST['change_hours']) ? $_REQUEST['change_hours'] : '00, 04, 08, 10, 12, 14, 16, 18, 20, 22',
'angelmode_location_selected' => $_REQUEST['angelmode'] == 'location' ? 'checked="checked"' : '',
'angelmode_manually_selected' => $_REQUEST['angelmode'] == 'manually' ? 'checked="checked"' : ''
));
diff --git a/public/css/base.css b/public/css/base.css
index e93d2a9b..55af610f 100644
--- a/public/css/base.css
+++ b/public/css/base.css
@@ -133,6 +133,10 @@ fieldset p label {
width: 200px;
}
+fieldset p label[for] {
+ width: auto;
+}
+
fieldset p label input {
float: right;
margin: 2px 10px 0 0;
diff --git a/templates/admin_shift_preview.html b/templates/admin_shift_preview.html
index 30905618..e04313f6 100644
--- a/templates/admin_shift_preview.html
+++ b/templates/admin_shift_preview.html
@@ -17,7 +17,16 @@
-
+
+
+
+
+
+
+
+
+
+ %needed_angel_types%
\ No newline at end of file
diff --git a/templates/admin_shifts.html b/templates/admin_shifts.html
index bfcc4623..3840b76e 100644
--- a/templates/admin_shifts.html
+++ b/templates/admin_shifts.html
@@ -29,43 +29,58 @@
Modus:
Eine Schicht erstellen.
+
+
+
Mehrere Schichten erstellen:
+
+
-
+
Mehrere Schichten mit variabler Länge erstellen:
+
+
-
+
Benötigte Engel:
Benötigte Engel vom Ort übernehmen.
+
+
+
Es werden folgende Engel benötigt:
+
+
%angel_types%
-
+
\ No newline at end of file