protected function init($panel_name, $method = 'L', $id = 0)
 {
     $panel = new Panel();
     $this->id = $id;
     $this->name = $panel_name;
     $this->app_config = StationConfig::app();
     $this->user_scope = $panel->user_scope($this->name, $method, $this->subpanel_parent);
     // temp handling if someone is trying to access something they shouldn't
     if (!$this->user_scope) {
         dd('You do not have access to this');
     }
     // TODO: change handling. log it??
     $this->panel_config = $this->user_scope['config'];
     $this->single_item_name = $this->panel_config['panel_options']['single_item_name'];
     $this->user_data = Session::get('user_data');
     $this->assets = isset($this->assets) ? $this->assets : [];
     $this->base_uri = StationConfig::app('root_uri_segment') . '/';
     $this->foreign_data = $panel->foreign_data_for($this->user_scope, $method);
     $this->foreign_panels = $panel->foreign_panels_for($this->user_scope, $method);
     $this->array_img_size = $panel->img_sizes_for($this->user_scope, $this->app_config);
     $this->curr_panel = $this->subpanel_parent ?: $this->name;
     $this->panel_config['relative_uri'] = $this->base_uri . 'panel/' . $this->name;
     $this->panel_config['relative_uri'] = URL::to($this->panel_config['relative_uri']);
     View::share('base_uri', $this->base_uri);
     View::share('base_img_uri', 'http://' . $this->app_config['media_options']['AWS']['bucket'] . '.s3.amazonaws.com/');
     View::share('curr_panel', $this->curr_panel);
     View::share('curr_method', $method);
     View::share('single_item_name', $this->single_item_name);
     View::share('app_data', $this->app_config);
     View::share('panel_data', $this->panel_config);
     View::share('panel_name', $this->name);
     View::share('foreign_data', $this->foreign_data);
     View::share('foreign_panels', $this->foreign_panels);
     View::share('user_data', $this->user_data);
     View::share('base_uri', $this->base_uri);
     View::share('img_size_data', $this->array_img_size);
     View::share('sidenav_data', $panel->user_panel_access_list());
 }