Example #1
0
 protected function logoutAction()
 {
     try {
         $userLogin = new Bobr_User_UserLogin();
         $userLogin->logOut();
         Lib_Messanger::addNote('Uzivatel byl odhlasen.');
         Bobr_Request_HttpRequest::redirect(Link::build('login/login'));
     } catch (UserLoginException $e) {
         echo $e->getMessage();
     }
     return '';
 }
Example #2
0
 /**
  * Pokud se jedna o dynamickou routu nastavi ji a vrati TRUE.
  *
  * @return boolean
  */
 private function checkDynamicRoute()
 {
     $dynamicRoute = new Bobr_Request_DynamicRoute($this->lang);
     $uri = Bobr_Request_HttpRequest::uri();
     foreach ($dynamicRoute->items as $route) {
         // Pokud se to projde regularem mame lokalizovanou dinamickou routu.
         // Routa se ale jeste musi projet command validatorem. Jestli na ni ma user pravo.
         if (0 < preg_match('@' . $route->command . '@', $uri, $matches)) {
             $commandValidator = new Bobr_CommandValidator();
             $command = $commandValidator->getCommand($route->moduleFunctionId);
             // Pokud by byl command null znamenalo by to, ze uzivatel nema pravo na dany command.
             if (NULL !== $command) {
                 // Zjistime jestli jsme na spravne webInstanci
                 $webInstanceValidator = new Bobr_WebInstanceValidator();
                 if (FALSE === $webInstanceValidator->isCurrent($route->getWebInstanceId())) {
                     var_dump($webInstanceValidator->isCurrent($route->getWebInstanceId()));
                     Lib_Messanger::addNote('Url byla zadana chybne, presvedcte se zda-li jste na spravne strance.');
                     Bobr_Request_HttpRequest::redirect($this->webRoot);
                 }
                 // Pokud se uri neshoduje je v ni neco navic
                 if ($uri !== $matches[0]) {
                     Lib_Messanger::addNote('Url byla zadana chybne, presvedcte se zda-li jste na spravne strance.');
                     Bobr_Request_HttpRequest::redirect($this->webRoot . $matches[0]);
                 }
                 // Odstranime prvni polozku z pole, ta nas nezajima.
                 array_shift($matches);
                 // Mergneme lokalizovany command za vychozi.
                 $command = Lib_Tools::mergeCommand($command, $matches);
                 // A nastavime hodnoty pro dalsi praci.
                 $this->setCommand($command);
                 $this->setPageId($route->pageId);
                 return TRUE;
             } else {
                 Lib_Messanger::addNote('Nemate pravo na pristup na tuto stranku.');
                 Bobr_Request_HttpRequest::redirect($this->webRoot);
                 return FALSE;
             }
         }
     }
     return FALSE;
 }