Мне нужен способ поиска через eventbrite api прошлых событий, организованных организатором, которые являются частными, но мне также нужно иметь возможность ограничить диапазон дат. Я не нашел жизнеспособного решения для этого поиска. Я предполагаю, что метод organizer_list_events api будет предпочтительным, но параметры запроса не соответствуют диапазону дат, и я получаю FAR слишком много возвратов.Параметры диапазона дат Eventbrite API для organizer_list_events
-1
A
ответ
0
У меня возникли некоторые подобные проблемы. Я отправил вопрос, чтобы получить ответ о разборе часового пояса. Вот код, который я использую, чтобы получить даты и исключить любые события до сегодняшнего дня (к сожалению, как вы сказали, я все еще получаю все отправленное мне и обрабатывая все стороны клиента)
Обратите внимание, что это элемент управления AngularJS, но код использует API-интерфейс EventBrite javascript.
функция EventCtrl ($ http, $ scope) {
$ scope.events = []; $ scope.noEventsDisplay = "Загрузка событий ...";
Eventbrite({'app_key': "EVC36F6EQZZ4M5DL6S"}, function(eb){
// define a few parameters to pass to the API
// Options are listed here: http://developer.eventbrite.com/doc/organizers/organizer_list_events/
//3877641809
var options = {
'id' : "3588304527",
};
// provide a callback to display the response data:
eb.organizer_list_events(options, function(response){
validEvents = [];
var now = new Date().getTime();
for(var i = 0; i<response.events.length; i++)
{
var sd = response.events[i].event.start_date;
var ed = response.events[i].event.end_date;
var parsedSD = sd.split(/[:-\s]/);
var parsedED = ed.split(/[:-\s]/);
var startDate = new Date(parsedSD[0], parsedSD[1]-1, parsedSD[2], parsedSD[3], parsedSD[4], parsedSD[5]);
var endDate = new Date(parsedED[0], parsedED[1]-1, parsedED[2], parsedED[3], parsedED[4], parsedED[5]);
if(endDate.getTime()<now)
continue;
response.events[i].event.formattedDate = date.toDateString();
validEvents.push(response.events[i])
}
if(validEvents.length == 0)
{
$scope.$apply(function(scope){scope.noEventsDisplay = "No upcoming events to display, please check back soon.";});
}
else
{
$scope.$apply(function(scope){scope.noEventsDisplay = "";});
}
$scope.$apply(function(scope){scope.events = validEvents;});
//$('.event_list').html(eb.utils.eventList(response, eb.utils.eventListRow));
});
});
}