Reputation: 24764
with apps script and google calendar I get the events with same name:
function authorize() {
var oauthConfig = UrlFetchApp.addOAuthService("calendar");
var scope = "https://www.googleapis.com/auth/calendar";
oauthConfig.setConsumerKey("anonymous");
oauthConfig.setConsumerSecret("anonymous");
oauthConfig.setRequestTokenUrl("https://www.google.com/accounts/OAuthGetRequestToken?scope="+scope);
oauthConfig.setAuthorizationUrl("https://accounts.google.com/OAuthAuthorizeToken");
oauthConfig.setAccessTokenUrl("https://www.google.com/accounts/OAuthGetAccessToken");
}
function beginEnd(calId, eventName){
authorize();
var key = "...";
var query = encodeURIComponent(eventName);
calId = encodeURIComponent(calId);
var params = {
method: "get",
oAuthServiceName: "calendar",
oAuthUseToken: "always",
};
var url = "https://www.googleapis.com/calendar/v3/calendars/"+
calId+"/events?q=" + query + "&key=" + key;
var request = UrlFetchApp.fetch(url, params);
var response = Utilities.jsonParse(request.getContentText());
var items = response.items;
for ( i = 0 ; i < items.length ; i++){
var start = (items[i].start.dateTime);
var end = (items[i].end.dateTime);
Logger.log( [start,end]);
}
}
but, when I try convert start to new Date:
var start = (items[i].start.dateTime);
Logger.log(start);
Logger.log( new Date(start) );
I get
2013-01-21T15:00:00-03:00
Wed Dec 31 16:00:00 PST 1969
why ?
Upvotes: 1
Views: 2643
Reputation: 46792
Seems that date definition doesn't like hyphens...
it works like this, even if I'm sure a better solution can be found (I'm not a regex expert ;-)
Logger.log(new Date('2013-01-21T15:00:00-03:00'.replace(/-/g,'/').replace(/[A-Z]/,' ').substr(0,19)))
Upvotes: 3