public function preDispatch() { if (@(!$_SESSION['auth_a']['id'])) { $redirector = Zend_Controller_Action_HelperBroker::getExistingHelper('redirector'); $redirector->gotoUrl("/login"); } }
public function routeShutdown(Zend_Controller_Request_Abstract $request) { if($request->getParam('admin')){ $layout = Zend_Layout::getMvcInstance(); $layout->setViewScriptPath(APPLICATION_PATH.'/design/backend/default/default/layout/'); $view = Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer')->view; $view->addScriptPath(APPLICATION_PATH.'/design/backend/default/default/scripts'); // set autoloader $autoloader = Zend_Loader_Autoloader::getInstance(); $path = APPLICATION_PATH . DIRECTORY_SEPARATOR . 'code' . DIRECTORY_SEPARATOR . 'admin'; $iterator = new DirectoryIterator($path); $moduleLoaders = array(); foreach($iterator as $folder){ $name = $folder->getFileName(); if($folder->isDir() && !$folder->isDot() && substr($name,0,1) != '.'){ $basePath = $path . DIRECTORY_SEPARATOR . $name; $moduleLoaders[] = new CG_Application_Module_Autoloader(array( 'namespace' => ucfirst($name), 'basePath' => $basePath )); } } $autoloader->setAutoloaders($moduleLoaders); } }
public function preDispatch(Zend_Controller_Request_Abstract $request) { $module = strtolower($request->getModuleName()); $contextSwitch = Zend_Controller_Action_HelperBroker::getStaticHelper('ContextSwitch'); $contexts = array('xml', 'rss', 'json', 'atom', 'kml', 'georss', 'ics', 'rdf', 'xcs'); if (!in_array($contextSwitch->getCurrentContext(), $contexts)) { $view = Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer')->view; $response = $this->getResponse(); switch ($module) { case $module == 'default': $layouttype = 'home'; break; case $module == 'admin': $layouttype = 'database'; break; case $module == 'database': $layouttype = 'database'; break; case $module == 'events': $response->insert('userdata', $view->render('structure/userdata.phtml')); $response->insert('header', $view->render('structure/header.phtml')); $response->insert('breadcrumb', $view->render('structure/breadcrumb.phtml')); $response->insert('sidebar', $view->render('structure/eventsSidebar.phtml')); $response->insert('navigation', $view->render('structure/navigation.phtml')); $response->insert('footer', $view->render('structure/footer.phtml')); $response->insert('messages', $view->render('structure/messages.phtml')); default: $layouttype = 'database'; break; } } else { Zend_Controller_Action_HelperBroker::getExistingHelper('Layout')->disableLayout(); } }
/** * Generates acl link * * @access public * * @param string Project name * * @return string HTML link: <a href="test">Test</a>. */ public function ACLLink($project) { $front = Zend_Controller_Front::getInstance(); $view = Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->view; $img = $view->img("lock.png", T_('Rights')); return '<a href="' . $view->url(array('controller' => 'project', 'action' => 'browser', 'project' => $project), "project", true) . '">' . $img . '</a>'; }
/** * dispatchLoopShutdown * * @return void */ public function dispatchLoopShutdown() { $messenger = Zend_Controller_Action_HelperBroker::getStaticHelper('FlashMessenger'); $contextSwitch = Zend_Controller_Action_HelperBroker::getExistingHelper('ContextSwitch'); $contextParam = $contextSwitch->getContextParam(); $front = Zend_Controller_Front::getInstance(); $format = $front->getRequest()->getParam($contextParam); $view = Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->view; $namespaces = array('error', 'warning', 'notice', 'success'); foreach ($namespaces as $namespace) { $messenger->setNamespace($namespace); $messages = null; if ($format != "html" and !is_null($format)) { if ($messages = $messenger->getCurrentMessages()) { $messenger->clearCurrentMessages(); } else { $messages = $messenger->getMessages(); } } else { $messages = $messenger->getMessages(); } if (!is_array($messages)) { continue; } if (count($messages) > 0) { if (!isset($view->messenger)) { $view->messenger = array(); } $view->messenger[$namespace] = $messages; } } }
public function postDispatch(Zend_Controller_Request_Abstract $request) { $layout = Zend_Layout::getMvcInstance(); // the name "maintenanceMode" is also referred to in the Admin_MaintenanceController, // so if you change the filename, it needs to be changed there too $maintenanceModeFileName = 'maintenanceMode'; $register = new Ot_Config_Register(); $identity = Zend_Auth::getInstance()->getIdentity(); $role = empty($identity->role) ? $register->defaultRole->getValue() : $identity->role; if (isset($identity->masquerading) && $identity->masquerading == true && isset($identity->realAccount) && !is_null($identity->realAccount) && isset($identity->realAccount->role)) { $role = $identity->realAccount->role; } $acl = Zend_Registry::get('acl'); $view = $layout->getView(); $viewRenderer = Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer'); if (is_file(APPLICATION_PATH . '/../overrides/' . $maintenanceModeFileName) && (!$request->isXmlHttpRequest() && !$viewRenderer->getNeverRender())) { if (!$acl->isAllowed($role, 'ot_maintenance', 'index')) { if (!($request->getModuleName() == 'ot' && $request->getControllerName() == 'login' && $request->getActionName() == 'index')) { $response = $this->getResponse(); $layout->disableLayout(); $response->setBody($view->maintenanceMode()->publicLayout()); } } else { $response = $this->getResponse(); // there's no point in setting text here if it's a redirect if ($response->isRedirect()) { $response->setBody(''); } else { $response->setBody($view->maintenanceMode()->header() . $response->getBody()); } } } }
protected function _assign($model) { if ($this->getRequest()->isHead()) { Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->setNoRender(true); return; } $request = $this->getRequest(); $this->_setEtag($model->etag($this->_context)); $modelName = $model instanceof Bbx_Model ? Inflector::underscore(get_class($model)) : Inflector::tableize($model->getModelName()); if ($request->getParam('list') === 'true') { $model->renderAsList(); } if ($this->_context === 'csv') { $this->_helper->authenticate(); } if ($request->getParam('download') == 'true') { $this->_helper->authenticate(); $this->_helper->download($model); } if ($this->_context === 'json') { $options = $this->_context === 'json' ? array('deep' => true) : null; $this->view->assign($model->toArray($options)); } else { $this->view->{$modelName} = $model; } }
public function filter($value) { if (NULL === self::$view) { self::$view = Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer')->view; } return $this->parse($value); }
public function preDispatch(Zend_Controller_Request_Abstract $request) { $module = $request->getModuleName(); $controller = $request->getControllerName(); $action = $request->getActionName(); $flashMessenger = Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->view; $flashMessenger->title = ucfirst($action); }
public function preDispatch(\Zend_Controller_Request_Abstract $request) { if ($request->getModuleName() == "json") { header("Content-type: application/json"); $viewRenderer = \Zend_Controller_Action_HelperBroker::getExistingHelper("viewRenderer"); $viewRenderer->setNeverRender(); } }
public function routeShutdown(Zend_Controller_Request_Abstract $request) { $navContainer = null; $viewRenderer = Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer'); $viewRenderer->initView(); $view = $viewRenderer->view; $module = $request->getModuleName(); if ($module == "admin") { $navContainerConfig = new Zend_Config_Xml(APPLICATION_PATH . '/modules/admin/navigation.xml', 'nav'); $navContainer = new Zend_Navigation($navContainerConfig); // Load the xml navigation menu // check if the database configuration has been set if (Shineisp_Main::isReady()) { // Adding the configuration menu items $configuration = SettingsGroups::getlist(); $submenu = $navContainer->findOneByLabel('Configuration'); foreach ($configuration as $id => $item) { $pages[] = array('label' => $item, 'uri' => '/admin/settings/index/groupid/' . $id, 'resource' => 'admin:settings'); } $submenu->addPages($pages); } // Attach the Zend ACL to the Navigation menu $auth = Zend_Auth::getInstance(); if ($auth) { $acl = $auth->getStorage()->read(); if (is_object($acl)) { Zend_View_Helper_Navigation_HelperAbstract::setDefaultAcl($acl); Zend_View_Helper_Navigation_HelperAbstract::setDefaultRole("administrator"); } } } elseif ($module == "default") { $navContainerConfig = new Zend_Config_Xml(APPLICATION_PATH . '/modules/default/navigation.xml', 'nav'); $navContainer = new Zend_Navigation($navContainerConfig); // Load the xml navigation menu // Attach the Zend ACL to the Navigation menu $auth = Zend_Auth::getInstance(); if ($auth) { $acl = $auth->getStorage()->read(); if (is_object($acl)) { Zend_View_Helper_Navigation_HelperAbstract::setDefaultAcl($acl); Zend_View_Helper_Navigation_HelperAbstract::setDefaultRole("guest"); } } } if ($navContainer) { foreach ($navContainer->getPages() as $page) { foreach ($page->getPages() as $subpage) { foreach ($subpage->getPages() as $subsubpage) { $uri = $subsubpage->getHref(); if ($uri === $request->getRequestUri()) { $subsubpage->setActive(true); } } } } $view->navigation($navContainer); } }
public function init() { $this->_helper->contextSwitch()->addActionContext('error', 'json'); $this->_helper->contextSwitch()->addActionContext('login', 'json'); $this->_helper->contextSwitch()->addActionContext('logout', 'json'); $viewRenderer = Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer'); $viewRenderer->setNoRender(); parent::init(); }
public function preDispatch(Zend_Controller_Request_Abstract $request) { $request = $this->getRequest(); $moduleName = $request->getModuleName(); $frontController = Zend_Controller_Front::getInstance(); $currentModuleDirectory = $frontController->getModuleDirectory($moduleName); $layout = Zend_Controller_Action_HelperBroker::getExistingHelper('layout'); $layout->setLayoutPath($currentModuleDirectory . '/views/layouts')->setLayout('layout'); }
public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request) { $viewRenderer = Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer'); if (is_null($viewRenderer->view)) { $viewRenderer->init(); } // ensure view is created by the view renderer $this->view = $viewRenderer->view; }
/** * @param \Zend_Controller_Request_Abstract $request * @throws mixed */ protected function _handleError(\Zend_Controller_Request_Abstract $request) { // remove zend error handler $front = \Zend_Controller_Front::getInstance(); $front->unregisterPlugin("Zend_Controller_Plugin_ErrorHandler"); $response = $this->getResponse(); if ($response->isException() && !$this->_isInsideErrorHandlerLoop) { // get errorpage try { // enable error handler $front->setParam('noErrorHandler', false); $errorPath = Config::getSystemConfig()->documents->error_pages->default; if (Site::isSiteRequest()) { $site = Site::getCurrentSite(); $errorPath = $site->getErrorDocument(); } if (empty($errorPath)) { $errorPath = "/"; } $document = Document::getByPath($errorPath); if (!$document instanceof Document\Page) { // default is home $document = Document::getById(1); } if ($document instanceof Document\Page) { $params = Tool::getRoutingDefaults(); if ($module = $document->getModule()) { $params["module"] = $module; } if ($controller = $document->getController()) { $params["controller"] = $controller; $params["action"] = "index"; } if ($action = $document->getAction()) { $params["action"] = $action; } $this->setErrorHandler($params); $request->setParam("document", $document); \Zend_Registry::set("pimcore_error_document", $document); // ensure that a viewRenderer exists, and is enabled if (!\Zend_Controller_Action_HelperBroker::hasHelper("viewRenderer")) { $viewRenderer = new \Pimcore\Controller\Action\Helper\ViewRenderer(); \Zend_Controller_Action_HelperBroker::addHelper($viewRenderer); } $viewRenderer = \Zend_Controller_Action_HelperBroker::getExistingHelper("viewRenderer"); $viewRenderer->setNoRender(false); if ($viewRenderer->view === null) { $viewRenderer->initView(PIMCORE_WEBSITE_PATH . "/views"); } } } catch (\Exception $e) { \Logger::emergency("error page not found"); } } // call default ZF error handler parent::_handleError($request); }
public function testGetExistingHelperThrowsExceptionWithUnregisteredHelper() { try { $received = Zend_Controller_Action_HelperBroker::getExistingHelper('testHelper'); $this->fail('Retrieving unregistered helpers should throw an exception'); } catch (Exception $e) { // success } }
protected function enableLayout() { $viewRenderer = Zend_Controller_Action_HelperBroker::getExistingHelper("viewRenderer"); $viewRenderer->setIsInitialized(false); // reset so that the view get's initialized again, because of error page from other modules $viewRenderer->initView(); Zend_Layout::startMvc(); $layout = Zend_Layout::getMvcInstance(); $layout->setViewSuffix(Pimcore_View::getViewScriptSuffix()); }
public function preDispatch(\Zend_Controller_Request_Abstract $request) { parent::preDispatch($request); /** @var \Pimcore\Controller\Action\Helper\ViewRenderer $renderer */ $renderer = \Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer'); $renderer->initView(); /** @var \Pimcore\View $view */ $view = $renderer->view; $view->addHelperPath(PIMCORE_PLUGINS_PATH . '/LuceneSearch/lib/LuceneSearch/Helper/View', 'LuceneSearch\\Helper\\View'); }
/** * Generates add link * * @access public * * @param string Param name of ressource to add (ex: login or name) * @param string Name of ressource * @param string Text of confirmation (with %s inside to put name of ressource) * * @return string HTML link: <a href="test">Test</a>. */ public function addLink() { $view = Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->view; $img = $view->img("add.png", T_("Add")); $url = $view->url(array('action' => 'new')); return <<<EOF \t\t<a href="{$url}"> \t\t\t{$img} \t\t</a> EOF; }
public function dispatchLoopShutdown() { $layoutBroker = CG_Core_Layout_Template_Layout::getInstance(); $layout = $layoutBroker->getLayout(); if(isset($layout)){ $response = $this->getResponse(); $view = Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->view; $content = $view->block($layoutBroker->getLayoutClass(),$layout,array('content'=>$response->getBody())); $response->setBody($content); } }
/** * Generates edit link * * @access public * * @param string Param name of ressource to delete (ex: login or name) * @param string Name of ressource * * @return string HTML link: <a href="test">Test</a>. */ public function editLink($param, $name) { $view = Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->view; $url = $view->url(array('action' => 'edit', $param => $name)); $img = $view->img("edit.png", T_("Edit")); return <<<EOF <a href="{$url}"> {$img} </a> EOF; }
public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request) { $view = Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer')->view; $scriptPath = APPLICATION_PATH . '/templates/' . Zend_Registry::get('template') . '/' . $request->getModuleName(); $defaultScriptPath = APPLICATION_PATH . '/templates/' . Zend_Registry::get('template') . '/default'; if (file_exists($scriptPath)) { $view->addScriptPath($scriptPath); } elseif ($request->getModuleName() != 'default' && file_exists($defaultScriptPath)) { $view->addScriptPath($defaultScriptPath); } }
public function preDispatch(\Zend_Controller_Request_Abstract $request) { parent::preDispatch($request); /** @var \Pimcore\Controller\Action\Helper\ViewRenderer $renderer */ $renderer = \Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer'); $renderer->initView(); /** @var \Pimcore\View $view */ $view = $renderer->view; $view->addScriptPath(PIMCORE_PLUGINS_PATH . '/Toolbox/views/scripts'); $view->addHelperPath(PIMCORE_PLUGINS_PATH . '/Toolbox/lib/Toolbox/View/Helper', 'Toolbox\\View\\Helper'); }
/** * Generates home link * * @access public * * @param string Name of ressource * * @return string HTML link: <a href="test">Test</a>. */ public function homeLinkGroup($name) { $front = Zend_Controller_Front::getInstance(); $view = Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->view; $url = $view->url(array('controller' => 'group', 'action' => null, 'group' => $name), 'group', true); $img = $view->img("group24.png", T_("Home")); return <<<EOF <a href="{$url}"> {$img} </a> EOF; }
/** * {@inheritdoc} * * In addition, register the default view helper path for the epixa library. * * @return BaseView */ public function init() { $options = $this->getOptions(); $this->_view = new BaseView($options); if (isset($options['doctype'])) { $this->_view->doctype()->setDoctype(strtoupper($options['doctype'])); } $this->_view->addHelperPath('Epixa/View/Helper', 'Epixa\\View\\Helper\\'); $view = parent::init(); HelperBroker::getExistingHelper('ViewRenderer')->setViewBasePathSpec(':moduleDir/..'); return $view; }
protected function _init() { parent::_init(); $this->_sessionHelper = Zend_Controller_Action_HelperBroker::getExistingHelper('session'); $this->_websiteHelper = Zend_Controller_Action_HelperBroker::getExistingHelper('website'); // $this->_view = new Zend_View(array( // 'scriptPath' => dirname(__FILE__) . '/views' // )); $this->_view = clone Zend_Layout::getMvcInstance()->getView(); $this->_view->addScriptPath(dirname(__FILE__) . '/views'); $this->_view->websiteUrl = $this->_websiteHelper->getUrl(); }
/** * static function to render a document outside of a view * * @static * @param Document $document * @param array $params * @param bool $useLayout * @return string */ public static function render(Document $document, $params = array(), $useLayout = false) { $layoutEnabledInCurrentAction = Zend_Layout::getMvcInstance() instanceof Zend_Layout ? true : false; $viewHelper = Zend_Controller_Action_HelperBroker::getExistingHelper("ViewRenderer"); if ($viewHelper) { if ($viewHelper->view === null) { $viewHelper->initView(PIMCORE_WEBSITE_PATH . "/views"); } $view = $viewHelper->view; } else { $view = new Pimcore_View(); } // add the view script path from the website module to the view, because otherwise it's not possible to call // this method out of other modules to render documents, eg. sending e-mails out of an plugin with Pimcore_Mail $view->addScriptPath(PIMCORE_FRONTEND_MODULE . "/views/layouts"); $view->addScriptPath(PIMCORE_FRONTEND_MODULE . "/views/scripts"); $documentBackup = null; if ($view->document) { $documentBackup = $view->document; } $view->document = $document; $params["document"] = $document; $content = $view->action($document->getAction(), $document->getController(), null, $params); //has to be called after $view->action so we can determine if a layout is enabled in $view->action() if ($useLayout) { $layout = Zend_Layout::getMvcInstance(); if ($layout instanceof Zend_Layout) { $layout->{$layout->getContentKey()} = $content; if (is_array($params)) { foreach ($params as $key => $value) { if (!$layout->getView()->{$key}) { //otherwise we could overwrite e.g. controller, content... $layout->getView()->{$key} = $value; } } } $content = $layout->render(); //deactivate the layout if it was not activated in the called action //otherwise we would activate the layout in the called action if (!$layoutEnabledInCurrentAction) { $layout->disableLayout(); } $layout->{$layout->getContentKey()} = null; //reset content $layout->resetMvcInstance(); } } if ($documentBackup) { $view->document = $documentBackup; } return $content; }
/** * kenapa saya pake preDispatch ??? * @link http://framework.zend.com/manual/en/zend.controller.plugins.html */ public function preDispatch(Zend_Controller_Request_Abstract $request) { // default view helper $viewRender = Zend_Controller_Action_HelperBroker::getExistingHelper('ViewRenderer'); $viewRender->initView(); $view = $viewRender->view; $view->headTitle(Zend_Registry::get('config')->site->meta->title); $view->headMeta()->appendName('author', Zend_Registry::get('config')->site->meta->author); $view->headMeta()->appendName('google-site-verification', Zend_Registry::get('config')->site->meta->googleid); $view->headMeta()->appendName('y_key', Zend_Registry::get('config')->site->meta->yahookey); $view->headMeta()->appendName('alexaVerifyID', Zend_Registry::get('config')->site->meta->alexaid); $view->headMeta()->appendName('generator', Zend_Registry::get('config')->site->meta->generator); }
public function dispatchLoopStartup(Zend_Controller_Request_Abstract $request) { $viewRenderer = Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer'); if (is_null($viewRenderer->view)) { $viewRenderer->init(); } $this->_view = $viewRenderer->view; $prefix = 'Core_View_Helper'; $dir = dirname(__FILE__) . '/../../View/Helper'; $this->_view->addHelperPath($dir, $prefix); //Add base url to view $this->_view->baseUrl = $request->getBaseUrl(); }
/** * Force download dialog * * @param String $bytes The bytes that are to be downloaded * @param String $filename The filename of the downloaded file * @param Zend_Controller_Response_Abstract $response The response object * @return Void */ public function force($bytes, $filename, Zend_Controller_Response_Abstract $response) { if (!strlen($bytes)) { $response->setBody('Sorry, we could not find the requested file.'); } else { // Disable view and layout rendering Zend_Controller_Action_HelperBroker::getExistingHelper('viewRenderer')->setNoRender(); Zend_Controller_Action_HelperBroker::getExistingHelper('layout')->disableLayout(); // Process the download $this->_setHeaders($bytes, $filename, $response); $response->setBody($bytes); } }