Exemplo n.º 1
0
 public function browse(Request $request, $category = null)
 {
     // get categories
     $categories = Category::orderBy('id', 'desc')->get();
     // get jobs
     if ($category != null) {
         $cat = Category::where('name', '=', $category)->first();
         $jobs = $cat->jobs;
     } else {
         $jobs = Jobs::query();
         // set condition category
         if ($request->has('category')) {
             $cat = Category::where('name', '=', $request->get('category'))->first();
             $jobs = $cat->jobs();
         }
         // set condition state
         if ($request->has('state')) {
             $jobs->where('state', '=', $request->get('state'));
         }
         // set condition keywords
         if ($request->has('keywords')) {
             $searchWords = explode(' ', $request->get('keywords'));
             foreach ($searchWords as $word) {
                 $jobs->orWhere('description', 'LIKE', '%' . $word . '%');
             }
         }
         $jobs = $jobs->orderBy('id', 'desc')->get();
     }
     return view('jobs.browse')->with('jobs', $jobs)->with('jobsCount', Jobs::count())->with('categories', $categories);
 }