Skip to main content

This package provides some further fields and widgets for Archetypes.

Project description

Welcome to ATExtensions

This package provides some further fields and widgets for Archetypes as used by Plone.

Most generic are the RecordField/Widget (effectively handling a dictionary) and the RecordsField/Widget (handling a list of records). The most advanced application thereof are the FormattableName(s) fields and widgets.

To demonstrate their usage, there are demo content types called ‘WorkingGroup’ and ‘FormattbleNameDemo’ which can be installed using the packages ‘demotypes’ profile. To enable the types after install, go to portal types and make them implicitly addable or include them in some folderish type’s ‘allowed_content_types’.

ATExtensions are installable in the Plone 3.3.x and 4.x series.

Please use a release from the 1.0.x series with older versions of Plone.

Enjoy, Raphael (raphael.ritz at


1.1 (2013-02-25)

  • Now that Archetypes is GPL we need to be GPL as well. [raphael]

  • Email widget macro: fixed a surviving ‘isAnon’. [raphael]

  • Combo widget: correct handling of ‘empty_marker’ in ‘process_form’. This fixes Thanks to ristow for pointing this out. [raphael]

  • Comment field: support a ‘comment_method’ to obtain the text via a callable at run time. The method is looked up on the content object. [raphael]

1.1a3 (2010-09-28)

  • Changed translate method to let it be compatible with ore.contentmirror bulk import [martior]

1.1a2 (2010-07-04)

  • Restored compatibility with Plone 3.3 by dealing with validation interfaces in a backwards compatible manner. [hannosch]

  • Added a testing buildout to the package. [hannosch]

1.1a1 (2010-07-03)

  • Fixed deprecation warnings in Plone 4. [ajung]

  • Explicitly define isAnon in templates. [raphael]

  • Remove another explicit translation. [raphael]

  • There is no tabindex in Plone 4 any longer - be more defensive in templates. [raphael]

  • Change old style to new style interface declarations. [raphael]

1.0 (2010-07-03)

  • Some package metadata cleanup. [hannosch]

  • Made some field/widget methods of the record widget available to untrusted code. [raphael]

0.9.6 (2009-07-10)

  • Respect a ‘show_hm’ attribute on record(s) widgets to optionally suppress the time component on datetime subfields. [raphael]

  • Added form controller settings for the more button when used from atct_edit. [raphael]

  • Added Spanish translation. Thanks to Franco Pellegrini for the contribution. [raphael]

0.9.5 (2008-11-04)

  • Saner default for the LabeledUrlWidget when there is no URL given (not linking anywhere now). [raphael]

  • Changed ‘toPortalTime’ to ‘toLocalizedTime’ in the datetime widget (how did that survive?). [raphael]

  • Renamed the old Extensions/Install to Extensions/plone2Install. From now on the profile should be used. People in need of the old behavior can revert the renaming. [raphael]


  • Added the LabeledUrlField/Widget combo. This is an example of a record field holding a ‘label’ and a ‘url’ key where in view mode the ‘lable’ is used as text for the anchor to url. [raphael]

0.9.3 (2008-05-20)

  • First release as egg [aclark]

After 0.8

  • Made the combo_widget more configurable. Thanks to Per Erik Strandberg for the patch. [raphael]

  • Made the demarshalling of records fields more robust. Thanks to Lucie Lejard for spotting this and for the patch. [raphael]

  • Fixed the CommentWidget to not be inline-editable in Plone 3.0. [hannosch]

  • Added two extension profiles: one called ‘default’ with everything except the demo types and another one called ‘demotypes’ for nothing but the demo types.

  • Added the SmartEmailField/Widget from Johannes Wille. See the doc string in widget.smartemail.SmartEmailWidget for more. Thanks Johannes!

  • reenabled the demo types but now controlled by a flag in the config file

  • made the insane ‘email’ masking a bit less insane

  • introduced a flag ‘add_select’ in ‘getDisplyList’ to control the addition of the null entry (‘Select’). Defaults to True

  • bugfix in the new i18n support (missing domain in widget)


  • improved i18n support [Mike Gabriel]

  • added ‘comment’ field (lets you include formattable narrative in edit forms)

  • first draft of a ‘remotetext’ field (not yet working) (the idea is to have a field pull its text from a remote source but also to be able to customize the text if needed)


  • fixed bug when deleting more than one entry from a list of records using the records widget (thanks to Mike Gabriel for spotting the bug and to Frank Bennett for the fix)


  • fixed references to deprecated calendar_slot [David Siedband]

  • extended Record.getVocabularyFor to accept the use of DisplayLists as subfield_vocabulary entries and to raise errors if a valid DisplayLists was not returned from an expression. [DWM]


  • add the ‘formattable name(s)’ data types, fields, and widgets


  • rearranged almost everything to be inline with AT-1.4’s architecture

  • made it backwards compatible with AT-1.2 again (hopefully)

  • added postprocessing to the URL widget to supply http as default protocol if no-one is supplied.


  • added ComboWidget and to create combo boxes where users can select a value or specify one freely it they select ‘other’.

  • added a ‘delete’ flag to each record in RecordsWidget’s edit macro.

  • added an optional ‘maxlength’ attribute for subfields

  • added subfield validation; from now on AT 1.3 is required (I think)

  • updated the demo type (WorkingGroup) to use subfield validation for the ‘homepage’ subfield in e-contact


  • added a ‘delete all entries’ checkbox to the records widget

  • added ‘minimalSize’ and ‘maximalSize’ to the RecordsField’s properties to enable better control of the number of lines offered in the edit form

  • do not override ‘content_edit’ anymore; configure the form controller on install instead and add a custom ‘more_edit’ to be called when ‘more’ is pressed (only slight extension to the original ‘content_edit’ but I couldn’t get around otherwise with the references - thanks to Roche Compaan for a valuable hint).

  • Record(s)Field should now work with schemata or portal_factory without the risk of data loss

  • adapted the demo content type (‘WorkingGroup’) to reflect the above changes and made it demonstrate how to enable the date picker box for a DateTime subfield

  • added support for ‘int’, ‘long’ and ‘float’ as subfield types in RecordField and RecordsField.


  • made compliant with the new security policy for archetypes 1.3: Registered the UrlField/Widget and replaced ‘getRaw’ in the Record(s)Widget by an appropriate indirect call to the edit accessor.


  • added a RecordsField and -Widget (records are a list of record objects)

  • improved the RecordWidget’s view macro (empty subfields are not rendered)

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Products.ATExtensions-1.1.tar.gz (49.6 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page