On 5/25/14, Norbert Lindenberg <ecmascr...@lindenbergsoftware.com> wrote: > On May 19, 2014, at 11:34 , Garrett Smith <dhtmlkitc...@gmail.com> wrote: > >> On 1/19/14, Norbert Lindenberg <ecmascr...@lindenbergsoftware.com> wrote: >>> >>> On Jan 19, 2014, at 10:01 , Jasper St. Pierre <jstpie...@mecheye.net> >>> wrote: >>> >>>> On Sunday, January 19, 2014, Garrett Smith <dhtmlkitc...@gmail.com> >>>> wrote: >>>> >>>
[...] > I should have clarified my assumption that we're talking about locale > sensitive parsing, since your case below appears to be about locale > independent parsing. > Locale-sensitive for event view/CrUD by users in multiple timezones. >> Case: >> >> Server sends back JSON that is used to build a calendar component or >> Gantt chart >> >> The application parses the start and end of the times given over the >> JSON (and I have some JSON in the application that I am developing >> right now; see below). > > Since the start and end times are parsed by the application (and not > directly presented to the user), they should be represented in a locale > independent form. If they're just points in time, you can use either a JSON > number representing the time value of a Date object, or a JSON string in > ECMAScript Date Time String Format with "Z". If not, please clarify your > requirements. The start and end dates are shown in the UI. Locale-sensitive display is needed for CrUD with multiple timezones and users in multiple timezones. Given a logged-in user with an application-stored timezone: Backend (BE) stores events in UTC. Event dates are transmitted as an ISO string, local to that event, to the user. 5pm CA --> 12am UTC 12am UTC --> 8am China We're in DST here. Even when the CA user is travelling to Hawaii, the event starting from 5pm in CA time is displayed in the app as 5pm, and not 8pm (which will be shown on his system clock at that moment). Question: If the even starts at 2am and ends immediately after 3 am, on May 9, how long is it? I want something like: zonedDate.setTimezoneOffset("America/New_York") This would allow the user to change start and end times and the duration would be correct. >> exactly according to the dates and times specified. For example, if >> the event starts on 2014-01-01 > > 2014-01-11, to match the 10/31 below? > No, the element is positioned ten thirty-firsts of the way through that month; the month is an LI element, and yes; that's background info. > Operating systems already have ways to let the user select their time zones, Hopefully they're not so limited as the UI they display. Macs to miss a lot of cases. E.g. Navajo Nation. (Probably it should be named Macbook Amateur. > [3] http://norbertlindenberg.com/ecmascript/intl.html#sec-12.3.3 > | The function returns a new object whose properties | and attributes are set as if constructed by an object | literal assigning to each of the following properties the | value of the corresponding internal property of this | DateTimeFormat object (see 12.4): locale, calendar, | numberingSystem, timeZone, hour12, weekday, era, | year, month, day, hour, minute, second, and timeZoneName. | Properties whose corresponding internal properties are | not present are not assigned. Does it allow me to get a TZO or just the timezone back? dateObj.getTimezoneOffset("America/Shiprock") would fit what I need. You mixed lexical grammar ("object literal"), properties of an object, and behavior in a very confusing paragraph. I reread it a bunch of times but can't squint my brain quite right enough to grok it. hourNo0 seems like something to force midnight to be zero, but instead it mentions 11 vs 12. Other problems: Timezones cannot be referred to as static offsets. If that lets me set an IANA timezone and then add that to a calendar, and then calculate the correct tzo based on an ISO local date format. DST rules change and ES5 allows implementations to apply the changes proactively/retroactively. That's unreliable. ES5 ISO implementation is broken. IANA timezones account for leap seconds. ECMA forbids leap seconds. How do you intend to reconcile this? -- Garrett @xkit ChordCycles.com garretts.github.io _______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss