view = new View(); $this->headerView = new View(); $this->footerView = new View(); $this->request = $request; $this->template = !empty($request['action']) ? $request['action'] : 'default'; if(isset($request['action']) && $request['action'] === "login" && isset($request['username'])) { echo "jo"; $user->login($request['username'], $request['password']); } if(isset($request['action']) && $request['action'] === "logout") { $user->logout(); } if(!isset($_SESSION['loggedIn']) || (isset($_SESSION['loggedIn']) && !$_SESSION['loggedIn'])) { $user->setLoggedIn(false); } else { $user->loginByUsername($_SESSION['username']); } } /** * Methode zum anzeigen des Contents. * * @return String Content der Applikation. */ public function display() { global $user; if($user->getLoggedIn()) { $innerView = new View(); switch($this->template){ case 'login': $innerView->setTemplate('login'); $entryid = $this->request['id']; $entry = Model::getEntry($entryid); $innerView->assign('title', $entry['title']); $innerView->assign('content', $entry['content']); break; case 'profile': $innerView->setTemplate('profile'); $openvpn = new OpenVPNStatus("/home/moritz/www/openvpn-status.log"); $clientName = $user->getClients(); $hostname = searchForHostname($clientName, $openvpn->logfile); $innerView->assign('openvpn', $openvpn->logfile[$hostname]); break; case 'download': $innerView->setTemplate('download'); break; case 'label': $innerView->setTemplate('label'); $innerView->assign('label', getLabelById($this->request['labelId'])); $documentView = new View(); $documentView->setTemplate('documentlist'); $documentView->assign('labelId', $this->request['labelId']); $innerView->assign('documentlist', $documentView->loadTemplate()); break; case 'default': default: $entries = Model::getEntries(); $innerView->setTemplate('default'); } $this->headerView->setTemplate('header'); $this->footerView->setTemplate('footer'); $this->view->setTemplate('matrix'); $this->headerView->assign('title', 'atOfficeWeb'); $this->headerView->assign('request', $this->request); $this->headerView->assign('labels', getLabels()); $this->view->assign('blog_title', $this->headerView->loadTemplate()); $this->view->assign('blog_footer', $this->footerView->loadTemplate()); $this->view->assign('blog_content', $innerView->loadTemplate()); return $this->view->loadTemplate(); } else { $this->view->setTemplate('login'); //$this->view->assign('blog_content', $innerView->loadTemplate()); return $this->view->loadTemplate(); } } } ?>