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 .= '
';
- $table .= '' . User_Nick_render($usr) . ' ';
- $table .= '' . $usr['DECT'] . ' ';
- $table .= '' . $usr['jabber'] . ' ';
- if (in_array('admin_user', $privileges))
- $table .= 'edit ';
- else
- $table .= '' . User_Nick_render($usr) . ' ';
- $table .= ' ';
+ $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') . '&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(
- '%s ',
- $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(
- '%s '
- . 'Ändern ',
- 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(
- ' '
- . ' %s %s ',
- $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(' ' . ' %s %s ', $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", ' ', $question['Question'])
- ));
+ $unanswered_questions_table[] = array(
+ 'from' => User_Nick_render($user_source),
+ 'question' => str_replace("\n", " ", $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", " ", $question['Question']),
- 'answer_nick' => User_Nick_render($answer_user_source),
+ 'answered_by' => User_Nick_render($answer_user_source),
'answer' => str_replace("\n", " ", $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(
+ '' . _("Unanswered questions") . ' ',
+ table(array(
+ 'from' => _("From"),
+ 'question' => _("Question"),
+ 'answer' => _("Answer"),
+ 'actions' => ''
+ ), $unanswered_questions_table),
+ '' . _("Answered questions") . ' ',
+ 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 .= ' ' . date("Y-m-d H:i", $shift['start']) . ' - ' . date("H:i", $shift['end']) . ' ' . $room_array[$shift['RID']] . ' ';
- $shifts_table .= '' . $shift['name'];
+ $shifts_table_entry = array(
+ 'timeslot' => ' ' . date("Y-m-d H:i", $shift['start']) . ' - ' . date("H:i", $shift['end']) . ' ' . $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 .= ' ' . $type['name'] . ': ' . $needed_angel_types[$type['id']] . ' missing';
+ $shifts_table_entry['entries'] .= ' ' . $type['name'] . ': ' . $needed_angel_types[$type['id']] . ' missing';
}
- $shifts_table .= ' ';
+ $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 .= ' ';
- 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 b0ac66b1..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 '' . $new_messages . ' ';
+ if ($new_messages > 0)
+ return '' . $new_messages . ' ';
}
return '';
}
@@ -28,7 +29,6 @@ function user_messages() {
$to_select = html_select_key('to', 'to', $to_select_data, '');
- $messages_html = "";
$messages = sql_select("SELECT * FROM `Messages` WHERE `SUID`=" . sql_escape($user['UID']) . " OR `RUID`=" . sql_escape($user['UID']) . " ORDER BY `isRead`,`Datum` DESC");
foreach ($messages as $message) {
$sender_user_source = User($message['SUID']);
@@ -38,32 +38,43 @@ function user_messages() {
if ($receiver_user_source === false)
engelsystem_error(_("Unable to load user."));
- $messages_html .= sprintf(' %s %s %s %s %s ', ($message['isRead'] == 'N' ? ' class="new_message"' : ''), ($message['isRead'] == 'N' ? '•' : ''), date("Y-m-d H:i", $message['Datum']), User_Nick_render($sender_user_source), User_Nick_render($receiver_user_source), str_replace("\n", ' ', $message['Text']));
+ $messages_table_entry = array(
+ 'new' => $message['isRead'] == 'N' ? ' ' : '',
+ 'timestamp' => date("Y-m-d H:i", $message['Datum']),
+ 'from' => User_Nick_render($sender_user_source),
+ 'to' => User_Nick_render($receiver_user_source),
+ 'text' => str_replace("\n", ' ', $message['Text'])
+ );
- $messages_html .= '';
if ($message['RUID'] == $user['UID']) {
if ($message['isRead'] == 'N')
- $messages_html .= '' . _("mark as read") . ' ';
- } else {
- $messages_html .= '' . _("delete message") . ' ';
- }
- $messages_html .= ' ';
+ $messages_table_entry['actions'] = button(page_link_to("user_messages") . '&action=read&id=' . $message['id'], _("mark as read"), 'btn-xs');
+ } else
+ $messages_table_entry['actions'] = button(page_link_to("user_messages") . '&action=delete&id=' . $message['id'], _("delete message"), 'btn-xs');
+ $messages_table[] = $messages_table_entry;
}
-
- return template_render('../templates/user_messages.html', array(
- 'title' => messages_title(),
- 'link' => page_link_to("user_messages"),
- 'greeting' => msg() . sprintf(_("Hello %s, here can you leave messages for other angels"), User_Nick_render($user)) . ' ',
- 'messages' => $messages_html,
- 'new_label' => _("New"),
- 'date_label' => _("Date"),
- 'from_label' => _("Transmitted"),
- 'to_label' => _("Recipient"),
- 'text_label' => _("Message"),
- 'date' => date("Y-m-d H:i"),
+ $messages_table[] = array(
+ 'news' => '',
+ 'timestamp' => date("Y-m-d H:i"),
'from' => User_Nick_render($user),
- 'to_select' => $to_select,
- 'submit_label' => _("Save")
+ 'to' => $to_select,
+ 'text' => form_textarea('text', _("Message"), ''),
+ 'actions' => form_submit('submit', _("Save"))
+ );
+
+ return page_with_title(messages_title(), array(
+ msg(),
+ sprintf(_("Hello %s, here can you leave messages for other angels"), User_Nick_render($user)),
+ form(array(
+ table(array(
+ 'new' => _("New"),
+ 'timestamp' => _("Date"),
+ 'from' => _("Transmitted"),
+ 'to' => _("Recipient"),
+ 'text' => _("Message"),
+ 'actions' => ''
+ ), $messages_table)
+ ), page_link_to('user_messages') . '&action=send')
));
} else {
switch ($_REQUEST['action']) {
diff --git a/includes/pages/user_myshifts.php b/includes/pages/user_myshifts.php
index 333f9517..3a3f6712 100644
--- a/includes/pages/user_myshifts.php
+++ b/includes/pages/user_myshifts.php
@@ -23,7 +23,10 @@ function user_myshifts() {
success(_("Key changed."));
redirect(page_link_to('user_myshifts'));
}
- return template_render('../templates/user_myshifts_reset.html', array());
+ return page_with_title(_("Reset API key"), array(
+ error(_("If you reset the key, the url to your iCal- and JSON-export and your atom feed changes! You have to update it in every application using one of these exports."), true),
+ button(page_link_to('myshifts') . '&reset=ack', _("Continue"), 'btn-danger')
+ ));
} elseif (isset($_REQUEST['edit']) && preg_match("/^[0-9]*$/", $_REQUEST['edit'])) {
$id = $_REQUEST['edit'];
$shift = sql_select("SELECT
diff --git a/includes/pages/user_wakeup.php b/includes/pages/user_wakeup.php
deleted file mode 100644
index 4ac5c0b7..00000000
--- a/includes/pages/user_wakeup.php
+++ /dev/null
@@ -1,90 +0,0 @@
-getTimestamp();
- $bemerkung = strip_request_item_nl('Bemerkung');
- $ort = strip_request_item('Ort');
- $SQL = "INSERT INTO `Wecken` (`UID`, `Date`, `Ort`, `Bemerkung`) "
- . "VALUES ('" . sql_escape($user['UID']) . "', '"
- . sql_escape($date) . "', '" . sql_escape($ort) . "', " . "'"
- . sql_escape($bemerkung) . "')";
- sql_query($SQL);
- $html .= success(_("Entry saved."), true);
- } else
- $html .= error(_("Broken date!"), true);
- break;
-
- case 'delete' :
- if (isset ($_REQUEST['id']) && preg_match("/^[0-9]{1,11}$/", $_REQUEST['id']))
- $id = $_REQUEST['id'];
- else
- return error(_("Incomplete call, missing wake-up ID."), true);
-
- $wakeup = sql_select("SELECT * FROM `Wecken` WHERE `ID`=" . sql_escape($id) . " LIMIT 1");
- if (count($wakeup) > 0 && $wakeup[0]['UID'] == $user['UID']) {
- sql_query("DELETE FROM `Wecken` WHERE `ID`=" . sql_escape($id) . " LIMIT 1");
- $html .= success(_("Wake-up call deleted."), true);
- } else
- return error(_("No wake-up found."), true);
- break;
- }
- }
-
- $html .= '' . sprintf(_("Hello %s, here you can register for a wake-up call. Simply say when and where the angel should come to wake you."), User_Nick_render($user)) . '
';
- $html .= _("All ordered wake-up calls, next first.");
- $html .= '
-
-
- ' . _("Date") . '
- ' . _("Nick") . '
- ' . _("Place") . '
- ' . _("Notes") . '
-
-
- ';
-
- $wecken_source = sql_select("SELECT * FROM `Wecken` ORDER BY `Date` ASC");
- foreach($wecken_source as $wecken) {
- $html .= '';
- $html .= '' . date("Y-m-d H:i", $wecken['Date']) . ' ';
-
- $user_source = User($wecken['UID']);
- if($user_source === false)
- engelsystem_error("Unable to load user.");
-
- $html .= '' . User_Nick_render($user_source) . ' ';
- $html .= '' . $wecken['Ort'] . ' ';
- $html .= '' . $wecken['Bemerkung'] . ' ';
- if ($wecken['UID'] == $user['UID'])
- $html .= '" . _("delete") . ' ';
- else
- $html .= ' ';
- $html .= ' ';
- }
-
- $html .= '
' . _("Schedule a new wake-up here:");
-
- $html .= template_render('../templates/user_wakeup.html', array (
- 'wakeup_link' => page_link_to("user_wakeup"),
- 'date_text' => _("Date"),
- 'date_value' => date("Y-m-d H:i"),
- 'place_text' => _("Place"),
- 'comment_text' => _("Notes"),
- 'comment_value' => "Knock knock Leo, follow the white rabbit to the blue tent",
- 'submit_text' => _("Save")
- ));
- return $html;
-}
-?>
diff --git a/includes/sys_menu.php b/includes/sys_menu.php
index 830bd4e3..89c07572 100644
--- a/includes/sys_menu.php
+++ b/includes/sys_menu.php
@@ -54,7 +54,6 @@ function make_navigation() {
"angeltypes" => angeltypes_title(),
"user_messages" => messages_title() . ' ' . user_unread_messages(),
"user_questions" => questions_title(),
- "user_wakeup" => wakeup_title(),
"admin_arrive" => admin_arrive_title(),
"admin_active" => admin_active_title(),
"admin_user" => admin_user_title(),
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) {
';
}
+function form_hidden($name, $value) {
+ return ' ';
+}
+
/**
* Rendert ein Zahlenfeld mit Buttons zum verstellen
*/
diff --git a/public/index.php b/public/index.php
index 5f33bb67..abe8d075 100644
--- a/public/index.php
+++ b/public/index.php
@@ -58,7 +58,6 @@ require_once ('includes/pages/user_news.php');
require_once ('includes/pages/user_questions.php');
require_once ('includes/pages/user_settings.php');
require_once ('includes/pages/user_shifts.php');
-require_once ('includes/pages/user_wakeup.php');
require_once ('vendor/parsedown-0.9.0/Parsedown.php');
@@ -169,9 +168,6 @@ if (isset($_REQUEST['p']) && preg_match("/^[a-z0-9_]*$/i", $_REQUEST['p']) && (i
} elseif ($p == "user_questions") {
$title = questions_title();
$content = user_questions();
- } elseif ($p == "user_wakeup") {
- $title = wakeup_title();
- $content = user_wakeup();
} elseif ($p == "user_settings") {
$title = settings_title();
$content = user_settings();
diff --git a/public/vendor/bootstrap-3.2.0/css/theme1.css b/public/vendor/bootstrap-3.2.0/css/theme1.css
index 179ac12d..260b60e8 100644
--- a/public/vendor/bootstrap-3.2.0/css/theme1.css
+++ b/public/vendor/bootstrap-3.2.0/css/theme1.css
@@ -2689,16 +2689,16 @@ select[multiple].input-lg,
.btn-default {
color: white;
background-color: #424242;
- border-color: #424242; }
+ border-color: #282828; }
.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle {
color: white;
background-color: #282828;
- border-color: #232323; }
+ border-color: #090909; }
.btn-default:active, .btn-default.active, .open > .btn-default.dropdown-toggle {
background-image: none; }
.btn-default.disabled, .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled:active, .btn-default.disabled.active, .btn-default[disabled], .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled]:active, .btn-default[disabled].active, fieldset[disabled] .btn-default, fieldset[disabled] .btn-default:hover, fieldset[disabled] .btn-default:focus, fieldset[disabled] .btn-default:active, fieldset[disabled] .btn-default.active {
background-color: #424242;
- border-color: #424242; }
+ border-color: #282828; }
.btn-default .badge {
color: #424242;
background-color: white; }
@@ -2706,16 +2706,16 @@ select[multiple].input-lg,
.btn-primary {
color: white;
background-color: #428bca;
- border-color: #428bca; }
+ border-color: #282828; }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle {
color: white;
background-color: #3071a9;
- border-color: #2d6ca2; }
+ border-color: #090909; }
.btn-primary:active, .btn-primary.active, .open > .btn-primary.dropdown-toggle {
background-image: none; }
.btn-primary.disabled, .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled:active, .btn-primary.disabled.active, .btn-primary[disabled], .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled]:active, .btn-primary[disabled].active, fieldset[disabled] .btn-primary, fieldset[disabled] .btn-primary:hover, fieldset[disabled] .btn-primary:focus, fieldset[disabled] .btn-primary:active, fieldset[disabled] .btn-primary.active {
background-color: #428bca;
- border-color: #428bca; }
+ border-color: #282828; }
.btn-primary .badge {
color: #428bca;
background-color: white; }
@@ -2723,16 +2723,16 @@ select[multiple].input-lg,
.btn-success {
color: white;
background-color: #5cb85c;
- border-color: #5cb85c; }
+ border-color: #282828; }
.btn-success:hover, .btn-success:focus, .btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle {
color: white;
background-color: #449d44;
- border-color: #419641; }
+ border-color: #090909; }
.btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle {
background-image: none; }
.btn-success.disabled, .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled:active, .btn-success.disabled.active, .btn-success[disabled], .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled]:active, .btn-success[disabled].active, fieldset[disabled] .btn-success, fieldset[disabled] .btn-success:hover, fieldset[disabled] .btn-success:focus, fieldset[disabled] .btn-success:active, fieldset[disabled] .btn-success.active {
background-color: #5cb85c;
- border-color: #5cb85c; }
+ border-color: #282828; }
.btn-success .badge {
color: #5cb85c;
background-color: white; }
@@ -2740,16 +2740,16 @@ select[multiple].input-lg,
.btn-info {
color: white;
background-color: #5bc0de;
- border-color: #5bc0de; }
+ border-color: #282828; }
.btn-info:hover, .btn-info:focus, .btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle {
color: white;
background-color: #31b0d5;
- border-color: #2aabd2; }
+ border-color: #090909; }
.btn-info:active, .btn-info.active, .open > .btn-info.dropdown-toggle {
background-image: none; }
.btn-info.disabled, .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled:active, .btn-info.disabled.active, .btn-info[disabled], .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled]:active, .btn-info[disabled].active, fieldset[disabled] .btn-info, fieldset[disabled] .btn-info:hover, fieldset[disabled] .btn-info:focus, fieldset[disabled] .btn-info:active, fieldset[disabled] .btn-info.active {
background-color: #5bc0de;
- border-color: #5bc0de; }
+ border-color: #282828; }
.btn-info .badge {
color: #5bc0de;
background-color: white; }
@@ -2757,16 +2757,16 @@ select[multiple].input-lg,
.btn-warning {
color: white;
background-color: #f0ad4e;
- border-color: #f0ad4e; }
+ border-color: #282828; }
.btn-warning:hover, .btn-warning:focus, .btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle {
color: white;
background-color: #ec971f;
- border-color: #eb9316; }
+ border-color: #090909; }
.btn-warning:active, .btn-warning.active, .open > .btn-warning.dropdown-toggle {
background-image: none; }
.btn-warning.disabled, .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled:active, .btn-warning.disabled.active, .btn-warning[disabled], .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled]:active, .btn-warning[disabled].active, fieldset[disabled] .btn-warning, fieldset[disabled] .btn-warning:hover, fieldset[disabled] .btn-warning:focus, fieldset[disabled] .btn-warning:active, fieldset[disabled] .btn-warning.active {
background-color: #f0ad4e;
- border-color: #f0ad4e; }
+ border-color: #282828; }
.btn-warning .badge {
color: #f0ad4e;
background-color: white; }
@@ -2774,16 +2774,16 @@ select[multiple].input-lg,
.btn-danger {
color: white;
background-color: #d9534f;
- border-color: #d9534f; }
+ border-color: #282828; }
.btn-danger:hover, .btn-danger:focus, .btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle {
color: white;
background-color: #c9302c;
- border-color: #c12e2a; }
+ border-color: #090909; }
.btn-danger:active, .btn-danger.active, .open > .btn-danger.dropdown-toggle {
background-image: none; }
.btn-danger.disabled, .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled:active, .btn-danger.disabled.active, .btn-danger[disabled], .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled]:active, .btn-danger[disabled].active, fieldset[disabled] .btn-danger, fieldset[disabled] .btn-danger:hover, fieldset[disabled] .btn-danger:focus, fieldset[disabled] .btn-danger:active, fieldset[disabled] .btn-danger.active {
background-color: #d9534f;
- border-color: #d9534f; }
+ border-color: #282828; }
.btn-danger .badge {
color: #d9534f;
background-color: white; }
diff --git a/templates/admin_free.html b/templates/admin_free.html
deleted file mode 100644
index c5ea6eba..00000000
--- a/templates/admin_free.html
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
%title%
-
-
-
-
- Nickname
- DECT
- Jabber
- Edit
-
-
- %table%
-
-
-
\ No newline at end of file
diff --git a/templates/admin_groups.html b/templates/admin_groups.html
deleted file mode 100644
index 4bbb9d52..00000000
--- a/templates/admin_groups.html
+++ /dev/null
@@ -1,14 +0,0 @@
-
- Hallo %nick%, hier hast du die Möglichkeit Gruppenrechte zu ändern:
-
-
-
-
- Name
- Rechte
-
-
-
- %groups%
-
-
diff --git a/templates/admin_groups_edit_form.html b/templates/admin_groups_edit_form.html
deleted file mode 100644
index c1f2bd84..00000000
--- a/templates/admin_groups_edit_form.html
+++ /dev/null
@@ -1,14 +0,0 @@
-
\ No newline at end of file
diff --git a/templates/admin_question_answered.html b/templates/admin_question_answered.html
deleted file mode 100644
index 8801d58f..00000000
--- a/templates/admin_question_answered.html
+++ /dev/null
@@ -1,9 +0,0 @@
-
- %question_nick%
- %question%
- %answer_nick%
- %answer%
-
- Löschen
-
-
diff --git a/templates/admin_question_unanswered.html b/templates/admin_question_unanswered.html
deleted file mode 100644
index 066b7dcc..00000000
--- a/templates/admin_question_unanswered.html
+++ /dev/null
@@ -1,16 +0,0 @@
-
- %question_nick%
- %question%
-
-
-
- Löschen
-
diff --git a/templates/admin_questions.html b/templates/admin_questions.html
deleted file mode 100644
index 3608e232..00000000
--- a/templates/admin_questions.html
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
Fragen beantworten
-
Unbeantwortete Fragen:
-
-
-
- Von
- Frage
- Antwort
-
-
-
- %open_questions%
-
-
-
-
Beantwortete Fragen:
-
-
-
- Von
- Frage
- Von
- Antwort
-
-
-
- %answered_questions%
-
-
-
\ No newline at end of file
diff --git a/templates/admin_rooms_edit_form.html b/templates/admin_rooms_edit_form.html
deleted file mode 100644
index cd1506fa..00000000
--- a/templates/admin_rooms_edit_form.html
+++ /dev/null
@@ -1,59 +0,0 @@
-Raum und dafür benötigte Engel bearbeiten:
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/templates/admin_rooms_new_form.html b/templates/admin_rooms_new_form.html
deleted file mode 100644
index f386259c..00000000
--- a/templates/admin_rooms_new_form.html
+++ /dev/null
@@ -1,46 +0,0 @@
-Neuen Raum einrichten:
-
-
-
-
\ No newline at end of file
diff --git a/templates/admin_shift_preview.html b/templates/admin_shift_preview.html
deleted file mode 100644
index 99e6e27f..00000000
--- a/templates/admin_shift_preview.html
+++ /dev/null
@@ -1,20 +0,0 @@
-
\ No newline at end of file
diff --git a/templates/user_messages.html b/templates/user_messages.html
deleted file mode 100644
index e0c83544..00000000
--- a/templates/user_messages.html
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
%title%
- %greeting%
-
-
-
-
\ No newline at end of file
diff --git a/templates/user_myshifts_reset.html b/templates/user_myshifts_reset.html
deleted file mode 100644
index 5e28b74a..00000000
--- a/templates/user_myshifts_reset.html
+++ /dev/null
@@ -1,6 +0,0 @@
-
- Wenn Du Deinen Key zurück setzt, ändert sich der Link zu Deinem iCal- und JSON-Export, sowie zu dem Atom Feed! Du musst diesen dann an allen Stellen, wo Du ihn verwendest aktualisieren.
-
-
- Fortfahren »
-
diff --git a/templates/user_questions.html b/templates/user_questions.html
deleted file mode 100644
index 466d0c48..00000000
--- a/templates/user_questions.html
+++ /dev/null
@@ -1,41 +0,0 @@
-
- Beantwortete Fragen:
-
-
-
-
-
- Frage
-
-
- Von
-
-
- Antwort
-
-
-
-
-
-
-
- %answered_questions%
-
-
-
-
- Frage einen Erzengel:
-
-
-
-
-
\ No newline at end of file
diff --git a/templates/user_wakeup.html b/templates/user_wakeup.html
deleted file mode 100644
index bf2d5531..00000000
--- a/templates/user_wakeup.html
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/themes/theme1.scss b/themes/theme1.scss
index 74915432..2cd2519b 100644
--- a/themes/theme1.scss
+++ b/themes/theme1.scss
@@ -167,27 +167,28 @@ $btn-font-weight: normal;
$btn-default-color: #fff;
$btn-default-bg: lighten($gray-dark, 10%);
-$btn-default-border: #282828;
+
+$btn-default-border: darken($btn-default-bg, 10%);
$btn-primary-color: $btn-default-color;
$btn-primary-bg: $brand-primary;
-$btn-primary-border: $btn-primary-bg;
+$btn-primary-border: darken($btn-default-bg, 10%);
$btn-success-color: $btn-default-color;
$btn-success-bg: $brand-success;
-$btn-success-border: $btn-success-bg;
+$btn-success-border: darken($btn-default-bg, 10%);
$btn-info-color: $btn-default-color;
$btn-info-bg: $brand-info;
-$btn-info-border: $btn-info-bg;
+$btn-info-border: darken($btn-default-bg, 10%);
$btn-warning-color: $btn-default-color;
$btn-warning-bg: $brand-warning;
-$btn-warning-border: $btn-warning-bg;
+$btn-warning-border: darken($btn-default-bg, 10%);
$btn-danger-color: $btn-default-color;
$btn-danger-bg: $brand-danger;
-$btn-danger-border: $btn-danger-bg;
+$btn-danger-border: darken($btn-default-bg, 10%);
$btn-link-disabled-color: $gray-light;