/** * List action * * @param \HDNET\Calendarize\Domain\Model\Index $index * @param \DateTime $startDate * @param \DateTime $endDate * @param array $customSearch * * @param int $year * @param int $month * @param int $week * * @ignorevalidation $startDate * @ignorevalidation $endDate * @ignorevalidation $customSearch * * @throws \TYPO3\CMS\Extbase\Mvc\Exception\StopActionException */ public function listAction(Index $index = NULL, \DateTime $startDate = NULL, \DateTime $endDate = NULL, array $customSearch = array(), $year = NULL, $month = NULL, $week = NULL) { if ($index instanceof Index && in_array('detail', $this->getAllowedActions())) { $this->forward('detail'); } $searchMode = FALSE; if ($startDate || $endDate || $customSearch) { $searchMode = TRUE; $indices = $this->indexRepository->findBySearch($startDate, $endDate, $customSearch); } elseif (MathUtility::canBeInterpretedAsInteger($year) && MathUtility::canBeInterpretedAsInteger($month)) { $indices = $this->indexRepository->findMonth($year, $month); } elseif (MathUtility::canBeInterpretedAsInteger($year) && MathUtility::canBeInterpretedAsInteger($week)) { $indices = $this->indexRepository->findWeek($year, $week); } elseif (MathUtility::canBeInterpretedAsInteger($year)) { $indices = $this->indexRepository->findYear($year); } else { $indices = $this->indexRepository->findList((int) $this->settings['limit']); } $this->view->assignMultiple(array('indices' => $indices, 'searchMode' => $searchMode)); }
/** * List action * * @param \HDNET\Calendarize\Domain\Model\Index $index * @param \DateTime $startDate * @param \DateTime $endDate * @param array $customSearch * * @param int $year * @param int $month * @param int $day * @param int $week * * @ignorevalidation $startDate * @ignorevalidation $endDate * @ignorevalidation $customSearch * * @throws \TYPO3\CMS\Extbase\Mvc\Exception\StopActionException */ public function listAction(Index $index = null, \DateTime $startDate = null, \DateTime $endDate = null, array $customSearch = [], $year = null, $month = null, $day = null, $week = null) { $this->checkStaticTemplateIsIncluded(); if ($index instanceof Index && in_array('detail', $this->getAllowedActions())) { $this->forward('detail'); } $searchMode = false; if ($startDate || $endDate || $customSearch) { $searchMode = true; $indices = $this->indexRepository->findBySearch($startDate, $endDate, $customSearch); } elseif (MathUtility::canBeInterpretedAsInteger($year) && MathUtility::canBeInterpretedAsInteger($month) && MathUtility::canBeInterpretedAsInteger($day)) { $indices = $this->indexRepository->findDay($year, $month, $day); } elseif (MathUtility::canBeInterpretedAsInteger($year) && MathUtility::canBeInterpretedAsInteger($month)) { $indices = $this->indexRepository->findMonth($year, $month); } elseif (MathUtility::canBeInterpretedAsInteger($year) && MathUtility::canBeInterpretedAsInteger($week)) { $indices = $this->indexRepository->findWeek($year, $week); } elseif (MathUtility::canBeInterpretedAsInteger($year)) { $indices = $this->indexRepository->findYear($year); } else { $indices = $this->indexRepository->findList((int) $this->settings['limit']); } $this->slotExtendedAssignMultiple(['indices' => $indices, 'searchMode' => $searchMode], __CLASS__, __FUNCTION__); }