public function map(Request $request)
 {
     $uri = $request->getRequestUri();
     $uri = trim($uri, '/');
     $page = $this->r_page->findWhere(['uri' => $uri])->first();
     if (is_null($page)) {
         abort(404);
     }
     return cmsview('pages::pages.pages.page', ['header' => ['title' => '', 'description' => ''], 'page' => ['title' => $page->title, 'content' => $page->content]]);
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  int $id
  * @return Response
  */
 public function update($id, IFormRequest $request)
 {
     $title = $request->get('title');
     $slug = slugify($title);
     $uri = $slug;
     // Todo : when page parent in place, construct child URI
     $page = $this->r_page->update(['title' => $title, 'content' => $request->get('content'), 'is_home' => $request->get('is_home'), 'slug' => $slug, 'uri' => $uri], $id);
     return $this->redirectTo('admin/pages');
 }
 public function registerRoutes()
 {
     if (cmsinstalled()) {
         // xABE Todo :: CACHE THIS
         $pages = $this->r_page->findWhere(['is_home' => 0]);
         $config['namespace'] = 'Modules\\Pages\\Http\\Controllers';
         $config['middleware'] = ['web'];
         if ($pages->count()) {
             $this->router->group($config, function ($router) use($pages) {
                 foreach ($pages as $page) {
                     $router->get($page->uri, 'PagesController@map');
                 }
             });
         }
     }
 }