/** * Update a new task: load date and forward to view * * @param Request $request, Task $task * @return view */ public function stats_month(Request $request) { $categories = Countercategory::where('inactive', '!=', '1')->orderBy('name')->get(); //handle categories filter if ($request->category_id) { if ($request->category_id > 0) { $request->session()->put('counter_category_id', $request->category_id); $request->session()->put('counter_category', Countercategory::find($request->category_id)->name); } else { $request->session()->put('counter_category_id', False); $request->session()->put('counter_category', "All Categories"); } } $ses_category = $request->session()->get('counter_category'); $ses_category_id = $request->session()->get('counter_category_id'); //handle months $months = DB::table('counters')->select(DB::raw('distinct CONCAT(YEAR(date), "-", MONTH(date)) AS date'))->orderby('date')->get(); if ($ses_category_id > 0) { $counters = DB::table('counters')->leftjoin('countercategories', 'counters.counter_category_id', '=', 'countercategories.id')->select('counters.id as cid', 'countercategories.name as cname', 'countercategories.id as ccid', DB::raw('extract(month from date) as month'), DB::raw('extract(year from date) as year'), DB::raw('count(counters.id) as items'))->where('counter_category_id', '=', $ses_category_id)->groupBy('month', 'year')->orderBy('date')->get(); } else { $counters = DB::table('counters')->leftjoin('countercategories', 'counters.counter_category_id', '=', 'countercategories.id')->select('counters.id as cid', 'countercategories.name as cname', 'countercategories.id as ccid', DB::raw('extract(month from date) as month'), DB::raw('extract(year from date) as year'), DB::raw('count(counters.id) as items'))->groupBy('month', 'year')->orderBy('date')->get(); } return view('counters.stats_month', ['cats' => $counters, 'categories' => $categories, 'category' => $ses_category]); }
/** * Validate AND Save/Crate a new task. * * @param Request $request * @return Response */ public function store(Request $request) { $this->validate($request, ['name' => 'required|max:255']); $inactive = 0; if ($request->inactive) { $inactive = 1; } $input = array('name' => $request->name, 'inactive' => $inactive, 'css_class' => $request->css_class); if ($request->countercategory_id) { $countercategory = Countercategory::find($request->countercategory_id); $countercategory->fill($input)->save(); $request->session()->flash('alert-success', 'Counter Category was successful updated!'); } else { $countercategory = new Countercategory(); $countercategory = $countercategory->create($input); $request->session()->flash('alert-success', 'Counter Category was successful added!'); } $page = $request->session()->get('countercategories_page'); if ($request->save_edit) { return redirect('/countercategory/' . $countercategory->id . '/update'); } else { return redirect('/countercategories?page=' . $page); } }