/**
  * Search tweets by place.
  *
  * @param varchar   city
  * @param number    lat
  * @param number    lng
  * @return json
  */
 public function getTweets($city, $lat, $lng)
 {
     $city = strtoupper($city);
     $data = [];
     $tweets = SearchHistory::where('cookie_id', '=', $_COOKIE['id'])->where('search_term', '=', $city)->get();
     if (count($tweets) == 0) {
         $search_status = Twitter::getSearch(['q' => $city, 'geocode' => $lat . "," . $lng . ",50km", 'format' => 'array']);
         foreach ($search_status['statuses'] as $status) {
             $arr = [];
             $arr['cookie_id'] = $_COOKIE['id'];
             $arr['id'] = $status['id'];
             $arr['text'] = $status['text'];
             $arr['tweeted_at'] = $status['created_at'];
             $arr['user']['id'] = $status['user']['id'];
             $arr['user']['name'] = $status['user']['name'];
             $arr['user']['screen_name'] = $status['user']['screen_name'];
             $arr['user']['image'] = $status['user']['profile_image_url_https'];
             $arr['coordinates']['lat'] = $status['coordinates']['coordinates'][0];
             $arr['coordinates']['lng'] = $status['coordinates']['coordinates'][1];
             if ($arr['coordinates']['lng'] != null && $arr['coordinates']['lng'] != null) {
                 array_push($data, $arr);
             }
         }
         SearchHistory::create(['cookie_id' => $_COOKIE['id'], 'search_term' => $city, 'lat' => $lat, 'lng' => $lng, 'tweets' => $data]);
     } else {
         $data = $tweets[0]->tweets;
     }
     return json_encode($data);
 }