/** * @return mixed */ protected function getPages() { $pathInfo = new PathInfo(); if (!array_key_exists('/', $this->yagDirectoryCache)) { $this->yagDirectoryCache['/'] = array(); $pageRecordList = $this->pidDetector->getPageRecords(); foreach ($pageRecordList as $pageRecord) { $pathInfo->setDisplayName($pageRecord['title'])->setPid($pageRecord['uid'])->setPathType(PathInfo::INFO_PID); $this->yagDirectoryCache['/'][$pageRecord['uid']] = array('ctime' => $pageRecord['crdate'], 'mtime' => $pageRecord['tstamp'], 'name' => $pageRecord['title'] . ' |' . $pageRecord['uid'], 'identifier' => $pageRecord['title'] . ' |' . $pageRecord['uid'], 'storage' => $this->storage->getUid()); $this->yagDirectoryPathCache['/' . $pageRecord['uid']] = true; } } return $this->yagDirectoryCache['/']; }
/** * Render a source selector to select gallery / album / item at once * * @param array $PA * @param t3lib_TCEforms $fobj * * @return string */ public function renderSourceSelector(&$PA, &$fobj) { $this->determineCurrentPID($PA['row']['pid']); $this->init(); $PA['elementID'] = 'field_' . md5($PA['itemFormElID']); $template = GeneralUtility::getFileAbsFileName('EXT:yag/Resources/Private/Templates/Backend/FlexForm/FlexFormSource.html'); $renderer = $this->getFluidRenderer(); $renderer->setTemplatePathAndFilename($template); /* @var $galleryRepository Tx_Yag_Domain_Repository_GalleryRepository */ $galleryRepository = $this->objectManager->get('Tx_Yag_Domain_Repository_GalleryRepository'); $galleries = $galleryRepository->findAll(); $pages = $this->pidDetector->getPageRecords(); $renderer->assign('galleries', $galleries); $renderer->assign('PA', $PA); $renderer->assign('pages', $pages); $content = $renderer->render(); $this->extbaseShutdown(); return $content; }