Esempio n. 1
0
 /**
  * Display the specified resource.
  * @TODO pull out menu into its own model with a many to many relationship to
  *   Projects, Pages and Portfolios
  * @param  int  $id
  * @return Response
  */
 public function show($id = null)
 {
     $banner = FALSE;
     $type = "pages.show";
     $settings = $this->settings->first();
     if ($id == null) {
         $page = $this->pageModel->first();
         $pageCtrl = new \PagesController();
         return $pageCtrl->show($page);
     }
     //Try Page
     $page = $this->pageModel->where("slug", 'LIKE', '/' . $id)->first();
     if ($this->checkIfPublishedAndUserState($page)) {
         $page->slug === '/home' ? $banner = TRUE : ($banner = FALSE);
         $pageCtrl = new \PagesController();
         return $pageCtrl->show($page);
     }
     //Try Project
     $project = $this->project->where("slug", 'LIKE', '/' . $id)->first();
     if ($this->checkIfPublishedAndUserState($project)) {
         $projCtrl = new \ProjectsController();
         return $projCtrl->show($project);
     }
     //Try Portfolio
     $portfolio = $this->portfolio->where("slug", 'LIKE', '/' . $id)->first();
     if ($this->checkIfPublishedAndUserState($portfolio)) {
         $portfolioCtrl = new \PortfoliosController();
         return $portfolioCtrl->show($portfolio);
     }
     //Else 404
     return \View::make('404', compact('settings'));
 }