diff options
author | msquare <msquare@notrademark.de> | 2017-11-28 15:43:51 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-28 15:43:51 +0100 |
commit | 599f2fd264bfc7b1b6826fe206442806e317340f (patch) | |
tree | 50cf84d7d07d11bd65b45c2c17f37632f6cd8eff /includes/view/ShiftsFilterRenderer.php | |
parent | a5fc5bd0979e8de1fce8a8addd351a6e7bd6aeb8 (diff) | |
parent | eda7f7788ea8012bd8be46405c56a666c11f3fa5 (diff) |
Merge pull request #365 from engelsystem/feature-igel-rewrite
Feature igel rewrite
Diffstat (limited to 'includes/view/ShiftsFilterRenderer.php')
-rw-r--r-- | includes/view/ShiftsFilterRenderer.php | 127 |
1 files changed, 70 insertions, 57 deletions
diff --git a/includes/view/ShiftsFilterRenderer.php b/includes/view/ShiftsFilterRenderer.php index 301f31a2..27c6240a 100644 --- a/includes/view/ShiftsFilterRenderer.php +++ b/includes/view/ShiftsFilterRenderer.php @@ -2,68 +2,81 @@ namespace Engelsystem; -class ShiftsFilterRenderer { +class ShiftsFilterRenderer +{ + /** + * The shiftFilter to render. + * + * @var ShiftsFilter + */ + private $shiftsFilter; - /** - * The shiftFilter to render. - * - * @var ShiftsFilter - */ - private $shiftsFilter; + /** + * Should the filter display a day selection. + * + * @var boolean + */ + private $daySelectionEnabled = false; - /** - * Should the filter display a day selection. - * - * @var boolean - */ - private $daySelectionEnabled = false; + /** + * Days that can be selected. + * Format Y-m-d + * + * @var string[] + */ + private $days = []; - /** - * Days that can be selected. - * Format Y-m-d - * - * @var string[] - */ - private $days = []; - - public function __construct(ShiftsFilter $shiftsFilter) { - $this->shiftsFilter = $shiftsFilter; - } + /** + * ShiftsFilterRenderer constructor. + * + * @param ShiftsFilter $shiftsFilter + */ + public function __construct(ShiftsFilter $shiftsFilter) + { + $this->shiftsFilter = $shiftsFilter; + } - /** - * Renders the filter. - * - * @return Generated HTML - */ - public function render($link_base) { - $toolbar = []; - if ($this->daySelectionEnabled && ! empty($this->days)) { - $selected_day = date("Y-m-d", $this->shiftsFilter->getStartTime()); - $day_dropdown_items = []; - foreach ($this->days as $day) { - $day_dropdown_items[] = toolbar_item_link($link_base . '&shifts_filter_day=' . $day, '', $day); - } - $toolbar[] = toolbar_dropdown('', $selected_day, $day_dropdown_items, 'active'); + /** + * Renders the filter. + * + * @param string $page_link Link pointing to the actual page. + * @return string Generated HTML + */ + public function render($page_link) + { + $toolbar = []; + if ($this->daySelectionEnabled && !empty($this->days)) { + $selected_day = date('Y-m-d', $this->shiftsFilter->getStartTime()); + $day_dropdown_items = []; + foreach ($this->days as $day) { + $link = $page_link . '&shifts_filter_day=' . $day; + $day_dropdown_items[] = toolbar_item_link($link, '', $day); + } + $toolbar[] = toolbar_dropdown('', $selected_day, $day_dropdown_items, 'active'); + } + return div('form-group', [ + toolbar_pills($toolbar) + ]); } - return div('form-group', [ - toolbar_pills($toolbar) - ]); - } - /** - * Should the filter display a day selection. - */ - public function enableDaySelection($days) { - $this->daySelectionEnabled = true; - $this->days = $days; - } + /** + * Should the filter display a day selection. + * + * @param string[] $days + */ + public function enableDaySelection($days) + { + $this->daySelectionEnabled = true; + $this->days = $days; + } - /** - * Should the filter display a day selection. - */ - public function isDaySelectionEnabled() { - return $this->daySelectionEnabled; - } + /** + * Should the filter display a day selection. + * + * @return bool + */ + public function isDaySelectionEnabled() + { + return $this->daySelectionEnabled; + } } - -?>
\ No newline at end of file |