Example #1
0
 /**
  * Updates the list from database, in the right format for rendering the partial
  * @param options An array of options
  */
 private function updatePortfolioList($options = array())
 {
     // Defaulting options
     $options = array_merge($this->listOptionsDefault, $options);
     // Filter list according to connected user
     if (Auth::check()) {
         $this->portfolioList = PortfolioModel::where('user_id', '=', Auth::getUser()->id);
     } else {
         $this->portfolioList = PortfolioModel::where('user_id', '=', NULL);
     }
     // Applying options
     if ($options['include_closed'] == false) {
         $this->portfolioList = $this->portfolioList->where(function ($query) {
             $query->where('close_date', '>=', date('Y-m-d'))->orWherenull('close_date');
         });
     }
     // Getting filtered list
     $this->portfolioList = $this->portfolioList->orderBy('description', 'ASC');
     $this->portfolioList = $this->portfolioList->get();
     if ($this->portfolioList && $this->portfolioList->count()) {
         $this->portfolioList->each(function ($portfolio) {
             $portfolio->setUrl($this->controller, $this->portfolioDetails);
         });
     }
 }
Example #2
0
 protected function loadPortfolio($portfolio_id)
 {
     if ($portfolio_id == '' || !is_numeric($portfolio_id)) {
         throw new ApplicationException(trans('piratmac.smmm::lang.messages.error_no_id'));
     }
     $portfolio = PortfolioModel::where('id', $portfolio_id)->firstOrFail();
     if (!$portfolio->checkUser()) {
         throw new ApplicationException(trans('piratmac.smmm::lang.messages.error_wrong_user'));
     }
     return $portfolio;
 }
Example #3
0
 public function init()
 {
     $this->addJs('/plugins/piratmac/smmm/assets/js/smmm.js');
     $this->addJs('https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.1.0/Chart.min.js');
     $this->addJs('/modules/backend/formwidgets/datepicker/assets/js/build-min.js');
     $this->addCss('/modules/backend/formwidgets/datepicker/assets/vendor/pikaday/css/pikaday.css');
     $this->portfolios = PortfolioModel::where('user_id', '=', Auth::getUser()->id)->get();
     $this->assets = AssetModel::all()->sortBy('title');
     $this->portfolios->each(function ($portfolio) {
         $portfolio->heldAssetsList = $portfolio->heldAssets->sortBy('title')->unique();
     });
 }