function findEvents(user, keyword, start, end, optSince) {
var params = {
q: keyword,
timeMin: formatDateAsRFC3339(start),
timeMax: formatDateAsRFC3339(end),
showDeleted: true,
};
if (optSince) {
// This prevents the script from examining events that have not been
// modified since the specified date (that is, the last time the
// script was run).
params.updatedMin = formatDateAsRFC3339(optSince);
}
var pageToken = null;
var events = [];
do {
params.pageToken = pageToken;
var response;
try {
response = Calendar.Events.list(user.getEmail(), params);
} catch (e) {
console.error('Error retrieving events for %s, %s: %s; skipping',
user, keyword, e.toString());
continue;
}
events = events.concat(response.items.filter(function(item) {
return shoudImportEvent(user, keyword, item);
}));
pageToken = response.nextPageToken;
} while (pageToken);
return events;
}
where keyword can be...