I was merely proposing "fix" client code with "variable info" coming from
server. It sounds to me more like your second approach ;-) To be completely
honest, I'm not fully aware of the details right now, so I do not know if
that makes any sense at all. Let me see if I can find the time to dig that
old project and see what library it was I was using and check if it has the
problems you describe.

On Fri, Dec 5, 2014 at 5:46 AM, Maxim Solodovnik <[email protected]>
wrote:

> So you propose to:
> 1) create "sort of olson time zone DB" on server
> 2) pass it to client
> 3) determine TZ on client
> 4) pass the TZ to server
>
> instead of
> 1) get current TZ rules on clien
> 2) pass it to server
> 3) determine and use TZ on server
>
> I believe second approach is more straight forward
>
> On Fri, Dec 5, 2014 at 11:40 AM, Ernesto Reinaldo Barreiro <
> [email protected]> wrote:
>
> > Pass info needed by Js library from server side? So that both sides are
> in
> > synchrony.
> > On 5 Dec 2014 05:59, "Maxim Solodovnik" <[email protected]> wrote:
> >
> > > The problem I see with any JS library is: timezones are changes, OS and
> > > java knows the full history
> > > Any JS library need to maintain the full TZ list and all changes.
> > >
> > > In my code I get TZ rules (the exact date-time of each DST shift in a
> > year)
> > > and pass these data to java, then using Java's timezone definitions
> > (which
> > > are up to date and maintained by Java vendor) I'm trying to guess the
> > > current TZ.
> > >
> > > And it should work since we need to get TZ on Java side.
> > >
> > >
> > > On Fri, Dec 5, 2014 at 10:44 AM, Ernesto Reinaldo Barreiro <
> > > [email protected]> wrote:
> > >
> > > > For an old project I was using some JS library... I will try to dig
> the
> > > > code and see what library it was: it seemed to work correctly at the
> > > time.
> > > >
> > > > On Thu, Dec 4, 2014 at 10:10 PM, Maxim Solodovnik <
> > [email protected]>
> > > > wrote:
> > > >
> > > > > I would love to have library for such automatic detection
> > > > > But the list of time zones is limited, and it currently determines
> my
> > > > > current time zone wrong :(
> > > > > I'll check it's code and will try to enhance mine, I'll try to
> > enhance
> > > my
> > > > > code
> > > > >
> > > > > In case you prefer to use this library I would vote for that since
> > > > current
> > > > > wicket code is also not very good :(
> > > > > I believe this library can be used and enhanced.
> > > > >
> > > > > On Sat, Nov 29, 2014 at 1:43 AM, Maxim Solodovnik <
> > > [email protected]>
> > > > > wrote:
> > > > >
> > > > > > Thanks will try to check :)
> > > > > >
> > > > > > On Sat, Nov 29, 2014 at 1:33 AM, Martin Grigorov <
> > > [email protected]
> > > > >
> > > > > > wrote:
> > > > > >
> > > > > >> Hi Maxim,
> > > > > >>
> > > > > >> Check http://joshowens.me/dealing-with-timezones-in-javascript/
> .
> > It
> > > > may
> > > > > >> be
> > > > > >> in use for you.
> > > > > >>
> > > > > >> Martin Grigorov
> > > > > >> Wicket Training and Consulting
> > > > > >> https://twitter.com/mtgrigorov
> > > > > >>
> > > > > >> On Tue, Nov 11, 2014 at 9:39 AM, Maxim Solodovnik <
> > > > [email protected]
> > > > > >
> > > > > >> wrote:
> > > > > >>
> > > > > >> > OK, will try to do it after ApacheConEU
> > > > > >> > Thanks for the review!
> > > > > >> >
> > > > > >> > On 11 November 2014 14:33, Martin Grigorov <
> > [email protected]>
> > > > > >> wrote:
> > > > > >> >
> > > > > >> > > I find the knowledge of the client timezone generally
> useful!
> > > > > >> > > If you improve the points in my last mail and integrate it
> > > > > >> > > in wicket-browser-info.js then it has better chance of being
> > > > merged
> > > > > >> ;-)
> > > > > >> > >
> > > > > >> > > Martin Grigorov
> > > > > >> > > Wicket Training and Consulting
> > > > > >> > > https://twitter.com/mtgrigorov
> > > > > >> > >
> > > > > >> > > On Tue, Nov 11, 2014 at 10:28 AM, Maxim Solodovnik <
> > > > > >> [email protected]
> > > > > >> > >
> > > > > >> > > wrote:
> > > > > >> > >
> > > > > >> > > > you are right :(
> > > > > >> > > > I can improve it if it worth so
> > > > > >> > > >
> > > > > >> > > > The idea was to get client timezone rulez using JS: the
> > exact
> > > > DST
> > > > > >> > switch
> > > > > >> > > > start/end date/time
> > > > > >> > > > send this data to the server and then find Java timezone
> > with
> > > > best
> > > > > >> > match
> > > > > >> > > >
> > > > > >> > > >
> > > > > >> > > > On 11 November 2014 14:24, Martin Grigorov <
> > > > [email protected]>
> > > > > >> > wrote:
> > > > > >> > > >
> > > > > >> > > > > Hi Maxim,
> > > > > >> > > > >
> > > > > >> > > > >
> > > > > >> > > >
> > > > > >> > >
> > > > > >> >
> > > > > >>
> > > > >
> > > >
> > >
> >
> https://github.com/solomax/tzdetect/blob/master/src/main/webapp/tzdetect.js
> > > > > >> > > > > is not very usable in its current state.
> > > > > >> > > > > My issues with it:
> > > > > >> > > > > - no documentation
> > > > > >> > > > > - no tests
> > > > > >> > > > > - uses short named variables and method names (thus hard
> > to
> > > > > >> follow)
> > > > > >> > > > > - ...
> > > > > >> > > > >
> > > > > >> > > > > I have forked it so I can use it as inspiration if I
> need
> > it
> > > > > >> later.
> > > > > >> > > > > Feel free to remove it.
> > > > > >> > > > >
> > > > > >> > > > > Thanks!
> > > > > >> > > > >
> > > > > >> > > > > Martin Grigorov
> > > > > >> > > > > Wicket Training and Consulting
> > > > > >> > > > > https://twitter.com/mtgrigorov
> > > > > >> > > > >
> > > > > >> > > > > On Mon, Nov 10, 2014 at 6:02 PM, Maxim Solodovnik <
> > > > > >> > > [email protected]>
> > > > > >> > > > > wrote:
> > > > > >> > > > >
> > > > > >> > > > > > @Martin
> > > > > >> > > > > >
> > > > > >> > > > > > were you able to take a look at this code?
> > > > > >> > > > > > Is it look useful? Or I can remove it?
> > > > > >> > > > > >
> > > > > >> > > > > > On 23 September 2014 00:54, Maxim Solodovnik <
> > > > > >> [email protected]
> > > > > >> > >
> > > > > >> > > > > wrote:
> > > > > >> > > > > >
> > > > > >> > > > > > > Finally was able to create prototype:
> > > > > >> > > > > > https://github.com/solomax/tzdetect
> > > > > >> > > > > > > Maybe you can find it (or parts of it) usable
> > > > > >> > > > > > >
> > > > > >> > > > > > > On 3 September 2014 12:25, Maxim Solodovnik <
> > > > > >> > [email protected]>
> > > > > >> > > > > > wrote:
> > > > > >> > > > > > >
> > > > > >> > > > > > >> I believe if TZ rulez will be detected on client
> > side,
> > > > and
> > > > > TZ
> > > > > >> > > itself
> > > > > >> > > > > on
> > > > > >> > > > > > >> server side it might find user TZ good enough. (due
> > to
> > > TZ
> > > > > >> list
> > > > > >> > > with
> > > > > >> > > > > > rulez
> > > > > >> > > > > > >> will be maintained by java vendor, not JS library
> > > itself)
> > > > > >> > > > > > >> will try to modify the code and provide quickstart
> > > > > >> > > > > > >>
> > > > > >> > > > > > >>
> > > > > >> > > > > > >> On 3 September 2014 18:18, Martin Grigorov <
> > > > > >> > [email protected]>
> > > > > >> > > > > > wrote:
> > > > > >> > > > > > >>
> > > > > >> > > > > > >>> see
> > > https://github.com/moment/moment-timezone/issues/55
> > > > > >> > > > > > >>> if Moment.js cannot do it then I don't think we
> will
> > > do
> > > > it
> > > > > >> > > > > > >>>
> > > > > >> > > > > > >>> Martin Grigorov
> > > > > >> > > > > > >>> Wicket Training and Consulting
> > > > > >> > > > > > >>> https://twitter.com/mtgrigorov
> > > > > >> > > > > > >>>
> > > > > >> > > > > > >>>
> > > > > >> > > > > > >>> On Wed, Sep 3, 2014 at 12:13 PM, Maxim Solodovnik
> <
> > > > > >> > > > > > [email protected]>
> > > > > >> > > > > > >>> wrote:
> > > > > >> > > > > > >>>
> > > > > >> > > > > > >>> > there seems to be timezones with more than 1 dst
> > > start
> > > > > per
> > > > > >> > year
> > > > > >> > > > :(
> > > > > >> > > > > > >>> > code should be updated to reflect this :(
> > > > > >> > > > > > >>> >
> > > > > >> > > > > > >>> >
> > > > > >> > > > > > >>> > On 3 September 2014 16:11, Maxim Solodovnik <
> > > > > >> > > > [email protected]>
> > > > > >> > > > > > >>> wrote:
> > > > > >> > > > > > >>> >
> > > > > >> > > > > > >>> > > was tested against multiple Time zones listed
> > > here:
> > > > > >> > > > > > >>> > > http://www.worldtimezone.com/daylight.html
> and
> > > own
> > > > TZ
> > > > > >> > > > > > >>> (Asia/Novosibirsk)
> > > > > >> > > > > > >>> > >
> > > > > >> > > > > > >>> > >
> > > > > >> > > > > > >>> > > On 3 September 2014 16:09, Maxim Solodovnik <
> > > > > >> > > > > [email protected]>
> > > > > >> > > > > > >>> > wrote:
> > > > > >> > > > > > >>> > >
> > > > > >> > > > > > >>> > >> here is the JS code
> > > > > >> > > > > > >>> >
> > > https://gist.github.com/solomax/e86cc77694d67120b8f5
> > > > > >> > > > > > >>> > >> to get DST start date/time (if any)
> > > > > >> > > > > > >>> > >> only minute offset was not tested due to
> > > > impossibili
> > > > > to
> > > > > >> > set
> > > > > >> > > TZ
> > > > > >> > > > > > >>> "Chatham
> > > > > >> > > > > > >>> > >> Island" on my Ubuntu)
> > > > > >> > > > > > >>> > >>
> > > > > >> > > > > > >>> > >> similar code can be added to get DST end
> > > date/time
> > > > > >> > > > > > >>> > >>
> > > > > >> > > > > > >>> > >> the code also might need to be "polished" a
> > > little
> > > > > >> > > > > > >>> > >>
> > > > > >> > > > > > >>> > >>
> > > > > >> > > > > > >>> > >> On 3 September 2014 19:59, Martin Grigorov <
> > > > > >> > > > > [email protected]>
> > > > > >> > > > > > >>> > wrote:
> > > > > >> > > > > > >>> > >>
> > > > > >> > > > > > >>> > >>> On Sep 3, 2014 10:39 AM, "Maxim Solodovnik"
> <
> > > > > >> > > > > > [email protected]>
> > > > > >> > > > > > >>> > >>> wrote:
> > > > > >> > > > > > >>> > >>> >
> > > > > >> > > > > > >>> > >>> > Actually my code can be extended to get
> > > > > >> > > > > > >>> > >>> > 1) if TZ has DST or not
> > > > > >> > > > > > >>> > >>> > 2) what month DST happening
> > > > > >> > > > > > >>> > >>> > 3) the day of month DST happening
> > > > > >> > > > > > >>> > >>> > 4) hour of day DST happening
> > > > > >> > > > > > >>> > >>> >
> > > > > >> > > > > > >>> > >>> > I believe after all this info is available
> > the
> > > > > list
> > > > > >> of
> > > > > >> > > time
> > > > > >> > > > > > zones
> > > > > >> > > > > > >>> > with
> > > > > >> > > > > > >>> > >>> > certain offset can be reduced to better
> > match
> > > > > >> current
> > > > > >> > > user
> > > > > >> > > > > TZ.
> > > > > >> > > > > > >>> > >>> > I can provide sample JS code for 1-4 above
> > > > > >> > > > > > >>> > >>>
> > > > > >> > > > > > >>> > >>> This will increase the chance to include it
> !
> > > ;-)
> > > > > >> > > > > > >>> > >>>
> > > > > >> > > > > > >>> > >>> >
> > > > > >> > > > > > >>> > >>> >
> > > > > >> > > > > > >>> > >>> > On 3 September 2014 14:22, Martin
> Grigorov <
> > > > > >> > > > > > [email protected]
> > > > > >> > > > > > >>> >
> > > > > >> > > > > > >>> > >>> wrote:
> > > > > >> > > > > > >>> > >>> >
> > > > > >> > > > > > >>> > >>> > > Hi Maxim,
> > > > > >> > > > > > >>> > >>> > >
> > > > > >> > > > > > >>> > >>> > > Can you please provide more information
> > how
> > > > your
> > > > > >> code
> > > > > >> > > > > solves
> > > > > >> > > > > > >>> the
> > > > > >> > > > > > >>> > >>> problem ?
> > > > > >> > > > > > >>> > >>> > > AFAIU Robert explains that Wicket's code
> > > > > properly
> > > > > >> > > detects
> > > > > >> > > > > the
> > > > > >> > > > > > >>> > >>> timezone
> > > > > >> > > > > > >>> > >>> > > offset, but since there are many
> timezone
> > > ids
> > > > > for
> > > > > >> a
> > > > > >> > > given
> > > > > >> > > > > > >>> offset it
> > > > > >> > > > > > >>> > >>> is
> > > > > >> > > > > > >>> > >>> not
> > > > > >> > > > > > >>> > >>> > > easy to detect the correct DST from the
> > > > offset.
> > > > > >> > > > > > >>> > >>> > > In your code I don't see anything that
> > > should
> > > > > >> provide
> > > > > >> > > the
> > > > > >> > > > > > >>> missing
> > > > > >> > > > > > >>> > >>> timezone
> > > > > >> > > > > > >>> > >>> > > id.
> > > > > >> > > > > > >>> > >>> > > Or I am missing something ?
> > > > > >> > > > > > >>> > >>> > >
> > > > > >> > > > > > >>> > >>> > > Martin Grigorov
> > > > > >> > > > > > >>> > >>> > > Wicket Training and Consulting
> > > > > >> > > > > > >>> > >>> > > https://twitter.com/mtgrigorov
> > > > > >> > > > > > >>> > >>> > >
> > > > > >> > > > > > >>> > >>> > >
> > > > > >> > > > > > >>> > >>> > > On Wed, Sep 3, 2014 at 9:44 AM, Maxim
> > > > > Solodovnik <
> > > > > >> > > > > > >>> > >>> [email protected]>
> > > > > >> > > > > > >>> > >>> > > wrote:
> > > > > >> > > > > > >>> > >>> > >
> > > > > >> > > > > > >>> > >>> > > > Hello All,
> > > > > >> > > > > > >>> > >>> > > >
> > > > > >> > > > > > >>> > >>> > > > Some time ago we had user query [1]
> > > claiming
> > > > > >> wicket
> > > > > >> > > > based
> > > > > >> > > > > > TZ
> > > > > >> > > > > > >>> > >>> detection is
> > > > > >> > > > > > >>> > >>> > > > not accurate.
> > > > > >> > > > > > >>> > >>> > > > I believe the detection can be
> enhanced:
> > > DST
> > > > > >> rules
> > > > > >> > > can
> > > > > >> > > > be
> > > > > >> > > > > > >>> > detected
> > > > > >> > > > > > >>> > >>> using
> > > > > >> > > > > > >>> > >>> > > JS
> > > > > >> > > > > > >>> > >>> > > > code and taken into account while TZ
> > > > guessing
> > > > > >> > > > > > >>> > >>> > > >
> > > > > >> > > > > > >>> > >>> > > > here is the example of JS code
> > determining
> > > > > >> month TZ
> > > > > >> > > > > switch
> > > > > >> > > > > > is
> > > > > >> > > > > > >>> > >>> happening:
> > > > > >> > > > > > >>> > >>> > > > [2] line 50
> > > > > >> > > > > > >>> > >>> > > >
> > > > > >> > > > > > >>> > >>> > > > Maybe it worth to implement something
> > like
> > > > > this
> > > > > >> in
> > > > > >> > > > > Wicket?
> > > > > >> > > > > > >>> > >>> > > >
> > > > > >> > > > > > >>> > >>> > > > [1]
> > > > > >> http://markmail.org/message/v7vmfburg4zrtizk
> > > > > >> > > > > > >>> > >>> > > > [2]
> > > > > >> > > > > > >>> > >>> > > >
> > > > > >> > > > > > >>> > >>> > > >
> > > > > >> > > > > > >>> > >>> > >
> > > > > >> > > > > > >>> > >>>
> > > > > >> > > > > > >>> > >>>
> > > > > >> > > > > > >>> >
> > > > > >> > > > > > >>>
> > > > > >> > > > > >
> > > > > >> > > > >
> > > > > >> > > >
> > > > > >> > >
> > > > > >> >
> > > > > >>
> > > > >
> > > >
> > >
> >
> https://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/main/webapp/js/openmeetings_functions.js?revision=1562780&view=markup
> > > > > >> > > > > > >>> > >>> > > >
> > > > > >> > > > > > >>> > >>> > > > --
> > > > > >> > > > > > >>> > >>> > > > WBR
> > > > > >> > > > > > >>> > >>> > > > Maxim aka solomax
> > > > > >> > > > > > >>> > >>> > > >
> > > > > >> > > > > > >>> > >>> > >
> > > > > >> > > > > > >>> > >>> >
> > > > > >> > > > > > >>> > >>> >
> > > > > >> > > > > > >>> > >>> >
> > > > > >> > > > > > >>> > >>> > --
> > > > > >> > > > > > >>> > >>> > WBR
> > > > > >> > > > > > >>> > >>> > Maxim aka solomax
> > > > > >> > > > > > >>> > >>>
> > > > > >> > > > > > >>> > >>
> > > > > >> > > > > > >>> > >>
> > > > > >> > > > > > >>> > >>
> > > > > >> > > > > > >>> > >> --
> > > > > >> > > > > > >>> > >> WBR
> > > > > >> > > > > > >>> > >> Maxim aka solomax
> > > > > >> > > > > > >>> > >>
> > > > > >> > > > > > >>> > >
> > > > > >> > > > > > >>> > >
> > > > > >> > > > > > >>> > >
> > > > > >> > > > > > >>> > > --
> > > > > >> > > > > > >>> > > WBR
> > > > > >> > > > > > >>> > > Maxim aka solomax
> > > > > >> > > > > > >>> > >
> > > > > >> > > > > > >>> >
> > > > > >> > > > > > >>> >
> > > > > >> > > > > > >>> >
> > > > > >> > > > > > >>> > --
> > > > > >> > > > > > >>> > WBR
> > > > > >> > > > > > >>> > Maxim aka solomax
> > > > > >> > > > > > >>> >
> > > > > >> > > > > > >>>
> > > > > >> > > > > > >>
> > > > > >> > > > > > >>
> > > > > >> > > > > > >>
> > > > > >> > > > > > >> --
> > > > > >> > > > > > >> WBR
> > > > > >> > > > > > >> Maxim aka solomax
> > > > > >> > > > > > >>
> > > > > >> > > > > > >
> > > > > >> > > > > > >
> > > > > >> > > > > > >
> > > > > >> > > > > > > --
> > > > > >> > > > > > > WBR
> > > > > >> > > > > > > Maxim aka solomax
> > > > > >> > > > > > >
> > > > > >> > > > > >
> > > > > >> > > > > >
> > > > > >> > > > > >
> > > > > >> > > > > > --
> > > > > >> > > > > > WBR
> > > > > >> > > > > > Maxim aka solomax
> > > > > >> > > > > >
> > > > > >> > > > >
> > > > > >> > > >
> > > > > >> > > >
> > > > > >> > > >
> > > > > >> > > > --
> > > > > >> > > > WBR
> > > > > >> > > > Maxim aka solomax
> > > > > >> > > >
> > > > > >> > >
> > > > > >> >
> > > > > >> >
> > > > > >> >
> > > > > >> > --
> > > > > >> > WBR
> > > > > >> > Maxim aka solomax
> > > > > >> >
> > > > > >>
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > WBR
> > > > > > Maxim aka solomax
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > WBR
> > > > > Maxim aka solomax
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Regards - Ernesto Reinaldo Barreiro
> > > >
> > >
> > >
> > >
> > > --
> > > WBR
> > > Maxim aka solomax
> > >
> >
>
>
>
> --
> WBR
> Maxim aka solomax
>



-- 
Regards - Ernesto Reinaldo Barreiro

Reply via email to