Example #1
0
 private function sessionAndAuth(array $pagesAccessConfig)
 {
     $useAuth = $this->config->get('use_authentication');
     $session = new Session();
     $this->session = $session;
     if ($session->sessionExists()) {
         $session->sessionUpdate();
     } else {
         $session->sessionCreate();
     }
     $currentPage = $this->url->getCurrentPageName();
     $userRole = $session->getUserData('role');
     if ($currentPage == '') {
         $currentPage = $this->config->get('empty_page_index');
     }
     if ($useAuth) {
         if (!isset($pagesAccessConfig[$currentPage]) || empty($pagesAccessConfig[$currentPage]) || in_array($userRole, $pagesAccessConfig[$currentPage])) {
             return;
         } else {
             $this->session->setUserData('PAGE_BEFORE_LOGIN', $this->url->getCurrentUrl());
             $mainUrl = $this->url->getMainUrl();
             $loginPage = $mainUrl . 'login&not_allowed=1';
             $this->url->redirect($loginPage);
         }
     }
 }