/** * @see Accessible\Handler::execute */ public function execute($params) { $currCalendar = $this->getCurrentCalendar($params); $currDateRange = $this->formatCurrentCalendarDateRange($params); $currNavigationDateRange = EventUtils::getPreparedDateRangeForCalendarNavigation((object) array('month' => $currDateRange->monthVal, 'year' => $currDateRange->yearVal)); // The complete list of events according to the current calendar date range $allEvents = $this->getEventListing($currCalendar->id, $currDateRange); // Entire event listing filtered by current day $todayEvents = $this->formatTodaysEventListing($allEvents->listing); $showTodayEvents = DateUtils::isCurentDayWithinCurrentCalendarDateRange($currDateRange); $this->showTemplate('MainTemplate', (object) array('calendarMainTitle' => $this->prepareCalendarMainTitle($currDateRange, $currCalendar), 'isTodayExhibition' => $showTodayEvents, 'hasTodayEvents' => $todayEvents->hasEvents, 'todayEventListing' => $this->formatEventsForVisualization($todayEvents->listing, $currCalendar->id, $currDateRange), 'dateRangeTodayEventsSummary' => EventUtils::setTodayEventsDateRangeSummary($todayEvents->listing), 'hasEvents' => $allEvents->hasEvents, 'eventListing' => $this->formatEventsForVisualization($allEvents->listing, $currCalendar->id, $currDateRange), 'dateRangeEventsSummary' => EventUtils::setEventsDateRangeSummary($allEvents->listing, $currDateRange), 'lnkEmail' => $this->makeUrl('Mail.Main'), 'lnkLogoff' => $this->makeUrl('Login.Logoff'), 'lnkChangeCalendar' => $this->makeUrl('Calendar.OpenCalendar'), 'lnkBack' => $this->makeUrl('Calendar.Main', array('calendarId' => $currCalendar->id)), 'calendarNavigation' => $this->formatCalendarNavigationLinks($currCalendar->id, $currNavigationDateRange), 'lnkChangeCalendar' => $this->makeUrl('Calendar.OpenCalendar', array('calendarId' => $currCalendar->id, 'month' => $currDateRange->monthVal, 'year' => $currDateRange->yearVal)))); }