summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
authorPhilip Häusler <msquare@notrademark.de>2014-08-23 19:15:10 +0200
committerPhilip Häusler <msquare@notrademark.de>2014-08-23 19:15:10 +0200
commitf9e577352dd31f2846c3a340a1de82dd73961568 (patch)
treeb2997b76d98fc6b7ac1fa40ffe96d664b350f825 /includes
parent7f43f3bfe50a4bfbbaa74d52b889668354ad9fcf (diff)
remove html templates
Diffstat (limited to 'includes')
-rw-r--r--includes/pages/admin_free.php51
-rw-r--r--includes/pages/admin_groups.php87
-rw-r--r--includes/pages/admin_questions.php52
-rw-r--r--includes/pages/admin_shifts.php43
-rw-r--r--includes/pages/user_messages.php3
-rw-r--r--includes/sys_template.php4
6 files changed, 136 insertions, 104 deletions
diff --git a/includes/pages/admin_free.php b/includes/pages/admin_free.php
index 19a4c99f..836197db 100644
--- a/includes/pages/admin_free.php
+++ b/includes/pages/admin_free.php
@@ -29,7 +29,7 @@ function admin_free() {
$users = sql_select("SELECT `User`.* FROM `User` ${angeltypesearch} LEFT JOIN `ShiftEntry` ON `User`.`UID` = `ShiftEntry`.`UID` LEFT JOIN `Shifts` ON (`ShiftEntry`.`SID` = `Shifts`.`SID` AND `Shifts`.`start` < " . sql_escape(time()) . " AND `Shifts`.`end` > " . sql_escape(time()) . ") WHERE `User`.`Gekommen` = 1 AND `Shifts`.`SID` IS NULL GROUP BY `User`.`UID` ORDER BY `Nick`");
- $table = "";
+ $free_users_table = array();
if ($search == "")
$tokens = array();
else
@@ -46,24 +46,41 @@ function admin_free() {
if (! $match)
continue;
}
- $table .= '<tr>';
- $table .= '<td>' . User_Nick_render($usr) . '</td>';
- $table .= '<td>' . $usr['DECT'] . '</td>';
- $table .= '<td>' . $usr['jabber'] . '</td>';
- if (in_array('admin_user', $privileges))
- $table .= '<td><a href="' . page_link_to('admin_user') . '&amp;id=' . $usr['UID'] . '">edit</a></td>';
- else
- $table .= '<td>' . User_Nick_render($usr) . '</td>';
- $table .= '</tr>';
+ $free_users_table[] = array(
+ 'name' => User_Nick_render($usr),
+ 'shift_state' => User_shift_mode_render(User_shift_state($usr)),
+ 'dect' => $usr['DECT'],
+ 'jabber' => $usr['jabber'],
+ 'email' => $usr['email'],
+ 'actions' => in_array('admin_user', $privileges) ? button(page_link_to('admin_user') . '&amp;id=' . $usr['UID'], _("edit"), 'btn-xs') : ''
+ );
}
- return template_render('../templates/admin_free.html', array(
- 'title' => admin_free_title(),
- 'search' => $search,
- 'angeltypes' => html_select_key('angeltype', 'angeltype', $angel_types, $_REQUEST['angeltype']),
- 'confirmed_only' => isset($_REQUEST['confirmed_only']) ? 'checked' : '',
- 'table' => $table,
- 'link' => page_link_to('admin_free')
+ return page_with_title(admin_free_title(), array(
+ form(array(
+ div('row', array(
+ div('col-md-4', array(
+ form_text('search', _("Search"), $search)
+ )),
+ div('col-md-4', array(
+ form_select('angeltype', _("Angeltype"), $angel_types, $_REQUEST['angeltype'])
+ )),
+ div('col-md-2', array(
+ form_checkbox('confirmed_only', _("Only confirmed"), isset($_REQUEST['confirmed_only']))
+ )),
+ div('col-md-2', array(
+ form_submit('submit', _("Search"))
+ ))
+ ))
+ )),
+ table(array(
+ 'name' => _("Nick"),
+ 'shift_state' => '',
+ 'dect' => _("DECT"),
+ 'jabber' => _("Jabber"),
+ 'email' => _("E-Mail"),
+ 'actions' => ''
+ ), $free_users_table)
));
}
?>
diff --git a/includes/pages/admin_groups.php b/includes/pages/admin_groups.php
index 4d88e74e..3133cf8b 100644
--- a/includes/pages/admin_groups.php
+++ b/includes/pages/admin_groups.php
@@ -5,87 +5,76 @@ function admin_groups_title() {
function admin_groups() {
global $user;
-
+
$html = "";
$groups = sql_select("SELECT * FROM `Groups` ORDER BY `Name`");
- if (!isset ($_REQUEST["action"])) {
- $groups_html = "";
+ if (! isset($_REQUEST["action"])) {
+ $groups_table = array();
foreach ($groups as $group) {
- $groups_html .= sprintf(
- '<tr><td>%s</td>',
- $group['Name']
- );
$privileges = sql_select("SELECT * FROM `GroupPrivileges` JOIN `Privileges` ON (`GroupPrivileges`.`privilege_id` = `Privileges`.`id`) WHERE `group_id`=" . sql_escape($group['UID']));
- $privileges_html = array ();
-
+ $privileges_html = array();
+
foreach ($privileges as $priv)
$privileges_html[] = $priv['name'];
-
- $groups_html .= sprintf(
- '<td>%s</td>'
- . '<td><a href="%s&action=edit&id=%s">Ändern</a></td>',
- join(', ', $privileges_html),
- page_link_to("admin_groups"),
- $group['UID']
+
+ $groups_table[] = array(
+ 'name' => $group['Name'],
+ 'privileges' => join(', ', $privileges_html),
+ 'actions' => button(page_link_to('admin_groups') . '&action=edit&id=' . $group['UID'], _("edit"), 'btn-xs')
);
}
-
- return template_render('../templates/admin_groups.html', array (
- 'nick' => User_Nick_render($user),
- 'groups' => $groups_html
+
+ return page_with_title(admin_groups_title(), array(
+ table(array(
+ 'name' => _("Name"),
+ 'privileges' => _("Privileges"),
+ 'actions' => ''
+ ), $groups_table)
));
} else {
switch ($_REQUEST["action"]) {
- case 'edit' :
- if (isset ($_REQUEST['id']) && preg_match("/^-[0-9]{1,11}$/", $_REQUEST['id']))
+ case 'edit':
+ if (isset($_REQUEST['id']) && preg_match("/^-[0-9]{1,11}$/", $_REQUEST['id']))
$id = $_REQUEST['id'];
else
return error("Incomplete call, missing Groups ID.", true);
-
+
$room = sql_select("SELECT * FROM `Groups` WHERE `UID`=" . sql_escape($id) . " LIMIT 1");
if (count($room) > 0) {
- list ($room) = $room;
+ list($room) = $room;
$privileges = sql_select("SELECT `Privileges`.*, `GroupPrivileges`.`group_id` FROM `Privileges` LEFT OUTER JOIN `GroupPrivileges` ON (`Privileges`.`id` = `GroupPrivileges`.`privilege_id` AND `GroupPrivileges`.`group_id`=" . sql_escape($id) . ") ORDER BY `Privileges`.`name`");
$privileges_html = "";
- foreach ($privileges as $priv)
- $privileges_html .= sprintf(
- '<tr><td><input type="checkbox" '
- . 'name="privileges[]" value="%s" %s />'
- . '</td> <td>%s</td> <td>%s</td></tr>',
- $priv['id'],
- ($priv['group_id'] != ""
- ? 'checked="checked"'
- : ''),
- $priv['name'],
- $priv['desc']
- );
-
- $html .= template_render('../templates/admin_groups_edit_form.html', array (
- 'link' => page_link_to("admin_groups"),
- 'id' => $id,
- 'privileges' => $privileges_html
+ $privileges_form = array();
+ foreach ($privileges as $priv) {
+ $privileges_form[] = form_checkbox('privileges[]', $priv['desc'] . ' (' . $priv['name'] . ')', $priv['group_id'] != "", $priv['id']);
+ $privileges_html .= sprintf('<tr><td><input type="checkbox" ' . 'name="privileges[]" value="%s" %s />' . '</td> <td>%s</td> <td>%s</td></tr>', $priv['id'], ($priv['group_id'] != "" ? 'checked="checked"' : ''), $priv['name'], $priv['desc']);
+ }
+
+ $privileges_form[] = form_submit('submit', _("Save"));
+ $html .= page_with_title(_("Edit group"), array(
+ form($privileges_form, page_link_to('admin_groups') . '&action=save&id=' . $id)
));
} else
return error("No Group found.", true);
break;
-
- case 'save' :
- if (isset ($_REQUEST['id']) && preg_match("/^-[0-9]{1,11}$/", $_REQUEST['id']))
+
+ case 'save':
+ if (isset($_REQUEST['id']) && preg_match("/^-[0-9]{1,11}$/", $_REQUEST['id']))
$id = $_REQUEST['id'];
else
return error("Incomplete call, missing Groups ID.", true);
-
+
$room = sql_select("SELECT * FROM `Groups` WHERE `UID`=" . sql_escape($id) . " LIMIT 1");
- if (!is_array($_REQUEST['privileges']))
- $_REQUEST['privileges'] = array ();
+ if (! is_array($_REQUEST['privileges']))
+ $_REQUEST['privileges'] = array();
if (count($room) > 0) {
- list ($room) = $room;
+ list($room) = $room;
sql_query("DELETE FROM `GroupPrivileges` WHERE `group_id`=" . sql_escape($id));
$privilege_names = array();
foreach ($_REQUEST['privileges'] as $priv) {
if (preg_match("/^[0-9]{1,}$/", $priv)) {
$group_privileges_source = sql_select("SELECT * FROM `Privileges` WHERE `id`=" . sql_escape($priv) . " LIMIT 1");
- if(count($group_privileges_source) > 0) {
+ if (count($group_privileges_source) > 0) {
sql_query("INSERT INTO `GroupPrivileges` SET `group_id`=" . sql_escape($id) . ", `privilege_id`=" . sql_escape($priv));
$privilege_names[] = $group_privileges_source[0]['name'];
}
diff --git a/includes/pages/admin_questions.php b/includes/pages/admin_questions.php
index 8bdde714..1b4b9970 100644
--- a/includes/pages/admin_questions.php
+++ b/includes/pages/admin_questions.php
@@ -20,24 +20,26 @@ function admin_questions() {
global $user;
if (! isset($_REQUEST['action'])) {
- $open_questions = "";
+ $unanswered_questions_table = array();
$questions = sql_select("SELECT * FROM `Questions` WHERE `AID` IS NULL");
foreach ($questions as $question) {
$user_source = User($question['UID']);
if ($user_source === false)
engelsystem_error("Unable to load user.");
- $open_questions .= template_render('../templates/admin_question_unanswered.html', array(
- 'question_nick' => User_Nick_render($user_source),
- 'question_id' => $question['QID'],
- 'link' => page_link_to("admin_questions"),
- 'question' => str_replace("\n", '<br />', $question['Question'])
- ));
+ $unanswered_questions_table[] = array(
+ 'from' => User_Nick_render($user_source),
+ 'question' => str_replace("\n", "<br />", $question['Question']),
+ 'answer' => form(array(
+ form_textarea('answer', _("Answer"), ''),
+ form_submit('submit', _("Save"))
+ ), page_link_to('admin_questions') . '&action=answer&id=' . $question['QID']),
+ 'actions' => button(page_link_to("admin_questions") . '&action=delete&id=' . $question['QID'], _("delete"), 'btn-xs')
+ );
}
- $answered_questions = "";
+ $answered_questions_table = array();
$questions = sql_select("SELECT * FROM `Questions` WHERE NOT `AID` IS NULL");
-
foreach ($questions as $question) {
$user_source = User($question['UID']);
if ($user_source === false)
@@ -46,21 +48,31 @@ function admin_questions() {
$answer_user_source = User($question['AID']);
if ($answer_user_source === false)
engelsystem_error("Unable to load user.");
-
- $answered_questions .= template_render('../templates/admin_question_answered.html', array(
- 'question_id' => $question['QID'],
- 'question_nick' => User_Nick_render($user_source),
+ $answered_questions_table[] = array(
+ 'from' => User_Nick_render($user_source),
'question' => str_replace("\n", "<br />", $question['Question']),
- 'answer_nick' => User_Nick_render($answer_user_source),
+ 'answered_by' => User_Nick_render($answer_user_source),
'answer' => str_replace("\n", "<br />", $question['Answer']),
- 'link' => page_link_to("admin_questions")
- ));
+ 'actions' => button(page_link_to("admin_questions") . '&action=delete&id=' . $question['QID'], _("delete"), 'btn-xs')
+ );
}
- return template_render('../templates/admin_questions.html', array(
- 'link' => page_link_to("admin_questions"),
- 'open_questions' => $open_questions,
- 'answered_questions' => $answered_questions
+ return page_with_title(admin_questions_title(), array(
+ '<h2>' . _("Unanswered questions") . '</h2>',
+ table(array(
+ 'from' => _("From"),
+ 'question' => _("Question"),
+ 'answer' => _("Answer"),
+ 'actions' => ''
+ ), $unanswered_questions_table),
+ '<h2>' . _("Answered questions") . '</h2>',
+ table(array(
+ 'from' => _("From"),
+ 'question' => _("Question"),
+ 'answered_by' => _("Answered by"),
+ 'answer' => _("Answer"),
+ 'actions' => ''
+ ), $answered_questions_table)
));
} else {
switch ($_REQUEST['action']) {
diff --git a/includes/pages/admin_shifts.php b/includes/pages/admin_shifts.php
index 7e3cc3b3..473022eb 100644
--- a/includes/pages/admin_shifts.php
+++ b/includes/pages/admin_shifts.php
@@ -189,15 +189,17 @@ function admin_shifts() {
} while ($shift_end < $end);
}
- $shifts_table = "";
+ $shifts_table = array();
foreach ($shifts as $shift) {
- $shifts_table .= '<tr><td><span class="glyphicon glyphicon-time"></span> ' . date("Y-m-d H:i", $shift['start']) . ' - ' . date("H:i", $shift['end']) . '<br /><span class="glyphicon glyphicon-map-marker"></span> ' . $room_array[$shift['RID']] . '</td>';
- $shifts_table .= '<td>' . $shift['name'];
+ $shifts_table_entry = array(
+ 'timeslot' => '<span class="glyphicon glyphicon-time"></span> ' . date("Y-m-d H:i", $shift['start']) . ' - ' . date("H:i", $shift['end']) . '<br /><span class="glyphicon glyphicon-map-marker"></span> ' . $room_array[$shift['RID']],
+ 'entries' => $shift['name']
+ );
foreach ($types as $type) {
if (isset($needed_angel_types[$type['id']]) && $needed_angel_types[$type['id']] > 0)
- $shifts_table .= '<br /><span class="icon-icon_angel"></span> <b>' . $type['name'] . ':</b> ' . $needed_angel_types[$type['id']] . ' missing';
+ $shifts_table_entry['entries'] .= '<br /><span class="icon-icon_angel"></span> <b>' . $type['name'] . ':</b> ' . $needed_angel_types[$type['id']] . ' missing';
}
- $shifts_table .= '</td></tr>';
+ $shifts_table[] = $shifts_table_entry;
}
// Fürs Anlegen zwischenspeichern:
@@ -206,18 +208,25 @@ function admin_shifts() {
$hidden_types = "";
foreach ($needed_angel_types as $type_id => $count)
- $hidden_types .= '<input type="hidden" name="type_' . $type_id . '" value="' . $count . '" />';
- return template_render('../templates/admin_shift_preview.html', array(
- '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' => implode(', ', $change_hours),
- 'angelmode' => $angelmode,
- 'needed_angel_types' => $hidden_types
+ $hidden_types .= form_hidden('type_' . $type_id, $count);
+ return page_with_title(_("Preview"), array(
+ form(array(
+ $hidden_types,
+ form_hidden('name', $name),
+ form_hidden('rid', $rid),
+ form_hidden('start', date("Y-m-d H:i", $start)),
+ form_hidden('end', date("Y-m-d H:i", $end)),
+ form_hidden('mode', $mode),
+ form_hidden('length', $length),
+ form_hidden('change_hours', implode(', ', $change_hours)),
+ form_hidden('angelmode', $angelmode),
+ form_submit('back', _("back")),
+ table(array(
+ 'timeslot' => _("Timeslot"),
+ 'entries' => _("Entries")
+ ), $shifts_table),
+ form_submit('submit', _("Save"))
+ ))
));
}
diff --git a/includes/pages/user_messages.php b/includes/pages/user_messages.php
index 5e0b9b85..d1c51d56 100644
--- a/includes/pages/user_messages.php
+++ b/includes/pages/user_messages.php
@@ -8,7 +8,8 @@ function user_unread_messages() {
if (isset($user)) {
$new_messages = sql_num_query("SELECT * FROM `Messages` WHERE isRead='N' AND `RUID`=" . sql_escape($user['UID']));
- return '<span class="badge">' . $new_messages . '</span>';
+ if ($new_messages > 0)
+ return '<span class="badge">' . $new_messages . '</span>';
}
return '';
}
diff --git a/includes/sys_template.php b/includes/sys_template.php
index 3366346b..be463139 100644
--- a/includes/sys_template.php
+++ b/includes/sys_template.php
@@ -42,6 +42,10 @@ function toolbar_dropdown($glyphicon, $label, $submenu) {
<ul class="dropdown-menu" role="menu">' . join("\n", $submenu) . '</ul></li>';
}
+function form_hidden($name, $value) {
+ return '<input type="hidden" name="' . $name . '" value="' . $value . '" />';
+}
+
/**
* Rendert ein Zahlenfeld mit Buttons zum verstellen
*/