Mercurial > p > roundup > code
view website/issues/extensions/timezone.py @ 5179:e8b3d3a14563
- issue2550796: Calendar and Classhelp selection tools don't cause
onchange event to be triggered.
Using the helper popups for modifying lists of users, lists of
issues, dates etc.. now trigger the change event on the form's
field. This allows onchange javascript to trigger to highlight
changes, recalculate other form values etc. See ``upgrading.txt``
for details on applying these changes to your tracker.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Sat, 28 Jan 2017 20:58:19 -0500 |
| parents | 7d8e0dbb0852 |
| children |
line wrap: on
line source
# Utility for replacing the simple input field for the timezone with # a select-field that lists the available values. import cgi try: import pytz except ImportError: pytz = None def tzfield(prop, name, default): if pytz: value = prop.plain() if '' == value: value = default else: try: value = "Etc/GMT%+d" % int(value) except ValueError: pass l = ['<select name="%s">' % name] for zone in pytz.all_timezones: s = ' ' if zone == value: s = 'selected=selected ' z = cgi.escape(zone) l.append('<option %svalue="%s">%s</option>' % (s, z, z)) l.append('</select>') return '\n'.join(l) else: return prop.field() def init(instance): instance.registerUtil('tzfield', tzfield)
