/**
  *
  * @param Request $request
  * @return mixed
  */
 public function store(Request $request)
 {
     $filter = new SavedFilter($request->only(['name', 'filter']));
     $filter->user()->associate(Auth::user());
     $filter->save();
     return $this->responseCreatedWithTransformer($filter, new SavedFilterTransformer());
 }
Esempio n. 2
0
 public function run()
 {
     $this->defaults = Config::get('filters.defaults');
     $filters = [['name' => 'bank account expenses', 'filter' => ['accounts' => ['in' => [1], 'out' => []], 'types' => ['in' => ['expense'], 'out' => []], 'displayFrom' => 1, 'displayTo' => 30]], ['name' => 'bank account expenses page 2', 'filter' => ['accounts' => ['in' => [1], 'out' => []], 'types' => ['in' => ['expense'], 'out' => []], 'offset' => 2, 'numToFetch' => 2, 'displayFrom' => 3, 'displayTo' => 4]], ['name' => 'cash account expenses', 'filter' => ['accounts' => ['in' => [2], 'out' => []], 'types' => ['in' => ['expense'], 'out' => []], 'displayFrom' => 1, 'displayTo' => 30]], ['name' => 'bank account income', 'filter' => ['accounts' => ['in' => [1], 'out' => []], 'types' => ['in' => ['income'], 'out' => []], 'displayFrom' => 1, 'displayTo' => 30]], ['name' => 'cash account income', 'filter' => ['accounts' => ['in' => [2], 'out' => []], 'types' => ['in' => ['income'], 'out' => []], 'displayFrom' => 1, 'displayTo' => 30]]];
     $users = User::all();
     foreach ($users as $user) {
         foreach ($filters as $filter) {
             $mergedFilter = array_merge($this->defaults, $filter['filter']);
             $newFilter = new SavedFilter(['name' => $filter['name'], 'filter' => $mergedFilter]);
             $newFilter->user()->associate($user);
             $newFilter->save();
         }
     }
 }