Formulator changes 1.11.2 Bugs fixed - Copied fix from the 1.10 branch, TypeError when passing something other than a string into the Validator. 1.11.1 Bugs fixed - Shut up startup warnings about security declarations in Zope 2.8.5. 1.11 Features Added - Formulator now needs Zope 2.8.4 + Five 1.2. It uses Five's i18n architecture instead of PlacelessTranslationService. Five 1.2 can be downloaded at http://codespeak.net/z3/five If you do not want to install Five 1.2 for some reason, simply remove 'configure.zcml' in the Formulator package. Formulator will then work (but not have i18n support) in a plain Zope 2.8 installation. - Radiobuttons are now rendered with a label around their field value, allowing to click on the value instead of the radio button itself. (Patch from Bertrand Croq) Bugs fixed - Fixed unicode issues in FormToXML, when the form was in unicode mode and message fields contained non-ascii chars, XML serialization didn't work. 1.10 Features Added - Allow to group fields of the ZMI form for each field into more groups than the default "widget" and "validator" (Patch from Mikaël Barbero) Bugs fixed - Fixed AttributeError (on __call__) on DummyMessageID. 1.9.0 Features Added - Added the 'modules' namespace for TALES expresions. - when reordering a field in the "Order" tab the current field is "sticky" for faster moving up and down. (Patch from Sébastien Robin) - Addes serializeValue and deserializeValue methods to the validator classes. The former takes a sax handler as an argument and sends it sax events to serialize the field value, the latter takes serialized values and massages them back into valid formulator values. These methods are not used within formulator itself, and introduce no new dependencies. - A new flag to the DateTimeField widget allows to hide the day, allowing to specify month and year only. The day defaults to the first day of the month in this case. (Patch from Ian Duggan) Bugs Fixed - Fixed issue for render_view of list fields with no default value. - Fixed issue with non-ascii characters in the title of a newly created form or field if the unicode property has been set (Patch from Bertrand Croq) - Calling "validate" on LabelField directly failed with a KeyError: 'external_validator' (Patch from Reinout van Rees) - A PatternField may have returned garbled results if the pattern has several 'e' or 'f' in the pattern and 'd', 'e' of 'f' in the field value 1.8.0 Features Added - Remove i18n prefix and message id generation strategy from Formulator. It is cleaner to do this with i18n:translate in ZPT. Extraction of messages can be done from .form XML files (though this functionality is not yet part of Formulator). - Introduce message id markers and .po file for Formulator generated error messages. These can be made translated in your own page templates like this:
- Test framework now uses (and requires) ZopeTestCase. This allowed some testing setup cruft to be removed. Bugs Fixed - Added explicit security declaration for the "fieldAdd" DTML-file. This fixed a problem with copy & paste fields in Zope 2.7.3. - Fields having been removed via the XML tab in the ZMI still showed up in the "Contents" tab. - As a convenience TALES expressions now may return "None" for the default value, which is rendered as the empty string. (previously it has been rendered as "value".) 1.7.0 Features Added - Added FormulatorFormFile, which can be used to load XML representations of forms from filesystem code like PageTemplateFile. - i18n-id and i18n-domain support for forms, including descriptions, error-messages, etc Bugs Fixed - changed way selection fields check whether their items property is a list or single item. - Made system not reregister help for Fields which already have help, to avoid ZODB writes on startup. - Fixed singleton submit button that wasn't properly closed. - Zope 2.7 compatibility: In Zope 2.7 the behaviour when trying to construct invalid DateTime object changed from raising string exceptions to class based exceptions. This has caused the DateTimeField's to pass through the new exceptions instead of converting them to ValidationError. changed: Validator.py:DateTimeValidator and import section; test/test_validators.py:DateTimeValidatorTestCase - PatternFields are no longer documented as "experimental" in the Help system. changed: Validator.py:PatternValidator - DateTime values field values (like start or end time) have been wrongly represented as strings in the XML representation. changed: XMLToForm.py, FormToXML.py. test/test_serialize.py - Fixed bug with rendering of ListField's similar to the "single element list with one two-char string" bug fixed for validation in 1.6.2 changed: Widgets.py: SingleItemsWidget, MultiItemsWidget test/test_Form.py - Fixed bug in DateTime field where a set "default to now" overwrote values in the request changed: Widgets.py:DateTimeWidget.render tests/test_serialize.py:FakeRequest tests/test_Form.py - several spelling bugs changed tests/test_Form.py - Fixed bug where a set "default" for a checkbox field would always render a checked checkbox, even if redisplaying a submitted form where the user has unchecked the checkbox Actually the works only if the opening