/** * return the city->id of an autocomplete search * * @param $city * * @return false|Model */ public static function getCityFromAutoComplete($city) { preg_match('/\\((.*?)\\)/', $city, $province); if (!isset($province[1])) { return false; } $province = Province::whereSlug(str_slug($province[1]))->first(); $city = preg_split('/\\(([\\s]*)/', $city); if (!isset($city[0])) { return false; } $city = City::where(['slug' => str_slug($city[0]), 'province_id' => $province->id])->first(); if ($city) { return $city->id; } return false; }
/** * Show all adds in a province * * @param $slug * * @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View */ public function showProvince($slug) { $province = Province::whereSlug($slug)->first(); $categories = ClassifiedCategory::orderBy('id')->get(); $items = Classified::join('cities', 'classifieds.city_id', '=', 'cities.id')->where('cities.province_id', '=', $province->id)->select('classifieds.*')->orderBy('publish_at', 'desc')->get(); return view('classifieds.classified_province', compact('province', 'categories', 'items')); }