public function renderFile() { //Prerequisites Session::getSession()->setLanguage($this->sLanguageId); //Clear index SearchIndexQuery::create()->filterByLanguageId($this->sLanguageId)->delete(); //Spider index $oRootPage = PagePeer::getRootPage(); $this->oRootNavigationItem = PageNavigationItem::navigationItemForPage($oRootPage); $this->spider($this->oRootNavigationItem); //GC gc_enable(); //Update index PreviewManager::setTemporaryManager('FrontendManager'); foreach ($this->aIndexPaths as $aPath) { $bIsIndexed = $this->index($aPath); set_time_limit(30); $this->gc(); $sMessage = $bIsIndexed ? 'Indexed' : 'Skipped'; print "{$sMessage} <code>/" . htmlentities(implode('/', $aPath)) . "</code><br>\n"; } PreviewManager::revertTemporaryManager(); }
public function adminPreview($iObjectId) { if ($this->sLanguageId === null) { $this->sLanguageId = AdminManager::getContentLanguage(); } $oCurrentContentObject = $this->contentObjectById($iObjectId); $oCurrentLanguageObject = $oCurrentContentObject->getLanguageObject($this->sLanguageId); //Some frontend modules use this FrontendManager::$CURRENT_PAGE = $oCurrentContentObject->getPage(); //Some frontend modules generate links into the current manager – those need to be correct PreviewManager::setTemporaryManager(); $oModuleInstance = $this->backendModuleInstanceByLanguageObject($oCurrentLanguageObject); $aResult = array('preview_contents' => $this->getModuleContents($oModuleInstance, false)); PreviewManager::revertTemporaryManager(); return $aResult; }