Вот функция, которую я использую для создания событий, когда я просто хочу уведомить себя через 6 часов, и я использую довольно криптную c метод ввода, который описывается атрибутом html placeholder для текстового поля EventTitle/hours/min/
I split входная строка в /
, если длина равна 3 или меньше, тогда я автоматически создаю 30,15,0-минутное уведомление, но я только что создал событие через две недели с сегодняшнего дня и получил уведомление, которое произойдет завтра с использованием этой входной строки TwoWeeksFromToday/336/0/18720
, Вот код
function createEventWithReminders(eA) {
var minute=60*1000;
var hour=60*minute;
var cal=CalendarApp.getCalendarById(getGlobal('DailyEventsId'));
var now=new Date();
var startValue=now.valueOf() + (Number(eA[1]) * hour ) + (Number(eA[2]) * minute);
var start=new Date(startValue);
var endValue=start.valueOf() + (10 * minute);
var end=new Date(endValue);
var event=cal.createEvent(eA[0], start, end);
if(eA.length>3) {
for(var i=3;i<eA.length;i++) {
event.addEmailReminder(eA[i]);
}
}
else{
event.addEmailReminder(0);
event.addEmailReminder(15);
event.addEmailReminder(30);
}
return true;
}
Я использую его таким образом около 3 лет.
Изображение события календаря: