summaryrefslogtreecommitdiff
path: root/includes
diff options
context:
space:
mode:
Diffstat (limited to 'includes')
-rw-r--r--includes/helper/message_helper.php22
-rw-r--r--includes/pages/admin_news.php9
-rw-r--r--includes/view/Shifts_view.php70
3 files changed, 65 insertions, 36 deletions
diff --git a/includes/helper/message_helper.php b/includes/helper/message_helper.php
index 4fa0efe3..3d2b663a 100644
--- a/includes/helper/message_helper.php
+++ b/includes/helper/message_helper.php
@@ -1,7 +1,7 @@
<?php
/**
- * Gibt zwischengespeicherte Fehlermeldungen zurück und löscht den Zwischenspeicher
+ * Returns messages from session and removes them from the stack
*
* @return string
*/
@@ -16,7 +16,7 @@ function msg()
}
/**
- * Rendert eine Information
+ * Renders an information message
*
* @param string $msg
* @param bool $immediately
@@ -28,7 +28,19 @@ function info($msg, $immediately = false)
}
/**
- * Rendert eine Fehlermeldung
+ * Renders a warning message
+ *
+ * @param string $msg
+ * @param bool $immediately
+ * @return string
+ */
+function warning($msg, $immediately = false)
+{
+ return alert('warning', $msg, $immediately);
+}
+
+/**
+ * Renders an error message
*
* @param string $msg
* @param bool $immediately
@@ -40,7 +52,7 @@ function error($msg, $immediately = false)
}
/**
- * Rendert eine Erfolgsmeldung
+ * Renders a success message
*
* @param string $msg
* @param bool $immediately
@@ -52,7 +64,7 @@ function success($msg, $immediately = false)
}
/**
- * Renders an alert with given alert-* class.
+ * Renders an alert message with the given alert-* class.
*
* @param string $class
* @param string $msg
diff --git a/includes/pages/admin_news.php b/includes/pages/admin_news.php
index eb3a250e..7f912773 100644
--- a/includes/pages/admin_news.php
+++ b/includes/pages/admin_news.php
@@ -29,6 +29,15 @@ function admin_news()
switch ($request->input('action')) {
case 'edit':
$user_source = User($news['UID']);
+ if (
+ !in_array('admin_news_html', $privileges)
+ && strip_tags($news['Text']) != $news['Text']
+ ) {
+ $html .= warning(
+ _('This message contains HTML. After saving the post some formatting will be lost!'),
+ true
+ );
+ }
$html .= form(
[
diff --git a/includes/view/Shifts_view.php b/includes/view/Shifts_view.php
index 44c879d2..755fab74 100644
--- a/includes/view/Shifts_view.php
+++ b/includes/view/Shifts_view.php
@@ -122,39 +122,47 @@ function Shift_view($shift, $shifttype, $room, $angeltypes_source, ShiftSignupSt
$needed_angels .= Shift_view_render_needed_angeltype($needed_angeltype, $angeltypes, $shift, $user_shift_admin);
}
+ $content = [msg()];
+
+ if ($shift_signup_state->getState() == ShiftSignupState::COLLIDES) {
+ $content[] = info(_('This shift collides with one of your shifts.'), true);
+ }
+
+ if ($shift_signup_state->getState() == ShiftSignupState::SIGNED_UP) {
+ $content[] = info(_('You are signed up for this shift.'), true);
+ }
+
+ $buttons = [];
+ if ($shift_admin || $admin_shifttypes || $admin_rooms) {
+ $buttons = [
+ $shift_admin ? button(shift_edit_link($shift), glyph('pencil') . _('edit')) : '',
+ $shift_admin ? button(shift_delete_link($shift), glyph('trash') . _('delete')) : '',
+ $admin_shifttypes ? button(shifttype_link($shifttype), $shifttype['name']) : '',
+ $admin_rooms ? button(room_link($room), glyph('map-marker') . $room['Name']) : '',
+ ];
+ }
+ $buttons[] = button(user_link($user), '<span class="icon-icon_angel"></span> ' . _('My shifts'));
+ $content[] = buttons($buttons);
+
+ $content[] = Shift_view_header($shift, $room);
+ $content[] = div('row', [
+ div('col-sm-6', [
+ '<h2>' . _('Needed angels') . '</h2>',
+ '<div class="list-group">' . $needed_angels . '</div>'
+ ]),
+ div('col-sm-6', [
+ '<h2>' . _('Description') . '</h2>',
+ $parsedown->parse($shifttype['description'])
+ ])
+ ]);
+
+ if ($shift_admin) {
+ $content[] = Shift_editor_info_render($shift);
+ }
+
return page_with_title(
$shift['name'] . ' <small class="moment-countdown" data-timestamp="' . $shift['start'] . '">%c</small>',
- [
- msg(),
- $shift_signup_state->getState() == ShiftSignupState::COLLIDES
- ? info(_('This shift collides with one of your shifts.'), true)
- : '',
- $shift_signup_state->getState() == ShiftSignupState::SIGNED_UP
- ? info(_('You are signed up for this shift.'), true)
- : '',
- buttons(
- ($shift_admin || $admin_shifttypes || $admin_rooms) ? [
- $shift_admin ? button(shift_edit_link($shift), glyph('pencil') . _('edit')) : '',
- $shift_admin ? button(shift_delete_link($shift), glyph('trash') . _('delete')) : '',
- $admin_shifttypes ? button(shifttype_link($shifttype), $shifttype['name']) : '',
- $admin_rooms ? button(room_link($room), glyph('map-marker') . $room['Name']) : '',
- button(user_link($user), '<span class="icon-icon_angel"></span> ' . _('My shifts'))
- ] : [
- button(user_link($user), '<span class="icon-icon_angel"></span> ' . _('My shifts'))
- ]),
- Shift_view_header($shift, $room),
- div('row', [
- div('col-sm-6', [
- '<h2>' . _('Needed angels') . '</h2>',
- '<div class="list-group">' . $needed_angels . '</div>'
- ]),
- div('col-sm-6', [
- '<h2>' . _('Description') . '</h2>',
- $parsedown->parse($shifttype['description'])
- ])
- ]),
- $shift_admin ? Shift_editor_info_render($shift) : ''
- ]
+ $content
);
}