/** * Render the link to the given index * * @param Index $index * @param int $pageUid * * @return string */ public function render(Index $index, $pageUid = NULL) { $additionalParams = array('tx_calendarize_calendar' => array('index' => $index->getUid())); return parent::render($this->getPageUid($pageUid, 'detailPid'), $additionalParams); }
/** * Find by traversing information * * @param Index $index * @param bool|true $future * @param bool|false $past * @param int $limit * @param string $sort * * @return array|\TYPO3\CMS\Extbase\Persistence\QueryResultInterface */ public function findByTraversing(Index $index, $future = true, $past = false, $limit = 100, $sort = QueryInterface::ORDER_ASCENDING) { if (!$future && !$past) { return []; } $query = $this->createQuery(); $now = DateTimeUtility::getNow()->getTimestamp(); $constraints = []; $constraints[] = $query->logicalNot($query->equals('uid', $index->getUid())); $constraints[] = $query->equals('foreignTable', $index->getForeignTable()); $constraints[] = $query->equals('foreignUid', $index->getForeignUid()); if (!$future) { $constraints[] = $query->lessThanOrEqual('startDate', $now); } if (!$past) { $constraints[] = $query->greaterThanOrEqual('startDate', $now); } $query->setLimit($limit); $sort = $sort === QueryInterface::ORDER_ASCENDING ? QueryInterface::ORDER_ASCENDING : QueryInterface::ORDER_DESCENDING; $query->setOrderings($this->getSorting($sort)); return $this->matchAndExecute($query, $constraints); }
/** * Render the link to the given index * * @param Index $index * @param int $pageUid * * @return string */ public function render(Index $index, $pageUid = null) { $additionalParams = ['tx_calendarize_calendar' => ['index' => $index->getUid()]]; return parent::render($this->getPageUid($pageUid, 'detailPid'), $additionalParams); }