Я создаю школьный проект для управления классами, у меня проблема с часовыми поясами, и DST вот мой код:
javascript
dejt = new Date(thisYear, 8, day, beginTime, endTime, 0, 0);
dejt.toLocaleString("en-US", {timezone: "Europe/Belgrade"});
И я прохожу через некоторые функции до:
javascript
function makeCalendar(name, begin, end, calendar) {
var eventSeries = CalendarApp.getCalendarById(calendar).createEventSeries(
name,
begin,
end,
CalendarApp.newRecurrence()
.addWeeklyRule().interval(2).until(endDate)
);
}
Это работает хорошо, пока не достигнет 29 октября, после чего все будет перемещено на час раньше.
Как мне управлять DST?
РЕДАКТИРОВАТЬ:
После установки сценария на GMT (без перехода на летнее время) все стало более согласованным, и каждая дата составляла +00: 00
Logs:
[19-02-12 11:30:15:809 CET] Sun Feb 17 00:00:00 GMT+00:00 2019
[19-02-12 11:30:15:810 CET] Mon Feb 18 00:00:00 GMT+00:00 2019
[19-02-12 11:30:24:051 CET] Mon Sep 03 14:00:00 GMT+00:00 2018
[19-02-12 11:30:24:503 CET] Mon Sep 03 14:50:00 GMT+00:00 2018
Теперь единственная проблема состоит в том, что повторяющиеся события просто меняют время, когда летнее время должно быть (Не новая ошибка, это было так раньше).
РЕДАКТИРОВАТЬ:
Новый материал, который я обнаружил: если вы редактируете события вручную, появляется окно часового пояса;Мой скрипт делает его UTC, но я могу вручную отредактировать или удалить его.Проблема здесь в том, что мне нужно сделать это вручную.
Я также нашел .setTimeZone (string) в документации Google: здесь и здесь
Проблема сейчас в том, что я не могу заставить его работать, независимо от того, что я пробовал, и до UTC