public function onEntry() { global $cookie_found; if (isset($_POST['logTheUserOut'])) { unset(Session::sess()->user); header('Location: ' . BASEPATH . '/' . DEFAULTPAGE); exit; } elseif (isset($_POST['logTheUserIn']) && !empty($_POST['userName']) && !empty($_POST['userPass']) && !isset(Session::sess()->user)) { $userData = new Data_User(Data_User::LDAP, $_POST['userName'], $_POST['userPass']); Session::sess()->user = $userData->getUser(); } if (isset(Session::sess()->user)) { Acl::acl()->setRole(Session::sess()->user->role); } else { Acl::acl()->setRole(); } }
/** * menu will be built before the content is generated. * * @access public * @return void */ public function beforeContent() { $menu = $this->document->getElementById($this->id); if ($menu) { $this->document->addCss('public/css/multimenu.css'); $menu->removeAttribute('style'); $menuList = $this->document->createElement('ul'); foreach ($this->menuItems as $lbl => $page) { if (is_array($page) && isset($page['default'])) { $checkPage = $page['default']; } else { $checkPage = $page; } if (Acl::acl()->isAllowed($checkPage)) { $menuList->appendChild($this->fillMenu($lbl, $page)); } } $menu->appendChild($menuList); } }
/** * default page run. * all is controlled by thisone (well thisone is called from __toString) * * @access private * @return void */ private function run() { /* onentry modules */ $this->runModules('onEntry'); $rq = new RequestHandler($this->defaultPage, $this->basepath); /* beforeContent modules */ $this->runModules('beforeContent'); $page = null; $classname = "Pages_" . ucfirst($rq->getPage()); if (class_exists($classname) && Acl::acl()->isAllowed($rq->getPage())) { $page = new $classname($this->document, $this->toArray()); if (!$page instanceof IPages) { throw new Exception('the page doesnt implement the page interface'); } if ($rq->getParameters() != null) { $page->setParameters($rq->getParameters()); } if ($rq->getAction() != null && method_exists($page, $rq->getAction())) { $action = $rq->getAction(); $page->{$action}(); } else { $page->index(); } } else { $page = new Pages_404($this->document, $this->toArray()); $page->index(); } /* afterContent modules */ $this->runModules('afterContent'); /* onExit modules */ $this->runModules('onExit'); }