public static function CalendarHelper::week in Calendar 8.2
Returns an array for week.
Parameters
\Drupal\views\ViewExecutable $view: The view.
Return value
array Empty array for week.
Throws
\Exception
File
- src/
CalendarHelper.php, line 64
Class
- CalendarHelper
- Class CalendarHelper.
Namespace
Drupal\calendarCode
public static function week(ViewExecutable $view) {
$week_header = self::buildWeekHeader($view->styleInfo
->getDayNameSize());
$calendar_arguments = self::getCalendarArguments($view);
foreach ($calendar_arguments as $date_argument) {
$week_info = self::weekInfo($date_argument['argument']);
// Week_header is already ordered so use that.
$week_header_keys = array_keys($week_header);
$week_header_day = array_shift($week_header_keys);
$date = clone $week_info['startweekdate'];
$end_date = clone $week_info['endweekdate'];
do {
$caldays[$week_info['weekno']]['weekdays'][$date
->format('Ymd')] = [
'header' => $week_header[$week_header_day],
'date' => $date
->format('d'),
'multiday' => [],
'allday' => [],
'other' => [],
];
$date
->add(new DateInterval('P1D'));
if ($week_header_day < 6) {
$week_header_day++;
}
else {
$week_header_day = 0;
}
} while ($date <= $end_date);
// Add start- and enddate since we need this for offset calculations and linkdata.
$caldays[$week_info['weekno']]['startweekdate'] = $week_info['startweekdate'];
$caldays[$week_info['weekno']]['endweekdate'] = $week_info['endweekdate'];
}
return $caldays;
}