diff -r 078cfa8a5187 -r cbd7b2f49dc9 web/formfields.py --- a/web/formfields.py Thu Apr 21 17:25:32 2011 +0200 +++ b/web/formfields.py Wed Apr 27 09:55:17 2011 +0200 @@ -875,7 +875,9 @@ if self.choices: return super(BooleanField, self).vocabulary(form) if self.allow_none: - return [('', ''), (form._cw._('yes'), '1'), (form._cw._('no'), '0')] + return [(form._cw._('indifferent'), ''), + (form._cw._('yes'), '1'), + (form._cw._('no'), '0')] # XXX empty string for 'no' in that case for bw compat return [(form._cw._('yes'), '1'), (form._cw._('no'), '')] @@ -1200,14 +1202,19 @@ FIELDS = { - 'Boolean': BooleanField, + 'String' : StringField, 'Bytes': FileField, - 'Date': DateField, - 'Datetime': DateTimeField, + 'Password': PasswordField, + + 'Boolean': BooleanField, 'Int': IntField, 'Float': FloatField, 'Decimal': StringField, - 'Password': PasswordField, - 'String' : StringField, - 'Time': TimeField, + + 'Date': DateField, + 'Datetime': DateTimeField, + 'TZDatetime': DateTimeField, + 'Time': TimeField, + 'TZTime': TimeField, + # XXX implement 'Interval': TimeIntervalField, }