view = new View(); $this->request = $request; $this->template = !empty($request['view']) ? $request['view'] : 'default'; $GLOBALS['db'] = new Database($GLOBALS['conf']); if(!empty($request['action']) && $request['action'] === "scrape") { $source = $GLOBALS['db']->getAllAssoc("sources", "id", $request['sourceID']); if($source[0]['type'] == 0) { // Series $this->scraper = new SeriesScraper(); $this->scraper->scrapeFolder($request['sourceID']); } else { $this->scraper = new MovieScraper(); $this->scraper->scrapeFolder($request['sourceID']); } } if(!empty($request['action']) && $request['action'] === "scrapeSingleTV") { $this->scraper = new SeriesScraper(); $this->scraper->downloadSeriesByID($request['moviedbID'], urldecode($request['path']), $request['sourceID']); } if(!empty($request['action']) && $request['action'] === "scrapeSingleMovie") { $this->scraper = new MovieScraper(); $this->scraper->downloadMovieByID($request['moviedbID'], urldecode($request['path']), $request['sourceID']); } if(!empty($request['action']) && $request['action'] === "login") { User::login($request); } if(!empty($request['action']) && $request['action'] === "logout") { User::logout(); } if(!empty($request['action']) && $request['action'] === "removeSeries") { SeriesScraper::remove($request['seriesID']); } if(!empty($request['action']) && $request['action'] === "updateSeries") { $this->scraper = new SeriesScraper(); $this->scraper->update($request['seriesID']); } if(!empty($request['action']) && $request['action'] === "removeMovie") { MovieScraper::remove($request['movieID']); } if(!empty($request['action']) && $request['action'] === "updateMovie") { $this->scraper = new MovieScraper(); $this->scraper->update($request['movieID']); } if(!empty($request['action']) && $request['action'] === "updateUserInfo") { User::update($request['newPassword'], $request['newPasswordConfirmation'], $request['newEmail'], $request['oldEmail']); } if(!empty($request['action']) && $request['action'] === "invite") { User::invite($request['inviteMail']); } if(!empty($_SESSION['user'])) { $GLOBALS['user'] = unserialize($_SESSION['user']); } if(empty($_SESSION['user']) && !empty($_SESSION['loggedIn']) && $_SESSION['loggedIn']) { $_SESSION['user'] = serialize(new User($_SESSION['mail'])); } } /** * Methode zum anzeigen des Contents. * * @return String Content der Applikation. */ public function display() { if(!empty($_SESSION['loggedIn']) && $_SESSION['loggedIn']) { $view = new View(); $headerView = new View(); $footerView = new View(); switch($this->template) { case 'admin': if($GLOBALS['user']->getAdmin() == 0) { echo "neeeee"; exit(1); } $view->setTemplate('admin'); $view->assign('sources', $GLOBALS['db']->getAllAssoc("sources")); $view->assign('series', Model::getSeries()); $view->assign('movies', Model::getMovies()); break; case 'scrape': $view->setTemplate('scrape'); $view->assign('scraper', $this->scraper); break; case 'seasons': $view->setTemplate('seasons'); $view->assign('seasons', Model::getSeasonsBySeriesID($this->request['seriesID'])); break; case 'season': $view->setTemplate('season'); $view->assign('episodes', Model::getEpisodesBySeasonID($this->request['seasonID'])); break; case 'episode': $view->setTemplate('episode'); $view->assign('episode', Model::getEpisodeByID($this->request['episodeID'])); $view->assign('videoFile', Model::getAbsouluteVideoPathByEpisodeID($this->request['episodeID'])); break; case 'movie': $view->setTemplate('movie'); $view->assign('movie', Model::getMovieByID($this->request['movieID'])); $view->assign('videoFile', Model::getAbsouluteVideoPathByMovieID($this->request['movieID'])); break; case 'user': $view->setTemplate('user'); break; case 'default': default: $view->setTemplate('content'); $view->assign('series', Model::getSeries()); $view->assign('movies', Model::getMovies()); } $this->view->setTemplate('matrix'); $headerView->setTemplate('header'); $footerView->setTemplate('footer'); $this->view->assign('header', $headerView->loadTemplate()); $this->view->assign('footer', $footerView->loadTemplate()); $this->view->assign('content', $view->loadTemplate()); return $this->view->loadTemplate(); } else { $view = new View(); $view->setTemplate('login'); return $view->loadTemplate(); } } } ?>