コード例 #1
0
 public function preDispatch()
 {
     $this->getHelper('viewRenderer')->setNoController(true);
     $this->getHelper('viewRenderer')->setViewScriptPathNoControllerSpec('user/:action.:suffix');
     if (!$this->_getParam('user') && $this->getRequest()->getActionName() != 'error') {
         $code = $this->_getParam('code');
         if (!preg_match('#^(.*)-(\\w*)$#', $code, $m)) {
             $this->getRequest()->setParam('errorMessage', trlKwf("Activation code is invalid. Maybe the URL wasn't copied completely?"));
             $this->forward('error');
         } else {
             $userId = $m[1];
             $code = $m[2];
             $userModel = Kwf_Registry::get('userModel');
             $user = $userModel->getRow($userId);
             $this->getRequest()->setParam('user', $user);
             if (!$user) {
                 $this->getRequest()->setParam('errorMessage', trlKwf("Activation code is invalid. Maybe the URL wasn't copied completely?"));
                 $this->forward('error');
             } else {
                 if (!$user->validateActivationToken($code) && $user->isActivated()) {
                     $this->getRequest()->setParam('errorMessage', trlKwf("This account has already been activated."));
                     $this->forward('error');
                 } else {
                     if (!$user->validateActivationToken($code)) {
                         $this->getRequest()->setParam('errorMessage', trlKwf("Activation code is invalid. Maybe your account has already been activated, the URL was not copied completely, or the password has already been set?"));
                         $this->forward('error');
                     }
                 }
             }
         }
     }
     $this->view->dep = Kwf_Assets_Package_Default::getAdminMainInstance();
     parent::preDispatch();
 }
コード例 #2
0
 public function preDispatch()
 {
     if ($this->getRequest()->getActionName() == 'success') {
         if (!$this->getRequest()->getParam('row') instanceof Kwf_Model_Row_Interface) {
             //don't allow call to successAction directly, allow only forward from indexAction
             throw new Kwf_Exception_AccessDenied();
         }
     }
     $this->view->dep = Kwf_Assets_Package_Default::getAdminMainInstance();
     parent::preDispatch();
 }
コード例 #3
0
 public function ext($class, $config = array(), $viewport = null)
 {
     //das ist nötig weil wenn $config ein leeres Array ist, kommt sonst []
     //raus aber {} wird benötigt (array als config ist ungültig)
     $config = (object) $config;
     $vars = get_object_vars($this);
     foreach ($vars as $key => $value) {
         if ('_' != substr($key, 0, 1)) {
             $config->{$key} = $value;
         }
     }
     // View einrichten
     $ext['class'] = $class;
     if (!isset($config->id)) {
         $config->id = 'mainPanel';
     }
     if (!isset($config->region)) {
         $config->region = 'center';
     }
     if (isset($config->assetsPackage)) {
         $ext['assetsPackage'] = $config->assetsPackage;
         unset($config->assetsPackage);
     } else {
         $ext['assetsPackage'] = Kwf_Assets_Package_Default::getAdminMainInstance();
     }
     $ext['config'] = $config;
     if (!$viewport) {
         if (isset($config->viewport)) {
             $viewport = $config->viewport;
         } else {
             $viewport = Zend_Registry::get('config')->ext->defaultViewport;
         }
     }
     $ext['viewport'] = $viewport;
     $ext['userRole'] = 'guest';
     if (Zend_Registry::get('userModel')) {
         $ext['userRole'] = Zend_Registry::get('userModel')->getAuthedUserRole();
         $user = Zend_Registry::get('userModel')->getAuthedUser();
         if ($user) {
             $ext['user'] = "******";
         }
     }
     $this->ext = $ext;
     $this->extTemplate = 'ext.tpl';
     if (Kwf_Util_SessionToken::getSessionToken()) {
         $this->sessionToken = Kwf_Util_SessionToken::getSessionToken();
     }
     $this->applicationName = Zend_Registry::get('config')->application->name;
     $this->favicon = self::getFavicon();
     $this->uniquePrefix = Kwf_Config::getValue('application.uniquePrefix');
 }
コード例 #4
0
 public function errorAction()
 {
     $this->getHelper('viewRenderer')->setNoController(true);
     $this->getHelper('viewRenderer')->setViewScriptPathNoControllerSpec('user/:action.:suffix');
     $this->view->dep = Kwf_Assets_Package_Default::getAdminMainInstance();
     $this->view->contentScript = $this->getHelper('viewRenderer')->getViewScript('login-error');
     $this->view->errorMessage = $this->_getParam('errorMessage');
     $redirect = $this->_getParam('redirect');
     if ($redirect == 'jsCallback') {
         $redirect = 'javascript:window.close();';
     }
     $this->view->redirect = $redirect;
 }