/**
  * Show the application welcome screen to the user.
  *
  * @return Response
  */
 public function index()
 {
     DB::connection()->enableQueryLog();
     $data['location'] = GeoIP::getLocation();
     $l_city = $data['location']['city'];
     $l_state = $data['location']['state'];
     $agent = new Agent();
     $get_city = \App\City::where('city', '=', $l_city)->take(1)->get();
     if (count($get_city) != 0) {
         foreach ($get_city as $c) {
             $city = $c->id;
         }
     } else {
         $city = 894;
         $data['location']['city'] = 'Phoenix';
         $data['location']['state'] = 'AZ';
     }
     $data['recent_restaurants'] = \App\Restaurants::where('having_menu', '=', '1')->where('city_id', '=', $city)->orderBy(DB::raw('RAND()'))->take(4)->get();
     $data['recent_reviews'] = \App\Restaurant_Reviews::orderBy(DB::raw('RAND()'))->leftJoin('restaurants', 'restaurants_reviews.restaurants_id', '=', 'restaurants.id')->leftJoin('city', 'restaurants.city_id', '=', 'city.id')->leftJoin('state', 'restaurants.state_id', '=', 'state.id')->take(6)->get();
     //$data['nearest_zip'] = \App\Zip::where('zip', '>', (int)session('geoip-locations.postal_code')-10)->where('zip', '<', (int)session('geoip-locations.postal_code')+10)
     //  ->take(5)->get();
     //dd(DB::getQueryLog());
     //dd($data['recent_reviews']);
     if ($agent->isMobile()) {
         return view('mobile_home')->with($data);
     } else {
         return view('home')->with($data);
     }
 }
 public function submit()
 {
     if (Input::get('rating') == 'one') {
         $rating = 1;
     }
     if (Input::get('rating') == 'two') {
         $rating = 2;
     }
     if (Input::get('rating') == 'three') {
         $rating = 3;
     }
     if (Input::get('rating') == 'four') {
         $rating = 4;
     }
     if (Input::get('rating') == 'five') {
         $rating = 5;
     }
     DB::table('restaurants_reviews')->insert(['restaurants_id' => Input::get('rid'), 'user_id' => 0, 'text' => 'qwe', 'review_text' => Input::get('text'), 'rating' => $rating, 'source' => 'RL', 'source_link' => 'RL', 'updated_at' => '', 'user_name' => 'Guest', 'user_location' => Session::get('geoip-location.city') . ', ' . Session::get('geoip-location.state'), 'spin_status' => 1]);
     echo '<script>alert("Thank You for your valuable review");</script>';
     $data['restaurant'] = \App\Restaurants::where('permalink', '=', Input::get('rlink'))->take(1)->get();
     $agent = new Agent();
     if ($agent->isMobile()) {
         return \View::make('mobile_restaurant')->with('data', $data);
     } else {
         return \View::make('restaurant')->with('data', $data);
     }
 }
 function request_online_order()
 {
     if (Request::ajax()) {
         $data = Input::all();
         \App\Restaurants::where('id', '=', $data['id'])->increment('request_order');
     }
 }
 public function voice()
 {
     $data = Input::all();
     ////$results = \App\Restaurants::getSearchDetail($data['q']);
     $recent = \App\Restaurants::where('name', 'like', $data['q'])->take(10)->get();
     print_r($recent);
     return \View::make('search')->with('recent', $recent);
     //DB::table('users')->where('votes', '>', 100)->get();
 }
 public static function normalSearch($user_config)
 {
     $recent = \App\Restaurants::where('name', 'like', '%' . $user_config['keywords'] . '%')->take(10)->get();
     return $recent;
 }
 public static function getBannerSearchData($user_config)
 {
     if ($user_config['name'] != '' && $user_config['city'] != '' && $user_config['state'] != '' && $user_config['zip'] != '') {
         $result['city'] = \App\City::where('city', 'LIKE', $user_config['city'] . '%')->pluck('id');
         $result['state'] = \App\State::where('state', 'LIKE', $user_config['state'] . '%')->pluck('id');
         $result_set = Restaurants::where('name', 'LIKE', $user_config['name'] . '%')->where('state_id', $result['state'])->where('city_id', $result['city'])->where('zip', $user_config['zip'])->get();
         return $result_set;
     } else {
         if ($user_config['name'] != '' || $user_config['city'] != '' || $user_config['state'] != '' || $user_config['zip'] != '') {
             if ($user_config['name'] != '') {
                 $result_set = Restaurants::where('name', 'LIKE', $user_config['name'] . '%')->get();
                 return $result_set;
             } else {
                 if ($user_config['city'] != '') {
                     $result = \App\City::where('city', 'LIKE', $user_config['city'] . '%')->pluck('id');
                     $result_set = Restaurants::where('city_id', $result)->get();
                     return $result_set;
                 } else {
                     if ($user_config['name'] != '' && $user_config['city'] != '') {
                         $result = \App\City::where('city', 'LIKE', $user_config['city'] . '%')->pluck('id');
                         $result_set = Restaurants::where('city_id', $result)->where('name', 'LIKE', $user_config['name'] . '%')->get();
                         return $result_set;
                     } else {
                         return false;
                     }
                 }
             }
         }
     }
 }
Route::post('write-a-review', array('as' => 'write-a-review/submit', 'uses' => 'WriteReviewController@submit'));
Route::get('write-a-review', function () {
    $data['meta_title'] = 'Write a Review for the Restaurants | Restaurant Listings|';
    $data['meta_description'] = 'Write a review | Restaurants Review | Online food Order, Get Menu, Reviews, Contact, Location Maps, Directions';
    $data['meta_keywords'] = 'Write A Review, Restaurants Reviews, Online food Order, Get Menu, Reviews, Contact, Location Maps, Directions';
    $data['location'] = Session::get('geoip-location.city') . ', ' . Session::get('geoip-location.state');
    $agent = new Agent();
    if ($agent->isMobile()) {
        return View::make('mobile_write_review')->with($data);
    } else {
        return View::make('write_review')->with($data);
    }
});
Route::post('write-a-review/search', array('as' => 'write-a-review/search', 'uses' => 'WriteReviewController@search'));
Route::get('write-a-review/{permalink}', function ($permalink) {
    $data['restaurant'] = \App\Restaurants::where('permalink', '=', $permalink)->take(1)->get();
    $data['meta_title'] = 'Write a Review for the restaurant | Restaurant Listings|';
    $data['meta_description'] = 'Write a review | Restaurants Review | Online food Order, Get Menu, Reviews, Contact, Location Maps, Directions';
    $data['meta_keywords'] = 'Write A Review, Restaurants Reviews, Online food Order, Get Menu, Reviews, Contact, Location Maps, Directions';
    $agent = new Agent();
    if ($agent->isMobile()) {
        return View::make('mobile_write_review_landing')->with($data);
    } else {
        return View::make('write_review_landing')->with($data);
    }
});
Route::get('voice', function () {
    return View::make('voice');
});
Route::post('voice', 'SearchController@voice');
Route::controllers(['auth' => 'Auth\\AuthController', 'password' => 'Auth\\PasswordController']);