--- templating.py.orig 2004-11-24 13:53:05.000000000 -0800 +++ templating.py 2004-11-24 14:21:02.000000000 -0800 @@ -1277,6 +1277,7 @@ return s class DateHTMLProperty(HTMLProperty): + _marker = [] def __init__(self, client, classname, nodeid, prop, name, value, anonymous=0, offset=None): HTMLProperty.__init__(self, client, classname, nodeid, prop, name, @@ -1307,7 +1308,7 @@ return DateHTMLProperty(self._client, self._classname, self._nodeid, self._prop, self._formname, date.Date('.')) - def field(self, size=30): + def field(self, size=30, format=_marker): ''' Render a form edit field for the property If not editable, just display the value via plain(). @@ -1317,10 +1318,17 @@ if self._value is None: value = '' elif type(self._value) is type(''): - value = self._value + if format is not self._marker: + value = value.pretty(format) + else: + value = self._value else: tz = self._db.getUserTimezone() - value = cgi.escape(str(self._value.local(tz))) + if format is not self._marker: + value = cgi.escape(self._value.local(tz).pretty(format)) + else: + value = cgi.escape(str(self._value.local(tz))) + if self.is_edit_ok(): value = '"'.join(value.split('"')) @@ -1344,7 +1352,6 @@ return interval.pretty() return str(interval) - _marker = [] def pretty(self, format=_marker): ''' Render the date in a pretty format (eg. month names, spaces).