Мне нужен способ для преобразования времени в будущем в разные часовые пояса, не полагаясь на компьютерное время пользователя.
Во время регистрации пользователь указывает свой часовой пояс. Когда он входит в систему, я вычисляю смещение в минутах между временем UTC и его временем и вставляю это смещение на страницу, чтобы функция javascript могла выполнять преобразования. Примерно так:
var TheUTCTime = new Date(UserTime.getTime() - TimeZoneOffsetInMinutes * 60000);
и вот так наоборот:
var TheUserTime = new Date(UTCTime.getTime() + TimeZoneOffsetInMinutes * 60000);
Это очень хорошо работает для преобразования времени, если смещение не меняется. Например, из-за перехода на летнее время между US EST и UTC разница в 300 или 360 минут зависит от месяца в году.
Мои функции хорошо работают для преобразования сегодняшней даты, но мне бы хотелось, чтобы что-то могло 1) делать то же самое для любого дня года и 2) не зависит от внутренних часов или часового пояса пользователя.
Как я мог это сделать?
Спасибо.