setRequest($request) ->setResponse($response); $this->_helper = new Helper\Broker($this); $this->_flashMessenger = $this->_helper->getHelper('FlashMessenger'); $bootstrap = Front::getInstance()->getBootstrap(); $this->_settings = $bootstrap->getResource('settings'); $this->_user = $bootstrap->getResource('user'); $this->init(); } /** * * set translate adapter * * @param \Cube\Translate\Adapter\AbstractAdapter $translate * * @return $this */ public function setTranslate(TranslateAdapter $translate) { $this->_translate = $translate; return $this; } /** * * get translate adapter * * @return \Cube\Translate\Adapter\AbstractAdapter */ public function getTranslate() { if (!$this->_translate instanceof TranslateAdapter) { $translate = Front::getInstance()->getBootstrap()->getResource('translate'); if ($translate instanceof Translate) { $this->setTranslate( $translate->getAdapter()); } } return $this->_translate; } protected function _setNoLayout() { Front::getInstance()->getBootstrap()->getResource('view')->setNoLayout(); } /** * * checks if an admin is logged in * - will only work if using _forward() method or action() helper * * @param array $roles * * @return bool */ protected function _loggedInAdmin($roles = array()) { $authentication = Authentication::getInstance(); if ($authentication->hasIdentity()) { $storage = $authentication->getStorage()->read(); if (empty($roles)) { $roles = array_keys(UsersService::getAdminRoles()); } if (in_array($storage['role'], $roles)) { return true; } } return false; } /** * * dummy function used as a placeholder for translatable sentences * * @param $string * * @return string */ protected function _($string) { return $string; } }