public function entry()
    {
        $this->defaultData();
        $entries = array();
        foreach (EntryPointService::getRegistry()->getEntryPoints() as $entry) {
            if (tao_models_classes_accessControl_AclProxy::hasAccessUrl($entry->getUrl())) {
                $entries[] = $entry;
            }
        }

        if (empty($entries)) {
            // no access -> error
            if (common_session_SessionManager::isAnonymous()) {
                /* @var $urlRouteService DefaultUrlService */
                $urlRouteService = $this->getServiceLocator()->get(DefaultUrlService::SERVICE_ID);
                $this->redirect($urlRouteService->getLoginUrl());
            } else {
                common_session_SessionManager::endSession();
                return $this->returnError(__('You currently have no access to the platform'), true, 403);
            }
        } elseif (count($entries) == 1 && !common_session_SessionManager::isAnonymous()) {
            // single entrypoint -> redirect
            $entry = current($entries);
            return $this->redirect($entry->getUrl());
        } else {
            // multiple entries -> choice
            if (!common_session_SessionManager::isAnonymous()) {
                $this->setData('user', $this->getSession()->getUserLabel());
            }
            $this->setData('entries', $entries);
            $naviElements = $this->getNavigationElementsByGroup('settings');
            foreach($naviElements as $key => $naviElement) {
                if($naviElement['perspective']->getId() !== 'user_settings') {
                    unset($naviElements[$key]);
                    continue;
                }
            }

            if ($this->hasRequestParameter('errorMessage')){
                $this->setData('errorMessage', $this->getRequestParameter('errorMessage'));
            }
            $this->setData('logout', $this->getServiceLocator()->get(DefaultUrlService::SERVICE_ID)->getLogoutUrl());
            $this->setData('userLabel', $this->getSession()->getUserLabel());
            $this->setData('settings-menu', $naviElements);
            $this->setData('current-section', $this->getRequestParameter('section'));
            $this->setData('content-template', array('blocks/entry-points.tpl', 'tao'));
            $this->setView('layout.tpl', 'tao');
        }
    }
public function entry()
    {
        $this->defaultData();
        $entries = array();
        foreach (EntryPointService::getRegistry()->getEntryPoints() as $entry) {
            if (tao_models_classes_accessControl_AclProxy::hasAccessUrl($entry->getUrl())) {
                $entries[] = $entry;
            }
        }

        if (empty($entries)) {
            // no access -> error
            if (common_session_SessionManager::isAnonymous()) {
                /* @var $urlRouteService DefaultUrlService */
                $urlRouteService = $this->getServiceLocator()->get(DefaultUrlService::SERVICE_ID);
                $this->redirect($urlRouteService->getLoginUrl());
            } else {
                common_session_SessionManager::endSession();
                return $this->returnError(__('You currently have no access to the platform'), true, 403);
            }
        } elseif (count($entries) == 1 && !common_session_SessionManager::isAnonymous()) {
            // single entrypoint -> redirect
            $entry = current($entries);
            return $this->redirect($entry->getUrl());
        } else {
            // multiple entries -> choice
            if (!common_session_SessionManager::isAnonymous()) {
                $this->setData('user', $this->getSession()->getUserLabel());
            }
            $this->setData('entries', $entries);
            $naviElements = $this->getNavigationElementsByGroup('settings');
            foreach($naviElements as $key => $naviElement) {
                if($naviElement['perspective']->getId() !== 'user_settings') {
                    unset($naviElements[$key]);
                    continue;
                }
            }

            if ($this->hasRequestParameter('errorMessage')){
                $this->setData('errorMessage', $this->getRequestParameter('errorMessage'));
            }
            $this->setData('logout', $this->getServiceLocator()->get(DefaultUrlService::SERVICE_ID)->getLogoutUrl());
            $this->setData('userLabel', $this->getSession()->getUserLabel());
            $this->setData('settings-menu', $naviElements);
            $this->setData('current-section', $this->getRequestParameter('section'));
            $this->setData('content-template', array('blocks/entry-points.tpl', 'tao'));
            $this->setView('layout.tpl', 'tao');
        }
    }
public function entry ( ) { $ this -> defaultData ( ) ; $ entries = array ( ) ; foreach ( EntryPointService :: getRegistry ( ) -> getEntryPoints ( ) as $ entry ) { if ( tao_models_classes_accessControl_AclProxy :: hasAccessUrl ( $ entry -> getUrl ( ) ) ) { $ entries [ ] = $ entry ; } } if ( empty ( $ entries ) ) { // no access -> error if ( common_session_SessionManager :: isAnonymous ( ) ) { /* @var $urlRouteService DefaultUrlService */ $ urlRouteService = $ this -> getServiceLocator ( ) -> get ( DefaultUrlService :: SERVICE_ID ) ; $ this -> redirect ( $ urlRouteService -> getLoginUrl ( ) ) ; } else { common_session_SessionManager :: endSession ( ) ; return $ this -> returnError ( __ ( 'You currently have no access to the platform' ) , true , 403 ) ; } } elseif ( count ( $ entries ) == 1 && ! common_session_SessionManager :: isAnonymous ( ) ) { // single entrypoint -> redirect $ entry = current ( $ entries ) ; return $ this -> redirect ( $ entry -> getUrl ( ) ) ; } else { // multiple entries -> choice if ( ! common_session_SessionManager :: isAnonymous ( ) ) { $ this -> setData ( 'user' , $ this -> getSession ( ) -> getUserLabel ( ) ) ; } $ this -> setData ( 'entries' , $ entries ) ; $ naviElements = $ this -> getNavigationElementsByGroup ( 'settings' ) ; foreach ( $ naviElements as $ key => $ naviElement ) { if ( $ naviElement [ 'perspective' ] -> getId ( ) !== 'user_settings' ) { unset ( $ naviElements [ $ key ] ) ; continue ; } } if ( $ this -> hasRequestParameter ( 'errorMessage' ) ) { $ this -> setData ( 'errorMessage' , $ this -> getRequestParameter ( 'errorMessage' ) ) ; } $ this -> setData ( 'logout' , $ this -> getServiceLocator ( ) -> get ( DefaultUrlService :: SERVICE_ID ) -> getLogoutUrl ( ) ) ; $ this -> setData ( 'userLabel' , $ this -> getSession ( ) -> getUserLabel ( ) ) ; $ this -> setData ( 'settings-menu' , $ naviElements ) ; $ this -> setData ( 'current-section' , $ this -> getRequestParameter ( 'section' ) ) ; $ this -> setData ( 'content-template' , array ( 'blocks/entry-points.tpl' , 'tao' ) ) ; $ this -> setView ( 'layout.tpl' , 'tao' ) ; } }
First page, when arriving on a system
to choose front or back office
First page when arriving on a system to choose front or back office