Skip to main content

Introduction

This product can be used by people that want to use an strftime compatible format for display locale sensible data inside Plone templates.

The Python Way

Python support locales through the locale module but this seems not working properly inside Plone, for example the setlocale function says:

setlocale() is not thread-safe on most systems. Applications typically start with a call of

>>> import locale
>>> locale.setlocale(locale.LC_ALL, '')

This sets the locale for all categories to the user’s default setting (typically specified in the LANG environment variable). If the locale is not changed thereafter, using multithreading should not cause problems.

So it seems that you can force a locale (or use the system ones) but I fear this is not a good idea for Plone sites that need to be used in more than a language. Plone itself don’t use the Python locales for translate dates elements.

The Plone Way

Inside Plone you can print date in a full working i18n aware way using the toLocalizedTime method of the ploneview. However you can simply use a couple of format: long_format or short_format, defined in the Plone localization product, passing True or False as second parameter:

>>> from DateTime import DateTime
>>> t = DateTime()
>>> ploneview.toLocalizedTime(t, True)

Alternative

Installing this product will give you an alternative, patching Plone. You can continue using toLocalizedTime but you can play with the long_format parameter, that in fact became also a format parameter.

You can still use the method as above (so basic Plone features are not touched) but you can provide a long_format value that can be a format string.

For example, a valid Python date string format as “%a %d hello guys %b %Y” became “${a} ${d} hello guys ${b} ${Y}”, so:

>>> from DateTime import DateTime
>>> t = DateTime()
>>> ploneview.toLocalizedTime(t, "${a} ${d} hello guys ${b} ${Y}")

Warning

Maybe this product is wrong and there is a way to make strftime working properly in a Plone multi-language site, but I don’t find any information about an alternative way! If you know how to do this, please contribute to the discussion and help me deprecate this add-on!

Authors

This product was developed by RedTurtle Technology team.

RedTurtle Technology Site

Changelog

0.1.0 (2011-07-21)

  • Initial release

Release files for experimental.ulocalized_time 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for experimental.ulocalized_time 0.1.0
File Size Uploaded
experimental.ulocalized_time-0.1.0.tar.gz 13.1 kB Details

Release files / experimental.ulocalized_time-0.1.0.tar.gz

Download URL experimental.ulocalized_time-0.1.0.tar.gz
Size 13.1 kB
Tags Source
SHA-256 checksum
How to use checksums
b25c9a4986ea69097bab9b3d3ebd78f70a51eb4eb5ece4fc33720824e9fcf9a4
BLAKE2b-256 checksum
How to use checksums
cb0aedf4a8689e83ddbfdc3347259e532216cbdb6262e3ff2a60adabbb1fc124
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page