diff options
Diffstat (limited to 'includes/view')
-rw-r--r-- | includes/view/AngelTypes_view.php | 55 | ||||
-rw-r--r-- | includes/view/EventConfig_view.php | 21 | ||||
-rw-r--r-- | includes/view/Questions_view.php | 6 | ||||
-rw-r--r-- | includes/view/Rooms_view.php | 10 | ||||
-rw-r--r-- | includes/view/ShiftCalendarLane.php | 25 | ||||
-rw-r--r-- | includes/view/ShiftCalendarRenderer.php | 77 | ||||
-rw-r--r-- | includes/view/ShiftCalendarShiftRenderer.php | 41 | ||||
-rw-r--r-- | includes/view/ShiftEntry_view.php | 4 | ||||
-rw-r--r-- | includes/view/ShiftTypes_view.php | 25 | ||||
-rw-r--r-- | includes/view/ShiftsFilterRenderer.php | 13 | ||||
-rw-r--r-- | includes/view/Shifts_view.php | 36 | ||||
-rw-r--r-- | includes/view/UserAngelTypes_view.php | 38 | ||||
-rw-r--r-- | includes/view/UserDriverLicenses_view.php | 16 | ||||
-rw-r--r-- | includes/view/UserHintsRenderer.php | 13 | ||||
-rw-r--r-- | includes/view/User_view.php | 128 |
15 files changed, 415 insertions, 93 deletions
diff --git a/includes/view/AngelTypes_view.php b/includes/view/AngelTypes_view.php index 0458a5db..0a97488d 100644 --- a/includes/view/AngelTypes_view.php +++ b/includes/view/AngelTypes_view.php @@ -7,7 +7,8 @@ /** * Renders the angeltypes name as link. * - * @param AngelType $angeltype + * @param array $angeltype + * @return string */ function AngelType_name_render($angeltype) { @@ -17,8 +18,7 @@ function AngelType_name_render($angeltype) /** * Render angeltype membership state * - * @param UserAngelType $user_angeltype - * UserAngelType and AngelType + * @param array $user_angeltype UserAngelType and AngelType * @return string */ function AngelType_render_membership($user_angeltype) @@ -39,6 +39,10 @@ function AngelType_render_membership($user_angeltype) return glyph_bool(false); } +/** + * @param array $angeltype + * @return string + */ function AngelType_delete_view($angeltype) { return page_with_title(sprintf(_("Delete angeltype %s"), $angeltype['name']), [ @@ -57,10 +61,9 @@ function AngelType_delete_view($angeltype) /** * Render angeltype edit form. * - * @param Angeltype $angeltype - * The angeltype to edit - * @param boolean $supporter_mode - * Is the user a supporter of this angeltype? + * @param array $angeltype The angeltype to edit + * @param boolean $supporter_mode Is the user a supporter of this angeltype? + * @return string */ function AngelType_edit_view($angeltype, $supporter_mode) { @@ -103,6 +106,14 @@ function AngelType_edit_view($angeltype, $supporter_mode) /** * Renders the buttons for the angeltype view. + * + * @param array $angeltype + * @param array|null $user_angeltype + * @param bool $admin_angeltypes + * @param bool $supporter + * @param array|null $user_driver_license + * @param array|null $user + * @return string */ function AngelType_view_buttons($angeltype, $user_angeltype, $admin_angeltypes, $supporter, $user_driver_license, $user) { @@ -156,7 +167,11 @@ function AngelType_view_buttons($angeltype, $user_angeltype, $admin_angeltypes, /** * Renders and sorts the members of an angeltype into supporters, members and unconfirmed members. * - * @return [supporters, members, unconfirmed members] + * @param array $angeltype + * @param array $members + * @param bool $admin_user_angeltypes + * @param bool $admin_angeltypes + * @return array [supporters, members, unconfirmed members] */ function AngelType_view_members($angeltype, $members, $admin_user_angeltypes, $admin_angeltypes) { @@ -230,6 +245,11 @@ function AngelType_view_members($angeltype, $members, $admin_user_angeltypes, $a /** * Creates the needed member table headers according to given rights and settings from the angeltype. + * + * @param array $angeltype + * @param bool $supporter + * @param bool $admin_angeltypes + * @return array */ function AngelType_view_table_headers($angeltype, $supporter, $admin_angeltypes) { @@ -256,6 +276,16 @@ function AngelType_view_table_headers($angeltype, $supporter, $admin_angeltypes) /** * Render an angeltype page containing the member lists. + * + * @param array $angeltype + * @param array[] $members + * @param array $user_angeltype + * @param bool $admin_user_angeltypes + * @param bool $admin_angeltypes + * @param bool $supporter + * @param array $user_driver_license + * @param array $user + * @return string */ function AngelType_view( $angeltype, @@ -339,6 +369,8 @@ function AngelType_view( * Display the list of angeltypes. * * @param array $angeltypes + * @param bool $admin_angeltypes + * @return string */ function AngelTypes_list_view($angeltypes, $admin_angeltypes) { @@ -360,6 +392,9 @@ function AngelTypes_list_view($angeltypes, $admin_angeltypes) /** * Renders the about info for an angeltype. + * + * @param array $angeltype + * @return string */ function AngelTypes_about_view_angeltype($angeltype) { @@ -401,6 +436,10 @@ function AngelTypes_about_view_angeltype($angeltype) /** * Renders a site that contains every angeltype and its description, basically as an overview of the needed help types. + * + * @param array[] $angeltypes + * @param bool $user_logged_in + * @return string */ function AngelTypes_about_view($angeltypes, $user_logged_in) { diff --git a/includes/view/EventConfig_view.php b/includes/view/EventConfig_view.php index 9f24f9c9..3cb85e0b 100644 --- a/includes/view/EventConfig_view.php +++ b/includes/view/EventConfig_view.php @@ -3,7 +3,8 @@ /** * Shows basic event infos and countdowns. * - * @param EventConfig $event_config The event configuration + * @param array $event_config The event configuration + * @return string */ function EventConfig_countdown_page($event_config) { @@ -61,6 +62,9 @@ function EventConfig_countdown_page($event_config) /** * Converts event name and start+end date into a line of text. + * + * @param array $event_config + * @return string */ function EventConfig_info($event_config) { @@ -106,14 +110,13 @@ function EventConfig_info($event_config) /** * Render edit page for event config. * - * @param string $event_name - * The event name - * @param string $event_welcome_msg - * The welcome message - * @param date $buildup_start_date - * @param date $event_start_date - * @param date $event_end_date - * @param date $teardown_end_date + * @param string $event_name The event name + * @param string $event_welcome_msg The welcome message + * @param int $buildup_start_date unix time stamp + * @param int $event_start_date unix time stamp + * @param int $event_end_date unix time stamp + * @param int $teardown_end_date unix time stamp + * @return string */ function EventConfig_edit_view( $event_name, diff --git a/includes/view/Questions_view.php b/includes/view/Questions_view.php index 0716780c..3276baf6 100644 --- a/includes/view/Questions_view.php +++ b/includes/view/Questions_view.php @@ -1,5 +1,11 @@ <?php +/** + * @param array[] $open_questions + * @param array[] $answered_questions + * @param string $ask_action + * @return string + */ function Questions_view($open_questions, $answered_questions, $ask_action) { foreach ($open_questions as &$question) { diff --git a/includes/view/Rooms_view.php b/includes/view/Rooms_view.php index db883fa9..802b4c8e 100644 --- a/includes/view/Rooms_view.php +++ b/includes/view/Rooms_view.php @@ -2,6 +2,12 @@ use Engelsystem\ShiftCalendarRenderer; use Engelsystem\ShiftsFilterRenderer; +/** + * @param array $room + * @param ShiftsFilterRenderer $shiftsFilterRenderer + * @param ShiftCalendarRenderer $shiftCalendarRenderer + * @return string + */ function Room_view($room, ShiftsFilterRenderer $shiftsFilterRenderer, ShiftCalendarRenderer $shiftCalendarRenderer) { return page_with_title(glyph('map-marker') . $room['Name'], [ @@ -10,6 +16,10 @@ function Room_view($room, ShiftsFilterRenderer $shiftsFilterRenderer, ShiftCalen ]); } +/** + * @param array $room + * @return string + */ function Room_name_render($room) { global $privileges; diff --git a/includes/view/ShiftCalendarLane.php b/includes/view/ShiftCalendarLane.php index 529b6a74..774683bd 100644 --- a/includes/view/ShiftCalendarLane.php +++ b/includes/view/ShiftCalendarLane.php @@ -7,14 +7,25 @@ namespace Engelsystem; */ class ShiftCalendarLane { + /** @var int */ private $firstBlockStartTime; + /** @var int */ private $blockCount; + /** @var string */ private $header; + /** @var array[] */ private $shifts = []; + /** + * ShiftCalendarLane constructor. + * + * @param string $header + * @param int $firstBlockStartTime Unix timestamp + * @param int $blockCount + */ public function __construct($header, $firstBlockStartTime, $blockCount) { $this->header = $header; @@ -26,8 +37,7 @@ class ShiftCalendarLane * Adds a shift to the lane, but only if it fits. * Returns true on success. * - * @param Shift $shift - * The shift to add + * @param array $shift The shift to add * @return boolean true on success */ public function addShift($shift) @@ -42,8 +52,9 @@ class ShiftCalendarLane /** * Returns true if given shift fits into this lane. * - * @param Shift $shift - * The shift to fit into this lane + * @param array $newShift + * @return bool + * @internal param array $shift The shift to fit into this lane */ public function shiftFits($newShift) { @@ -55,11 +66,17 @@ class ShiftCalendarLane return true; } + /** + * @return string + */ public function getHeader() { return $this->header; } + /** + * @return array[] + */ public function getShifts() { return $this->shifts; diff --git a/includes/view/ShiftCalendarRenderer.php b/includes/view/ShiftCalendarRenderer.php index c875af39..e2a574e6 100644 --- a/includes/view/ShiftCalendarRenderer.php +++ b/includes/view/ShiftCalendarRenderer.php @@ -26,20 +26,35 @@ class ShiftCalendarRenderer */ const TIME_MARGIN = 1800; + /** @var array */ private $lanes; + /** @var ShiftsFilter */ private $shiftsFilter; - private $firstBlockStartTime = null; + /** @var int */ + private $firstBlockStartTime = 0; - private $lastBlockEndTime = null; + /** @var int */ + private $lastBlockEndTime = 0; + /** @var int */ private $blocksPerSlot = null; - private $needed_angeltypes = null; + /** @var array[] */ + private $needed_angeltypes = []; - private $shift_entries = null; + /** @var array[] */ + private $shift_entries = []; + /** + * ShiftCalendarRenderer constructor. + * + * @param array[] $shifts + * @param array[] $needed_angeltypes + * @param array[] $shift_entries + * @param ShiftsFilter $shiftsFilter + */ public function __construct($shifts, $needed_angeltypes, $shift_entries, ShiftsFilter $shiftsFilter) { $this->shiftsFilter = $shiftsFilter; @@ -53,10 +68,9 @@ class ShiftCalendarRenderer /** * Assigns the shifts to different lanes per room if they collide * - * @param Shift[] $shifts - * The shifts to assign + * @param array[] $shifts The shifts to assign * - * @return Returns an array that assigns a room_id to an array of ShiftCalendarLane containing the shifts + * @return array Returns an array that assigns a room_id to an array of ShiftCalendarLane containing the shifts */ private function assignShiftsToLanes($shifts) { @@ -78,6 +92,7 @@ class ShiftCalendarRenderer // Try to add the shift to the existing lanes for this room $shift_added = false; foreach ($lanes[$room_id] as $lane) { + /** @var ShiftCalendarLane $lane */ $shift_added = $lane->addShift($shift); if ($shift_added == true) { break; @@ -96,16 +111,25 @@ class ShiftCalendarRenderer return $lanes; } + /** + * @return int + */ public function getFirstBlockStartTime() { return $this->firstBlockStartTime; } + /** + * @return int + */ public function getLastBlockEndTime() { return $this->lastBlockEndTime; } + /** + * @return float + */ public function getBlocksPerSlot() { if ($this->blocksPerSlot == null) { @@ -117,7 +141,7 @@ class ShiftCalendarRenderer /** * Renders the whole calendar * - * @return the generated html + * @return string the generated html */ public function render() { @@ -132,6 +156,8 @@ class ShiftCalendarRenderer /** * Renders the lanes containing the shifts + * + * @return string */ private function renderShiftLanes() { @@ -148,8 +174,8 @@ class ShiftCalendarRenderer /** * Renders a single lane * - * @param ShiftCalendarLane $lane - * The lane to render + * @param ShiftCalendarLane $lane The lane to render + * @return string */ private function renderLane(ShiftCalendarLane $lane) { @@ -165,8 +191,12 @@ class ShiftCalendarRenderer $rendered_until += ShiftCalendarRenderer::SECONDS_PER_ROW; } - list($shift_height, $shift_html) = $shift_renderer->render($shift, $this->needed_angeltypes[$shift['SID']], - $this->shift_entries[$shift['SID']], $user); + list($shift_height, $shift_html) = $shift_renderer->render( + $shift, + $this->needed_angeltypes[$shift['SID']], + $this->shift_entries[$shift['SID']], + $user + ); $html .= $shift_html; $rendered_until += $shift_height * ShiftCalendarRenderer::SECONDS_PER_ROW; } @@ -185,11 +215,9 @@ class ShiftCalendarRenderer /** * Renders a tick/block for given time * - * @param int $time - * unix timestamp - * @param boolean $label - * Should time labels be generated? - * @return rendered tick html + * @param int $time unix timestamp + * @param boolean $label Should time labels be generated? + * @return string rendered tick html */ private function renderTick($time, $label = false) { @@ -213,6 +241,8 @@ class ShiftCalendarRenderer /** * Renders the left time lane including hour/day ticks + * + * @return string */ private function renderTimeLane() { @@ -228,6 +258,10 @@ class ShiftCalendarRenderer return div('lane time', $time_slot); } + /** + * @param array[] $shifts + * @return int + */ private function calcFirstBlockStartTime($shifts) { $start_time = $this->shiftsFilter->getEndTime(); @@ -239,6 +273,10 @@ class ShiftCalendarRenderer return ShiftCalendarRenderer::SECONDS_PER_ROW * floor(($start_time - ShiftCalendarRenderer::TIME_MARGIN) / ShiftCalendarRenderer::SECONDS_PER_ROW); } + /** + * @param array[] $shifts + * @return int + */ private function calcLastBlockEndTime($shifts) { $end_time = $this->shiftsFilter->getStartTime(); @@ -250,6 +288,9 @@ class ShiftCalendarRenderer return ShiftCalendarRenderer::SECONDS_PER_ROW * ceil(($end_time + ShiftCalendarRenderer::TIME_MARGIN) / ShiftCalendarRenderer::SECONDS_PER_ROW); } + /** + * @return int + */ private function calcBlocksPerSlot() { return ceil(($this->getLastBlockEndTime() - $this->getFirstBlockStartTime()) / ShiftCalendarRenderer::SECONDS_PER_ROW); @@ -257,6 +298,8 @@ class ShiftCalendarRenderer /** * Renders a legend explaining the shift coloring + * + * @return string */ private function renderLegend() { diff --git a/includes/view/ShiftCalendarShiftRenderer.php b/includes/view/ShiftCalendarShiftRenderer.php index 64421637..1f6ceef8 100644 --- a/includes/view/ShiftCalendarShiftRenderer.php +++ b/includes/view/ShiftCalendarShiftRenderer.php @@ -7,14 +7,14 @@ namespace Engelsystem; */ class ShiftCalendarShiftRenderer { - /** * Renders a shift * - * @param Shift $shift - * The shift to render - * @param User $user - * The user who is viewing the shift calendar + * @param array $shift The shift to render + * @param array $needed_angeltypes + * @param array $shift_entries + * @param array $user The user who is viewing the shift calendar + * @return array */ public function render($shift, $needed_angeltypes, $shift_entries, $user) { @@ -53,6 +53,10 @@ class ShiftCalendarShiftRenderer ]; } + /** + * @param ShiftSignupState $shiftSignupState + * @return string + */ private function classForSignupState(ShiftSignupState $shiftSignupState) { switch ($shiftSignupState->getState()) { @@ -72,9 +76,18 @@ class ShiftCalendarShiftRenderer case ShiftSignupState::FREE: return 'danger'; + default: + return ''; } } + /** + * @param array $shift + * @param array[] $needed_angeltypes + * @param array[] $shift_entries + * @param array $user + * @return array + */ private function renderShiftNeededAngeltypes($shift, $needed_angeltypes, $shift_entries, $user) { global $privileges; @@ -88,6 +101,7 @@ class ShiftCalendarShiftRenderer } $html = ""; + /** @var ShiftSignupState $shift_signup_state */ $shift_signup_state = null; foreach ($needed_angeltypes as $angeltype) { if ($angeltype['count'] > 0 || count($shift_entries_filtered[$angeltype['id']]) > 0) { @@ -131,12 +145,12 @@ class ShiftCalendarShiftRenderer /** * Renders a list entry containing the needed angels for an angeltype * - * @param Shift $shift - * The shift which is rendered - * @param Angeltype $angeltype - * The angeltype, containing informations about needed angeltypes and already signed up angels - * @param User $user - * The user who is viewing the shift calendar + * @param array $shift The shift which is rendered + * @param array[] $shift_entries + * @param array[] $angeltype The angeltype, containing informations about needed angeltypes + * and already signed up angels + * @param array $user The user who is viewing the shift calendar + * @return array */ private function renderShiftNeededAngeltype($shift, $shift_entries, $angeltype, $user) { @@ -150,6 +164,7 @@ class ShiftCalendarShiftRenderer ngettext("%d helper needed", "%d helpers needed", $shift_signup_state->getFreeEntries()), $shift_signup_state->getFreeEntries() ); + switch ($shift_signup_state->getState()) { case ShiftSignupState::ADMIN: case ShiftSignupState::FREE: @@ -207,8 +222,8 @@ class ShiftCalendarShiftRenderer /** * Renders the shift header * - * @param Shift $shift - * The shift + * @param array $shift The shift + * @return string */ private function renderShiftHead($shift) { diff --git a/includes/view/ShiftEntry_view.php b/includes/view/ShiftEntry_view.php index 592dc99c..92fb1528 100644 --- a/includes/view/ShiftEntry_view.php +++ b/includes/view/ShiftEntry_view.php @@ -9,7 +9,9 @@ * @param string $title * @param string $type * @param string $comment - * + * @param bool $freeloaded + * @param string $freeload_comment + * @param bool $user_admin_shifts * @return string */ function ShiftEntry_edit_view( diff --git a/includes/view/ShiftTypes_view.php b/includes/view/ShiftTypes_view.php index 827eec4d..e5064388 100644 --- a/includes/view/ShiftTypes_view.php +++ b/includes/view/ShiftTypes_view.php @@ -1,5 +1,9 @@ <?php +/** + * @param array $shifttype + * @return string + */ function ShiftType_name_render($shifttype) { global $privileges; @@ -9,6 +13,10 @@ function ShiftType_name_render($shifttype) return $shifttype['name']; } +/** + * @param array $shifttype + * @return string + */ function ShiftType_delete_view($shifttype) { return page_with_title(sprintf(_("Delete shifttype %s"), $shifttype['name']), [ @@ -24,6 +32,14 @@ function ShiftType_delete_view($shifttype) ]); } +/** + * @param string $name + * @param int $angeltype_id + * @param array[] $angeltypes + * @param string $description + * @param int|bool $shifttype_id + * @return string + */ function ShiftType_edit_view($name, $angeltype_id, $angeltypes, $description, $shifttype_id) { $angeltypes_select = [ @@ -48,6 +64,11 @@ function ShiftType_edit_view($name, $angeltype_id, $angeltypes, $description, $s ]); } +/** + * @param array $shifttype + * @param array $angeltype + * @return string + */ function ShiftType_view($shifttype, $angeltype) { $parsedown = new Parsedown(); @@ -75,6 +96,10 @@ function ShiftType_view($shifttype, $angeltype) ]); } +/** + * @param array[] $shifttypes + * @return string + */ function ShiftTypes_list_view($shifttypes) { foreach ($shifttypes as &$shifttype) { diff --git a/includes/view/ShiftsFilterRenderer.php b/includes/view/ShiftsFilterRenderer.php index 81c75e55..051843c2 100644 --- a/includes/view/ShiftsFilterRenderer.php +++ b/includes/view/ShiftsFilterRenderer.php @@ -4,7 +4,6 @@ namespace Engelsystem; class ShiftsFilterRenderer { - /** * The shiftFilter to render. * @@ -27,6 +26,11 @@ class ShiftsFilterRenderer */ private $days = []; + /** + * ShiftsFilterRenderer constructor. + * + * @param ShiftsFilter $shiftsFilter + */ public function __construct(ShiftsFilter $shiftsFilter) { $this->shiftsFilter = $shiftsFilter; @@ -35,7 +39,8 @@ class ShiftsFilterRenderer /** * Renders the filter. * - * @return Generated HTML + * @param string $link_base + * @return string Generated HTML */ public function render($link_base) { @@ -55,6 +60,8 @@ class ShiftsFilterRenderer /** * Should the filter display a day selection. + * + * @param string[] $days */ public function enableDaySelection($days) { @@ -64,6 +71,8 @@ class ShiftsFilterRenderer /** * Should the filter display a day selection. + * + * @return bool */ public function isDaySelectionEnabled() { diff --git a/includes/view/Shifts_view.php b/includes/view/Shifts_view.php index f091829f..41fde1e6 100644 --- a/includes/view/Shifts_view.php +++ b/includes/view/Shifts_view.php @@ -1,6 +1,10 @@ <?php use Engelsystem\ShiftSignupState; +/** + * @param array $shift + * @return string + */ function Shift_editor_info_render($shift) { $info = []; @@ -21,6 +25,12 @@ function Shift_editor_info_render($shift) return join('<br />', $info); } +/** + * @param array $shift + * @param array $angeltype + * @param array $user_angeltype + * @return string + */ function Shift_signup_button_render($shift, $angeltype, $user_angeltype = null) { global $user; @@ -44,6 +54,14 @@ function Shift_signup_button_render($shift, $angeltype, $user_angeltype = null) return ''; } +/** + * @param array $shift + * @param array $shifttype + * @param array $room + * @param array[] $angeltypes_source + * @param ShiftSignupState $shift_signup_state + * @return string + */ function Shift_view($shift, $shifttype, $room, $angeltypes_source, ShiftSignupState $shift_signup_state) { global $privileges; @@ -122,6 +140,13 @@ function Shift_view($shift, $shifttype, $room, $angeltypes_source, ShiftSignupSt ); } +/** + * @param array $needed_angeltype + * @param array $angeltypes + * @param array[] $shift + * @param bool $user_shift_admin + * @return string + */ function Shift_view_render_needed_angeltype($needed_angeltype, $angeltypes, $shift, $user_shift_admin) { global $user; @@ -166,11 +191,17 @@ function Shift_view_render_needed_angeltype($needed_angeltype, $angeltypes, $shi return $needed_angels; } +/** + * @param array $shift_entry + * @param bool $user_shift_admin + * @param bool $angeltype_supporter + * @return string + */ function Shift_view_render_shift_entry($shift_entry, $user_shift_admin, $angeltype_supporter) { $entry = User_Nick_render(User($shift_entry['UID'])); if ($shift_entry['freeloaded']) { - $entry = '<strike>' . $entry . '</strike>'; + $entry = '<del>' . $entry . '</del>'; } if ($user_shift_admin || $angeltype_supporter) { $entry .= ' <div class="btn-group">'; @@ -190,7 +221,8 @@ function Shift_view_render_shift_entry($shift_entry, $user_shift_admin, $angelty /** * Calc shift length in format 12:23h. * - * @param Shift $shift + * @param array $shift + * @return string */ function shift_length($shift) { diff --git a/includes/view/UserAngelTypes_view.php b/includes/view/UserAngelTypes_view.php index bef07720..9f978bc7 100644 --- a/includes/view/UserAngelTypes_view.php +++ b/includes/view/UserAngelTypes_view.php @@ -1,5 +1,12 @@ <?php +/** + * @param array $user_angeltype + * @param array $user + * @param array $angeltype + * @param bool $supporter + * @return string + */ function UserAngelType_update_view($user_angeltype, $user, $angeltype, $supporter) { return page_with_title($supporter ? _("Add supporter rights") : _("Remove supporter rights"), [ @@ -25,6 +32,10 @@ function UserAngelType_update_view($user_angeltype, $user, $angeltype, $supporte ]); } +/** + * @param array $angeltype + * @return string + */ function UserAngelTypes_delete_all_view($angeltype) { return page_with_title(_("Deny all users"), [ @@ -41,6 +52,10 @@ function UserAngelTypes_delete_all_view($angeltype) ]); } +/** + * @param array $angeltype + * @return string + */ function UserAngelTypes_confirm_all_view($angeltype) { return page_with_title(_("Confirm all users"), [ @@ -57,6 +72,12 @@ function UserAngelTypes_confirm_all_view($angeltype) ]); } +/** + * @param array $user_angeltype + * @param array $user + * @param array $angeltype + * @return string + */ function UserAngelType_confirm_view($user_angeltype, $user, $angeltype) { return page_with_title(_("Confirm angeltype for user"), [ @@ -73,6 +94,12 @@ function UserAngelType_confirm_view($user_angeltype, $user, $angeltype) ]); } +/** + * @param array $user_angeltype + * @param array $user + * @param array $angeltype + * @return string + */ function UserAngelType_delete_view($user_angeltype, $user, $angeltype) { return page_with_title(_("Remove angeltype"), [ @@ -89,6 +116,12 @@ function UserAngelType_delete_view($user_angeltype, $user, $angeltype) ]); } +/** + * @param array $angeltype + * @param array[] $users_source + * @param int $user_id + * @return string + */ function UserAngelType_add_view($angeltype, $users_source, $user_id) { $users = []; @@ -109,6 +142,11 @@ function UserAngelType_add_view($angeltype, $users_source, $user_id) ]); } +/** + * @param array $user + * @param array $angeltype + * @return string + */ function UserAngelType_join_view($user, $angeltype) { return page_with_title(sprintf(_("Become a %s"), $angeltype['name']), [ diff --git a/includes/view/UserDriverLicenses_view.php b/includes/view/UserDriverLicenses_view.php index 5b203c9c..3241ade5 100644 --- a/includes/view/UserDriverLicenses_view.php +++ b/includes/view/UserDriverLicenses_view.php @@ -3,12 +3,9 @@ /** * Edit a user's driving license information. * - * @param User $user_source - * The user - * @param bool $wants_to_drive - * true, if the user wants to drive - * @param UserDriverLicense $user_driver_license - * The user driver license + * @param array $user_source The user + * @param bool $wants_to_drive true, if the user wants to drive + * @param array $user_driver_license The user driver license * @return string */ function UserDriverLicense_edit_view($user_source, $wants_to_drive, $user_driver_license) @@ -52,13 +49,14 @@ function UserDriverLicense_edit_view($user_source, $wants_to_drive, $user_driver ]), '<script type="text/javascript"> $(function() { - if($("#wants_to_drive").is(":checked")) + var checkbox = $("#wants_to_drive"); + if(checkbox.is(":checked")) $("#driving_license").show(); else $("#driving_license").hide(); - $("#wants_to_drive").click( - function(e) { + checkbox.click( + function() { if($("#wants_to_drive").is(":checked")) $("#driving_license").show(); else diff --git a/includes/view/UserHintsRenderer.php b/includes/view/UserHintsRenderer.php index cd0f568a..aac8ecfd 100644 --- a/includes/view/UserHintsRenderer.php +++ b/includes/view/UserHintsRenderer.php @@ -4,12 +4,15 @@ namespace Engelsystem; class UserHintsRenderer { + /** @var string[] */ private $hints = []; private $important = false; /** * Render the added hints to a popover for the toolbar. + * + * @return string */ public function render() { @@ -26,10 +29,8 @@ class UserHintsRenderer /** * Add a hint to the list, if its not null and a not empty string. * - * @param string $hint - * The hint - * @param boolean $important - * Is the hint important? + * @param string $hint The hint + * @param boolean $important Is the hint important? */ public function addHint($hint, $important = false) { @@ -45,6 +46,8 @@ class UserHintsRenderer /** * Get all hints. + * + * @return string[] */ public function getHints() { @@ -53,6 +56,8 @@ class UserHintsRenderer /** * Are there important hints? This leads to a more intensive icon. + * + * @return bool */ public function isImportant() { diff --git a/includes/view/User_view.php b/includes/view/User_view.php index 984ff535..5457e573 100644 --- a/includes/view/User_view.php +++ b/includes/view/User_view.php @@ -22,12 +22,14 @@ $tshirt_sizes = [ /** * Renders user settings page * - * @param User $user_source - * The user - * @param array <String> $locales - * Available languages - * @param array <String> $themes - * Available themes + * @param array $user_source The user + * @param array $locales Available languages + * @param array $themes Available themes + * @param int $buildup_start_date Unix timestamp + * @param int $teardown_end_date Unix timestamp + * @param bool $enable_tshirt_size + * @param array $tshirt_sizes + * @return string */ function User_settings_view( $user_source, @@ -52,7 +54,8 @@ function User_settings_view( 'planned_arrival_date', _("Planned date of arrival") . ' ' . entry_required(), $user_source['planned_arrival_date'], - $buildup_start_date, $teardown_end_date + $buildup_start_date, + $teardown_end_date ), form_date( 'planned_departure_date', @@ -113,6 +116,9 @@ function User_settings_view( /** * Displays the welcome message to the user and shows a login form. + * + * @param string $event_welcome_message + * @return string */ function User_registration_success_view($event_welcome_message) { @@ -149,6 +155,9 @@ function User_registration_success_view($event_welcome_message) /** * Gui for deleting user with password field. + * + * @param array $user + * @return string */ function User_delete_view($user) { @@ -170,6 +179,9 @@ function User_delete_view($user) /** * View for editing the number of given vouchers + * + * @param array $user + * @return string */ function User_edit_vouchers_view($user) { @@ -186,6 +198,17 @@ function User_edit_vouchers_view($user) ]); } +/** + * @param array[] $users + * @param string $order_by + * @param int $arrived_count + * @param int $active_count + * @param int $force_active_count + * @param int $freeloads_count + * @param int $tshirts_count + * @param int $voucher_count + * @return string + */ function Users_view( $users, $order_by, @@ -199,7 +222,6 @@ function Users_view( foreach ($users as &$user) { $user['Nick'] = User_Nick_render($user); $user['Gekommen'] = glyph_bool($user['Gekommen']); - $user['got_voucher'] = $user['got_voucher']; $user['Aktiv'] = glyph_bool($user['Aktiv']); $user['force_active'] = glyph_bool($user['force_active']); $user['Tshirt'] = glyph_bool($user['Tshirt']); @@ -242,11 +264,21 @@ function Users_view( ]); } +/** + * @param string $column + * @param string $label + * @param string $order_by + * @return string + */ function Users_table_header_link($column, $label, $order_by) { return '<a href="' . page_link_to('users') . '&OrderBy=' . $column . '">' . $label . ($order_by == $column ? ' <span class="caret"></span>' : '') . '</a>'; } +/** + * @param array $user + * @return string|false + */ function User_shift_state_render($user) { $upcoming_shifts = ShiftEntries_upcoming_for_user($user); @@ -272,6 +304,10 @@ function User_shift_state_render($user) return '<span class="text-danger moment-countdown" data-timestamp="' . $upcoming_shifts[0]['end'] . '">' . _("Shift ends %c") . '</span>'; } +/** + * @param array $needed_angel_type + * @return string + */ function User_view_shiftentries($needed_angel_type) { $shift_info = '<br><b>' . $needed_angel_type['name'] . ':</b> '; @@ -280,7 +316,7 @@ function User_view_shiftentries($needed_angel_type) foreach ($needed_angel_type['users'] as $user_shift) { $member = User_Nick_render($user_shift); if ($user_shift['freeloaded']) { - $member = '<strike>' . $member . '</strike>'; + $member = '<del>' . $member . '</del>'; } $shift_entries[] = $member; @@ -292,10 +328,15 @@ function User_view_shiftentries($needed_angel_type) /** * Helper that renders a shift line for user view + * + * @param array $shift + * @param array $user_source + * @param bool $its_me + * @return array */ function User_view_myshift($shift, $user_source, $its_me) { - global $LETZTES_AUSTRAGEN, $privileges; + global $last_unsubscribe, $privileges; $shift_info = '<a href="' . shift_link($shift) . '">' . $shift['name'] . '</a>'; if ($shift['title']) { @@ -331,7 +372,7 @@ function User_view_myshift($shift, $user_source, $its_me) 'btn-xs' ); } - if (($shift['start'] > time() + $LETZTES_AUSTRAGEN * 3600) || in_array('user_shifts_admin', $privileges)) { + if (($shift['start'] > time() + $last_unsubscribe * 3600) || in_array('user_shifts_admin', $privileges)) { $myshift['actions'][] = button( page_link_to('user_myshifts') . ((!$its_me) ? '&id=' . $user_source['UID'] : '') . '&cancel=' . $shift['id'], glyph('trash') . _('sign off'), @@ -345,6 +386,11 @@ function User_view_myshift($shift, $user_source, $its_me) /** * Helper that prepares the shift table for user view + * + * @param array[] $shifts + * @param array $user_source + * @param bool $its_me + * @return array */ function User_view_myshifts($shifts, $user_source, $its_me) { @@ -375,6 +421,15 @@ function User_view_myshifts($shifts, $user_source, $its_me) /** * Renders view for a single user + * + * @param array $user_source + * @param bool $admin_user_privilege + * @param bool $freeloader + * @param array[] $user_angeltypes + * @param array[] $user_groups + * @param array[] $shifts + * @param bool $its_me + * @return string */ function User_view($user_source, $admin_user_privilege, $freeloader, $user_angeltypes, $user_groups, $shifts, $its_me) { @@ -489,11 +544,14 @@ function User_view($user_source, $admin_user_privilege, $freeloader, $user_angel page_link_to('user_shifts') ), true) : '' - ]); + ] + ); } /** * View for password recovery step 1: E-Mail + * + * @return string */ function User_password_recovery_view() { @@ -509,6 +567,8 @@ function User_password_recovery_view() /** * View for password recovery step 2: New password + * + * @return string */ function User_password_set_view() { @@ -523,25 +583,27 @@ function User_password_set_view() ]); } +/** + * @param array[] $user_angeltypes + * @return string + */ function User_angeltypes_render($user_angeltypes) { $output = []; foreach ($user_angeltypes as $angeltype) { - $class = ""; - if ($angeltype['restricted'] == 1) { - if ($angeltype['confirm_user_id'] != null) { - $class = 'text-success'; - } else { - $class = 'text-warning'; - } - } else { - $class = 'text-success'; + $class = 'text-success'; + if ($angeltype['restricted'] == 1 && $angeltype['confirm_user_id'] == null) { + $class = 'text-warning'; } $output[] = '<a href="' . angeltype_link($angeltype['id']) . '" class="' . $class . '">' . ($angeltype['supporter'] ? glyph('education') : '') . $angeltype['name'] . '</a>'; } return join('<br />', $output); } +/** + * @param array[] $user_groups + * @return string + */ function User_groups_render($user_groups) { $output = []; @@ -554,14 +616,19 @@ function User_groups_render($user_groups) /** * Render a user nickname. * - * @param User $user_source + * @param array $user_source * @return string */ function User_Nick_render($user_source) { - return '<a class="' . ($user_source['Gekommen'] ? '' : 'text-muted') . '" href="' . page_link_to('users') . '&action=view&user_id=' . $user_source['UID'] . '"><span class="icon-icon_angel"></span> ' . htmlspecialchars($user_source['Nick']) . '</a>'; + return '<a class="' . ($user_source['Gekommen'] ? '' : 'text-muted') . '" href="' + . page_link_to('users') . '&action=view&user_id=' . $user_source['UID'] + . '"><span class="icon-icon_angel"></span> ' . htmlspecialchars($user_source['Nick']) . '</a>'; } +/** + * @return string|null + */ function render_user_departure_date_hint() { global $user; @@ -573,6 +640,9 @@ function render_user_departure_date_hint() return null; } +/** + * @return string|null + */ function render_user_freeloader_hint() { global $user, $max_freeloadable_shifts; @@ -587,7 +657,11 @@ function render_user_freeloader_hint() return null; } -// Hinweis für Engel, die noch nicht angekommen sind +/** + * Hinweis für Engel, die noch nicht angekommen sind + * + * @return string|null + */ function render_user_arrived_hint() { global $user; @@ -599,6 +673,9 @@ function render_user_arrived_hint() return null; } +/** + * @return string|null + */ function render_user_tshirt_hint() { global $enable_tshirt_size, $user; @@ -610,6 +687,9 @@ function render_user_tshirt_hint() return null; } +/** + * @return string|null + */ function render_user_dect_hint() { global $user; |