function getLatLongFromAddressGeoCoder($address)
{
    $addressExp = explode(",", $address);
    if (count($addressExp) == 3) {
        $addr = urlencode($addressExp[0]);
        $city = urlencode($addressExp[1]);
        $stateZip = explode(" ", $addressExp[2]);
        $state = urlencode($stateZip[0]);
        $zip = urlencode($stateZip[1]);
        //$address = urlencode($address);
        $url = "http://geocoder.maplarge.com/geocoder/json?address={$addr}&city={$city}&state={$state}&zip={$zip}&country=USA";
        //$details_url = "http://maps.googleapis.com/maps/api/geocode/json?address=".$address."&key=AIzaSyAehpaOE86x5u7jBMa3TlhjzDwZ4_6rU68";
        $data = getCachedContent($url, get_data($url));
        $data = json_decode($data, true);
        // If Status Code is ZERO_RESULTS, OVER_QUERY_LIMIT, REQUEST_DENIED or INVALID_REQUEST
        if (!$data['lat']) {
            return null;
        }
        $lat = $data['lat'];
        $lng = $data['lng'];
        $response = array();
        $response['latitude'] = $lat;
        $response['longitude'] = $lng;
    } else {
        $response['latitude'] = 0.0;
        $response['longitude'] = 0.0;
    }
    return $response;
}
function googleImageSearch($searchQueryUrl)
{
    $randomIP = long2ip(rand(0, "4294967295"));
    $url = $searchQueryUrl . "&rsz=2&imgsz=medium&userip={$randomIP}";
    $data = getCachedContent($searchQueryUrl . "1", get_data($url));
    $json = json_decode($data);
    $imgUrl = $json->responseData->results[0]->unescapedUrl;
    return $imgUrl;
}
Example #3
0
function stubhubAPI_findEvents($queryString, $optionsArray)
{
    // Filter Parameters
    $q = urlencode(strtolower($queryString));
    $userLat = $optionsArray['userLat'];
    $userLong = $optionsArray['userLng'];
    $filterCity = $optionsArray['city'];
    $filterState = $optionsArray['state'];
    $filterDate = $optionsArray['date'];
    $filterDesc = $optionsArray['desc'];
    $filterRadius = $optionsArray['radius'];
    $endpoint_stubhub = "http://publicfeed.stubhub.com/listingCatalog/select/";
    $url = "{$endpoint_stubhub}?q={$q}&wt=json&stubhubDocumentType=event&rows=50&city={$filterCity}";
    $data = $data = getCachedContent($url, get_data($url));
    //get_data($url);
    $json = json_decode($data);
    $num = $json->response->numFound;
    $gEvents = array();
    $i = 0;
    // Loop through Json Results from CURL resuest
    while ($i < $num) {
        $externalId = empty($json->response->docs[$i]->event_id) ? null : $json->response->docs[$i]->event_id;
        $city = empty($json->response->docs[$i]->city) ? null : $json->response->docs[$i]->city;
        $state = empty($json->response->docs[$i]->state) ? null : $json->response->docs[$i]->state;
        $date = empty($json->response->docs[$i]->event_date) ? null : substr($json->response->docs[$i]->event_date, 0, -10);
        $desc = empty($json->response->docs[$i]->description) ? null : $json->response->docs[$i]->description;
        $title = empty($json->response->docs[$i]->title) ? null : $json->response->docs[$i]->title;
        $venueExternalId = empty($json->response->docs[$i]->venue_config_id) ? null : $json->response->docs[$i]->venue_config_id;
        $venueName = empty($json->response->docs[$i]->venue_name) ? null : $json->response->docs[$i]->venue_name;
        $venueAddress = empty($json->response->docs[$i]->addr1) ? null : $json->response->docs[$i]->addr1;
        $country = empty($json->response->docs[$i]->country) ? null : $json->response->docs[$i]->country;
        $postalCode = empty($json->response->docs[$i]->zip) ? null : $json->response->docs[$i]->zip;
        $defaultDomain = empty($json->response->docs[$i]->defaultDomain) ? "http://stubhub.com" : $json->response->docs[$i]->defaultDomain;
        $venueExternalUrl = empty($json->response->docs[$i]->venueDetailUrlPath) ? null : "http://" . $defaultDomain . "/" . $json->response->docs[$i]->venueDetailUrlPath;
        $latitude = empty($json->response->docs[$i]->latitude) ? null : $json->response->docs[$i]->latitude;
        $longitude = empty($json->response->docs[$i]->longitude) ? null : $json->response->docs[$i]->longitude;
        $timezone = empty($json->response->docs[$i]->jdk_timezone) ? null : $json->response->docs[$i]->jdk_timezone;
        $startTime = empty($json->response->docs[$i]->event_date) ? null : str_replace("T", " ", substr($json->response->docs[$i]->event_date, 0, -1));
        $minPrice = empty($json->response->docs[$i]->minPrice) ? null : $json->response->docs[$i]->minPrice;
        $maxPrice = empty($json->response->docs[$i]->maxPrice) ? null : $json->response->docs[$i]->maxPrice;
        $channel = empty($json->response->docs[$i]->channel) ? null : strtolower($json->response->docs[$i]->channel);
        $eventExternalUrl = empty($json->response->docs[$i]->urlpath) ? null : "http://" . $defaultDomain . "/" . $json->response->docs[$i]->urlpath;
        $imageExternalUrl = empty($json->response->docs[$i]->image_url) ? null : $json->response->docs[$i]->image_url;
        $geoParent = empty($json->response->docs[$i]->geography_parent) ? null : $json->response->docs[$i]->geography_parent;
        $imageExternalUrlLong = empty($json->response->docs[$i]->image_url) ? null : "http://cache1.stubhubstatic.com/data/venue_maps/" . $geoParent . "/" . $json->response->docs[$i]->image_url;
        if (null != $latitude && null != $longitude && null != $userLat && null != $userLong) {
            $distance = distanceInMiles($userLat, $userLong, $latitude, $longitude);
        } else {
            $distance = null;
        }
        $currentEvent = true;
        if (!empty($startTime)) {
            date_default_timezone_set($timezone);
            $currentUnixTime = strtotime("now");
            $eventUnixTime = strtotime($startTime);
            $currentEvent = $currentUnixTime > $eventUnixTime ? false : true;
        }
        // If no externalId is set, don't pull record. Avoids empty
        // records from getting pulled.
        if (!empty($externalId) && $currentEvent) {
            if (empty($filterCity) || strtolower($filterCity) == strtolower($city)) {
                if (empty($filterState) || strtolower($filterState) == strtolower($state)) {
                    if (empty($filterDate) || $filterDate == $date) {
                        if (empty($filterDesc) || strpos(strtolower($desc), strtolower($filterDesc)) !== FALSE) {
                            if (empty($filterRadius) || $distance <= $filterRadius && $distance > 0) {
                                $gEvent = new gEvent();
                                $gEvent->setExternal_id($externalId);
                                $gEvent->setDatasource("stubhub");
                                $gEvent->setTitle($title);
                                $gEvent->setDescription($desc);
                                $gEvent->setNotes("");
                                $gEvent->setVenue_external_id($venueExternalId);
                                $gEvent->setVenue_name($venueName);
                                $gEvent->setVenue_address($venueAddress);
                                $gEvent->setCountry_name($country);
                                $gEvent->setState_name($state);
                                $gEvent->setCity_name($city);
                                $gEvent->setPostal_code($postalCode);
                                $gEvent->setVenue_external_url($venueExternalUrl);
                                $gEvent->setLatitude($latitude);
                                $gEvent->setLongitude($longitude);
                                $gEvent->setDistance(number_format((double) $distance, 2, '.', ''));
                                $gEvent->setTimezone($timezone);
                                $gEvent->setTimezone_abbr(convertTimezoneToAbbr($timezone));
                                $gEvent->setStart_time($startTime);
                                $gEvent->setEnd_time("");
                                $gEvent->setStart_date_month(convertDateToMonthOptions($startTime));
                                $gEvent->setStart_date_day(convertDateToDayOptions($startTime, $timezone));
                                $gEvent->setStart_date_year(convertDateToYearOptions($startTime));
                                $gEvent->setStart_date_time(convertDateToTimeOptions($startTime));
                                $gEvent->setPrice_range($minPrice . " - " . $maxPrice);
                                if (substr($gEvent->getPrice_range(), 0, 2) === "0 ") {
                                    $gEvent->setIs_free(true);
                                } else {
                                    if ($gEvent->getPrice_range() !== null) {
                                        $gEvent->setIs_free(false);
                                    }
                                }
                                $minorGenre = trim(str_replace("tickets", " ", $channel));
                                $majorGenre = trim(str_replace("tickets", " ", $channel));
                                $gEvent->setMinor_genre(array($minorGenre));
                                $gEvent->setMajor_genre(array($majorGenre));
                                $gEvent->setEvent_external_url($eventExternalUrl);
                                // Populate image links found
                                $gEventImages = array();
                                $gImage = new gEventImage();
                                $searchImageQuery = explode("[", $desc);
                                $searchImageQuery = explode("-", $searchImageQuery[0]);
                                $searchImageQuery = urlencode($searchImageQuery[0]);
                                $searchImageUrl = "https://ajax.googleapis.com/ajax/services/search/images?v=1.0&q={$searchImageQuery}";
                                $googleImageUrl = googleImageSearch($searchImageUrl);
                                $gImage->setImage_external_url($googleImageUrl);
                                //$gImage->setImage_external_url("https://cdn4.iconfinder.com/data/icons/small-n-flat/24/calendar-128.png");
                                $gImage->setImage_category("attraction");
                                array_push($gEventImages, $gImage);
                                if (isset($imageExternalUrl)) {
                                    $gImage = new gEventImage();
                                    $gImage->setImage_external_url($imageExternalUrlLong);
                                    $gImage->setImage_category("venue");
                                    array_push($gEventImages, $gImage);
                                }
                                $gEvent->setImages($gEventImages);
                                /*
                                	            //Populate performers found
                                	            $gEventPerformers = array();
                                	            if(isset($json->response->docs[$i]->AttractionName[0])){
                                	            	$aI = 0;
                                	            	foreach ($json->response->docs[$i]->AttractionName as $performer) {
                                		            	if(isset($performer) && null != $performer && $performer != ""){
                                			            	$gPerformer = new gEventPerformer;
                                			            	$gPerformer->setPerformer_name($performer);
                                			            	$gPerformer->setPerformer_external_image_url("http://s1.ticketm.net/tm/en-us".$json->response->docs[$i]->AttractionImage[$aI]);
                                			            	array_push($gEventPerformers, $gPerformer);
                                		            	}
                                		            	$aI++;
                                	            	}
                                	            }
                                	            $gEvent->setPerformers($gEventPerformers);
                                */
                                // Push gEvent object onto arraylist of gEvent objects
                                array_push($gEvents, $gEvent);
                            }
                        }
                    }
                }
            }
        }
        $i++;
    }
    return $gEvents;
}
Example #4
0
<?php

