var now =new Date(); var mycal = CalendarApp.getCalendarById("hlg8igq79s8h34ka583ij2d128@group.calendar.google.com") evtype = ["V"] // ['V', 'DS', 'C', 'TP', 'TD'] year = [0] // [0,1,2,3] // année en cours // type are 'V' 'DS' 'C' 'TP' 'TD' for asso, controle, cours, tp, td function addEvents(jsonSearch,evtype){ for( var i = 0; i < jsonSearch.length; i++){ var eventsg = jsonSearch[i].eventgroups for(var m in eventsg) { events = eval("eventsg."+m+".events") for(var n in events) { event = eval("events."+n) if( event.shorttype == evtype ){ var day = event.begin var real_start = event.real_start * 15 var duration = event.duration * 15 var title = event.title var location = event.location var author = event.teacher var start = new Date(new Date(day).getTime() + real_start*60000) var end = new Date(start.getTime() +duration*60000); mycal.createEvent((""+title+"\n"+location+"\n"+author), start, end) } } } } } function strEvent(event){ return event.getTitle()+event.getStartTime() } function removeDuplicateEvent(){ var ev = [] var events = mycal.getEvents(new Date("2015-01-01"), new Date("2022-01-01")) for( var i in events){ event = events[i] var s = strEvent(event) for( var j in ev ){ if( ev[j] == s ) { Logger.log(s) try{event.deleteEvent()} catch(err){Logger.log(s)} } } ev.push(s) } } function updateCal() { for ( var i in year ) { var y = year[i] for( var nweek = 0 ; nweek < 12 ; nweek++ ){ var url = "https://www.iiens.net/etudiants/edt.php?year="+y+"&ts="+parseInt((now.getTime()+604800000*nweek)/1000)+"&format=json"; var jsonData = UrlFetchApp.fetch(url); var jsonString = jsonData.getContentText(); var jsonSearch = JSON.parse(jsonString); for (var j in evtype){ ev = evtype[j] addEvents(jsonSearch,ev) } } } removeDuplicateEvent() }