/**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function anyEdit($id = false)
 {
     $content = $this->content->with(array('template_setting', 'setting'))->findOrFail($id);
     //dd($content->setting);
     //$permission = Permission::getPermission('content', $content->id, 'w');
     //$allPermissions = Permission::getContentPermissions($id);
     $allPermissions = \Permission::getControllerPermission($id, \Route::currentRouteAction());
     //foreach template setting we want to add a setting for this row..
     //dd($content->template_setting);
     if (!empty($content->template_setting)) {
         //TODO: There has to be a cleaner way of doing this.
         $all_settings = new \Illuminate\Database\Eloquent\Collection();
         foreach ($content->template_setting as $template_setting) {
             $fl = $content->setting->filter(function ($setting) use($template_setting) {
                 return $template_setting->name === $setting->name;
             });
             if ($fl->count()) {
                 foreach ($fl as $f) {
                     //if it's fount int content_settings and template_settings, use
                     $all_settings->push($f);
                 }
             } else {
                 $all_settings->push($template_setting);
             }
         }
         foreach ($content->setting as $setting) {
             $fl = $content->template_setting->filter(function ($template_setting) use($setting) {
                 return $setting->name === $template_setting->name;
             });
             if ($fl->count() == 0) {
                 $all_settings->push($setting);
             }
         }
     }
     $settings = $all_settings->groupBy('section');
     //dd($content->edit_package);
     //dd($content->edit_service_provider);
     //App::register($content->edit_service_provider); //we need to register any additional sp.. incase we have some weird edit page.
     $content = \Content::setDefaults($content);
     //dd($content->edit_package.'::'.$content->edit_view);
     if (\Request::ajax()) {
         return $this->render($content->edit_view, compact('content', 'content_defaults', 'settings', 'allPermissions'));
     } else {
         $tree = $content->getDescendants(config('bootlegcms.cms_tree_descendents'));
         return $this->render('layouts.tree', compact('content', 'content_defaults', 'settings', 'allPermissions'));
     }
 }