$app->get('/events/find/:eventDesc', function ($eventDesc) use($app) {
    $eventDesc = trim($eventDesc);
    $model = new findEventsModel($eventDesc, $app);
    $saveString = $eventDesc . $app->request()->params('userLat') . $app->request()->params('userLng') . $app->request()->params('city') . $app->request()->params('state') . $app->request()->params('date') . $app->request()->params('sources') . $app->request()->params('radius');
    $json_response = getCachedContent($saveString, $model->getJsonWithChecksum());
    $app->contentType('application/json');
    //echo $json_response;
    $json_response = preg_replace('/\\\\"/', "\"", $json_response);
    echo $json_response;
    /*
    $options = array(
    'lifeTime' => 86400, //24 hours
    'pearErrorMode' => CACHE_LITE_ERROR_DIE
    );
    $cache = new Cache_Lite($options);
    
    $cache->clean();
    echo "cache cleaned!";
    */
});
$app->get('/events/eventful/:eventDesc', function ($eventDesc) use($app) {
    $result = true;
    //eventfulLookupTest();
    if ($result) {
        $json_response = "{result:'good'}";
    } else {
        $json_response = "{result:'bad'}";
    }
    $app->contentType('application/json');
Example #5
0
function ticketmasterAPI_findEvents($queryString, $optionsArray)
{
    // Filter Parameters
    $q = urlencode(strtolower($queryString));
    $userLat = $optionsArray['userLat'];
    $userLong = $optionsArray['userLng'];
    $filterCity = $optionsArray['city'];
    $filterState = $optionsArray['state'];
    $filterDate = $optionsArray['date'];
    $filterDesc = $optionsArray['desc'];
    $filterRadius = $optionsArray['radius'];
    $endpoint_ticketmaster = "http://www.ticketmaster.com/json/search/event";
    $url = "{$endpoint_ticketmaster}?q={$queryString}&rows=50&VenueCity={$filterCity}&VenueState={$filterState}";
    $data = getCachedContent($url, get_data($url));
    //get_data($url);
    $json = json_decode($data);
    $num = $json->response->numFound;
    $gEvents = array();
    $i = 0;
    // Loop through Json Results from CURL resuest
    while ($i < $num) {
        $externalId = empty($json->response->docs[$i]->Id) ? null : $json->response->docs[$i]->Id;
        $city = empty($json->response->docs[$i]->VenueCity) ? null : $json->response->docs[$i]->VenueCity;
        $state = empty($json->response->docs[$i]->VenueState) ? null : $json->response->docs[$i]->VenueState;
        $date = empty($json->response->docs[$i]->PostProcessedData->LocalEventDate) ? null : substr($json->response->docs[$i]->PostProcessedData->LocalEventDate, 0, -15);
        $desc = empty($json->response->docs[$i]->EventName) ? null : $json->response->docs[$i]->EventName;
        $title = empty($json->response->docs[$i]->EventName) ? null : $json->response->docs[$i]->EventName;
        $eventInfo = empty($json->response->docs[$i]->EventInfo) ? null : htmlspecialchars($json->response->docs[$i]->EventInfo . "\n\n", ENT_QUOTES);
        $eventNotes = empty($json->response->docs[$i]->EventNotes) ? null : htmlspecialchars($json->response->docs[$i]->EventNotes, ENT_QUOTES);
        $venueExternalId = empty($json->response->docs[$i]->VenueId) ? null : $json->response->docs[$i]->VenueId;
        $venueName = empty($json->response->docs[$i]->VenueName) ? null : $json->response->docs[$i]->VenueName;
        $venueAddress = empty($json->response->docs[$i]->VenueAddress) ? null : $json->response->docs[$i]->VenueAddress;
        $country = empty($json->response->docs[$i]->VenueCountry) ? null : $json->response->docs[$i]->VenueCountry;
        $postalCode = empty($json->response->docs[$i]->VenuePostalCode) ? null : $json->response->docs[$i]->VenuePostalCode;
        $defaultDomain = "http://ticketmaster.com";
        $venueExternalUrl = empty($json->response->docs[$i]->VenueSEOLink) ? null : $defaultDomain . $json->response->docs[$i]->VenueSEOLink;
        $venueLatLongString = empty($json->response->docs[$i]->VenueLatLong) ? null : $json->response->docs[$i]->VenueLatLong;
        $timezone = empty($json->response->docs[$i]->Timezone) ? null : $json->response->docs[$i]->Timezone;
        $startTime = empty($json->response->docs[$i]->PostProcessedData->LocalEventDate) ? null : str_replace("T", " ", substr($json->response->docs[$i]->PostProcessedData->LocalEventDate, 0, -6));
        $priceRange = empty($json->response->docs[$i]->PriceRange) ? null : $json->response->docs[$i]->PriceRange;
        $minPrice = empty($json->response->docs[$i]->minPrice) ? null : $json->response->docs[$i]->minPrice;
        $maxPrice = empty($json->response->docs[$i]->maxPrice) ? null : $json->response->docs[$i]->maxPrice;
        $genre = empty($json->response->docs[$i]->Genre[0]) ? null : $json->response->docs[$i]->Genre;
        $minorGenre = empty($json->response->docs[$i]->MinorGenre[0]) ? null : $json->response->docs[$i]->MinorGenre;
        $majorGenre = empty($json->response->docs[$i]->MajorGenre[0]) ? null : $json->response->docs[$i]->MajorGenre;
        $eventSEOName = empty($json->response->docs[$i]->EventSEOName) ? null : $json->response->docs[$i]->EventSEOName;
        $eventExternalUrl = $defaultDomain . "/" . $eventSEOName . "/event/" . $externalId;
        $eventExternalAttractionUrl = empty($json->response->docs[$i]->AttractionSEOLink[0]) ? null : "http://ticketmaster.com" . $json->response->docs[$i]->AttractionSEOLink[0];
        $currentEvent = true;
        $distance = 0.0;
        if (!empty($venueLatLongString)) {
            $venueLatLong = explode(",", $venueLatLongString);
            if (null != $venueLatLong[0] && null != $venueLatLong[1] && null != $userLat && null != $userLong) {
                $distance = distanceInMiles($userLat, $userLong, $venueLatLong[0], $venueLatLong[1]);
            }
        }
        if (!empty($startTime)) {
            date_default_timezone_set($timezone);
            $currentUnixTime = strtotime("now");
            $eventUnixTime = strtotime($startTime);
            $currentEvent = $currentUnixTime > $eventUnixTime ? false : true;
        }
        // If no externalId is set, don't pull record. Avoids empty
        // records from getting pulled.
        if (!empty($externalId) && $currentEvent) {
            if (empty($filterCity) || strtolower($filterCity) == strtolower($city)) {
                if (empty($filterState) || strtolower($filterState) == strtolower($state)) {
                    if (empty($filterDate) || $filterDate == $date) {
                        if (empty($filterDesc) || strpos(strtolower($desc), strtolower($filterDesc)) !== FALSE) {
                            if (empty($filterRadius) || $distance <= $filterRadius && $distance > 0) {
                                $gEvent = new gEvent();
                                $gEvent->setExternal_id($externalId);
                                $gEvent->setDatasource("ticketmaster");
                                $gEvent->setTitle($title);
                                $gEvent->setDescription($desc);
                                $gEvent->setNotes($eventInfo . $eventNotes);
                                $gEvent->setVenue_external_id($venueExternalId);
                                $gEvent->setVenue_name($venueName);
                                $gEvent->setVenue_address($venueAddress);
                                $gEvent->setCountry_name($country);
                                $gEvent->setState_name($state);
                                $gEvent->setCity_name($city);
                                $gEvent->setPostal_code($postalCode);
                                $gEvent->setVenue_external_url($venueExternalUrl);
                                if (!empty($venueLatLongString)) {
                                    $venueLatLong = explode(",", $venueLatLongString);
                                    $gEvent->setLatitude((double) $venueLatLong[0]);
                                    $gEvent->setLongitude((double) $venueLatLong[1]);
                                    $gEvent->setDistance(number_format((double) $distance, 2, '.', ''));
                                }
                                $gEvent->setTimezone($timezone);
                                $gEvent->setTimezone_abbr(convertTimezoneToAbbr($timezone));
                                $gEvent->setStart_time($startTime);
                                $gEvent->setEnd_time("");
                                $gEvent->setStart_date_month(convertDateToMonthOptions($startTime));
                                $gEvent->setStart_date_day(convertDateToDayOptions($startTime, $timezone));
                                $gEvent->setStart_date_year(convertDateToYearOptions($startTime));
                                $gEvent->setStart_date_time(convertDateToTimeOptions($startTime));
                                $gEvent->setPrice_range($priceRange);
                                if (substr($priceRange, 0, 2) === "0 ") {
                                    $gEvent->setIs_free(true);
                                } else {
                                    if ($gEvent->getPrice_range() !== null) {
                                        $gEvent->setIs_free(false);
                                    }
                                }
                                $gEvent->setMinor_genre(array_merge($genre, $minorGenre));
                                $gEvent->setMajor_genre($majorGenre);
                                $gEvent->setEvent_external_url($eventExternalUrl);
                                // Populate image links found
                                $gEventImages = array();
                                if (!empty($json->response->docs[$i]->AttractionImage[0])) {
                                    foreach ($json->response->docs[$i]->AttractionImage as $image) {
                                        if (isset($image) && null != $image && $image != "") {
                                            $gImage = new gEventImage();
                                            $gImage->setImage_external_url("http://s1.ticketm.net/tm/en-us" . $image);
                                            $gImage->setImage_category("attraction");
                                            array_push($gEventImages, $gImage);
                                        }
                                    }
                                }
                                if (!empty($json->response->docs[$i]->VenueImage)) {
                                    $gImage = new gEventImage();
                                    $gImage->setImage_external_url("http://s1.ticketm.net/tm/en-us" . $json->response->docs[$i]->VenueImage);
                                    $gImage->setImage_category("venue");
                                    array_push($gEventImages, $gImage);
                                }
                                $gEvent->setImages($gEventImages);
                                //Populate performers found
                                $gEventPerformers = array();
                                if (!empty($json->response->docs[$i]->AttractionName[0])) {
                                    $aI = 0;
                                    foreach ($json->response->docs[$i]->AttractionName as $performer) {
                                        if (!empty($performer)) {
                                            $gPerformer = new gEventPerformer();
                                            $gPerformer->setPerformer_name($performer);
                                            $attractionImageUrl = empty($json->response->docs[$i]->AttractionImage[$aI]) ? null : $json->response->docs[$i]->AttractionImage[$aI];
                                            if (!empty($attractionImageUrl)) {
                                                $gPerformer->setPerformer_external_image_url("http://s1.ticketm.net/tm/en-us" . $json->response->docs[$i]->AttractionImage[$aI]);
                                            }
                                            array_push($gEventPerformers, $gPerformer);
                                        }
                                        $aI++;
                                    }
                                }
                                $gEvent->setPerformers($gEventPerformers);
                                // Push gEvent object onto arraylist of gEvent objects
                                array_push($gEvents, $gEvent);
                            }
                        }
                    }
                }
            }
        }
        $i++;
    }
    return $gEvents;
}
 public function generateItems()
 {
     $filters['userLat'] = $this->app->request->params('userLat');
     $filters['userLng'] = $this->app->request->params('userLng');
     $filters['city'] = $this->app->request()->params('city');
     $filters['state'] = $this->app->request()->params('state');
     $filters['date'] = $this->app->request()->params('date');
     $filters['desc'] = $this->app->request()->params('desc');
     $filters['sources'] = $this->app->request()->params('sources');
     $filters['radius'] = $this->app->request()->params('radius');
     $searchArray = array('city' => $filters['city'], 'state' => $filters['state'], 'date' => $filters['date'], 'desc' => $this->eventDesc, 'sources' => $filters['sources']);
     $searchJson = json_encode($searchArray, JSON_FORCE_OBJECT);
     $dbNeo = new DBHandlerNeo();
     $eventSearchRequestId = $dbNeo->isEventSearchRequestExist($searchJson);
     if ($eventSearchRequestId != null) {
         //$events = $dbNeo->getEventsByEsrId($eventSearchRequestId);
         $data = $dbNeo->findEventsBySearch($this->eventDesc, $filters);
         if ($data != null) {
             $events = neo4j_findEvents($this->eventDesc, $filters, $data);
         }
         if ($events != null) {
             $this->items = $events;
         } else {
             $this->items = array();
         }
     }
     if (!empty($filters['sources']) && $eventSearchRequestId == null) {
         $sourceArr = explode(",", $filters['sources']);
         $stubhub_results = array();
         $ticketmaster_results = array();
         $eventful_results = array();
         foreach ($sourceArr as $source) {
             if (strcasecmp($source, "stubhub") == 0) {
                 $saveString = "stubhub" . $this->eventDesc . implode(".", $filters);
                 $stubhub_results = getCachedContent($saveString, stubhubAPI_findEvents($this->eventDesc, $filters));
             }
             if (strcasecmp($source, "ticketMaster") == 0) {
                 $saveString = "ticketmaster" . $this->eventDesc . implode(".", $filters);
                 $ticketmaster_results = getCachedContent($saveString, ticketmasterAPI_findEvents($this->eventDesc, $filters));
             }
             if (strcasecmp($source, "eventful") == 0) {
                 $saveString = "eventful" . $this->eventDesc . implode(".", $filters);
                 $eventful_results = getCachedContent($saveString, eventfulAPI_findEvents($this->eventDesc, $filters));
             }
         }
         $this->items = array_merge($stubhub_results, $ticketmaster_results, $eventful_results);
         usort($this->items, 'sortgEventsByDate');
     } else {
         if ($eventSearchRequestId == null) {
             $saveString = $this->eventDesc . implode(".", $filters);
             $stubhub_results = getCachedContent($saveString, stubhubAPI_findEvents($this->eventDesc, $filters));
             $ticketmaster_results = getCachedContent($saveString, ticketmasterAPI_findEvents($this->eventDesc, $filters));
             $eventful_results = getCachedContent($saveString, eventfulAPI_findEvents($this->eventDesc, $filters));
             $this->items = array_merge($stubhub_results, $ticketmaster_results, $eventful_results);
             usort($this->items, 'sortgEventsByDate');
         }
     }
     if ($eventSearchRequestId == null) {
         $eventSearchRequestId = $dbNeo->insertEventSearchRequest($searchJson, count($this->items));
         $dbNeo->createExternalEventsWithRel($this->items, $eventSearchRequestId);
     }
 }