On Thu, Feb 15, 2007 at 02:46:44PM -0800, Jamu Kakar wrote:
> I'm looking at integrating zope.i18n.locale into my application (so far
> strings are hard-coded in English). Among the first localization tasks
> I'm taking on is presenting data in the timezone of the current user.
> I've been perusing the code in zope.i18n.locale and I see some mention
> of timezones but nothing that would lead me to believe that dates (in
> UTC) will be auto-converted to the user's timezone when presented with
> formatting methods.
AFAIK there's is no easy way of automatically determining a user's timezone.
The HTTP-Request contains language preference information only but no
timezone preference. However - if you know some clever algorithm which is
i.e. able to tell the time zone from the client's IP, you'll have to write
an adapter providing zope.interface.common.idatetime.ITZInfo adapted from a
IBrowserRequest. Some components (i.e. zc.datetimewidget) will take it into
account when interacting with the user.
To convert a (tz-aware!) datetime-object to the correct timezone, use a method
like that in your view class (not testet):
BTW: Maybe you know that
shows a I18Nd and L10Nd datetime according to the user's language
If you can read german, you can find more about that @
Zope3-users mailing list