Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix to correctly handle date-times when timezone Id is provided #111

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

chamakura
Copy link

It looks like the parsing logic to extract date-times isn't handling timezones correctly. The way it's correctly implemented, it's assumed that the provided timestamp value is in UTC even when a corresponding timezone value is provided. This change factors in the timezone (when available) to correctly convert the value in UTC. (This is to handle #3 in https://www.kanzaki.com/docs/ical/dateTime.html)

This issue manifested in MagicMirror where events scheduled by someone in a different timezone were getting offset. For example, if someone in New York (timezone=America/New_York) sent me (I'm in timezone=America/Los_Angeles) an invite, the event would show up 3 hours later than expected because that's the difference between the timezones.

@peterbraden
Copy link
Owner

This adds a library to ical.js. Because it's intended that ical.js can be used in a browser without a build step, this won't work - would it be possible to extract the necessary logic from moment-tz?

@chamakura
Copy link
Author

I see - let me look into adding this without the library dependency.

@chamakura
Copy link
Author

So it looks like one option is to inline the dataset corresponding to all available timezones: https://github.com/moment/moment-timezone/blob/develop/builds/moment-timezone-with-data-10-year-range.js#L693
Would this be OK?

Or is there a way to dynamically link to dynamically link to https://momentjs.com/downloads/moment-timezone-with-data-10-year-range.min.js?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants