Skip to main content

Integrates the Dexterity content type system into Plone

Project description

Introduction

This package integrates the Dexterity content type system into the Plone content management system.

plone.app.dexterity contains code to handle four major areas of concern:

  • Dexterity Types control panel

  • Default behaviors

  • Installation of dependencies

  • Backports of several upstream changes

Dexterity Types control panel

Installing this package adds a control panel called “Dexterity Content Types”. This control panel allows you to:

  • Add and remove Dexterity content types

  • Modify the schema of a Dexterity content type

  • Assign behaviors to a Dexterity content type

Default behaviors

Several behaviors are included that can be enabled for a content type to make it behave similarly to a standard ATContentTypes-based content type. These behaviors can be enabled via the Behaviors tab for a type in the Dexterity Types control panel, or via the behaviors setting on the type’s FTI in portal_types in the ZMI.

Dublin Core metadata (plone.app.dexterity.behaviors.metadata.IDublinCore)

This behavior includes the standard Dublin Core metadata fields. Enabling it is equivalent to enabling the Basic Metadata, Categorization, Effective Range, and Ownership behaviors.

Basic Metadata (plone.app.dexterity.behaviors.metadata.IBasic)

Includes title and description fields.

Categorization (plone.app.dexterity.behaviors.metadata.ICategorization)

Includes subject and language fields.

Effective Range (plone.app.dexterity.behaviors.metadata.IPublication)

Includes effective date and expiration date fields.

Ownership (plone.app.dexterity.behaviors.metadata.IOwnership)

Includes creator, contributor, and copyright fields.

Related Items (plone.app.dexterity.behaviors.related.IRelatedItems)

Includes a z3c.relationfield-based related items field.

Name From Title (plone.app.content.interfaces.INameFromTitle)

Items with this behavior enabled will automatically get an id based on their title when the item is saved for the first time.

Installation of dependencies

Installing this package should also install everything else that you need to use Dexterity within Plone. In particular, it will pull in the following packages as dependencies:

  • z3c.form

  • plone.z3cform

  • plone.app.z3cform

  • plone.supermodel

  • plone.dexterity

  • plone.directives.form

  • plone.directives.dexterity

  • plone.schemaeditor

  • plone.formwidget.autocomplete

  • plone.formwidget.contenttree

  • plone.app.relationfield

Backports of upstream changes

Dexterity relies on several new features in CMF and plone.app.content that are not included in existing Plone 3.x releases:

  • The ability to specify an expression for the add view on an FTI.

  • The ability to traverse to an add view in the ++add++ namespace.

  • Building the type factory menu based on actions.

plone.app.dexterity applies these changes as monkey patches so that Dexterity can be used in Plone 3.x. See overrides.zcml and overrides.py for details.

Changelog

1.0b4 - 2011-03-15

  • Add a “Name from file name” behavior. [elro]

  • Remove the NameFromTitle behavior factory, it is not necessary. [elro]

  • Add “Next previous navigation” and “Next previous navigation toggle” behaviors. [elro]

  • Add an “Exclude from navigation” behavior. [lentinj]

  • Put the folder listing within a fieldset. [lentinj]

1.0b3 - 2011-02-11

  • Add a navigation root behavior. [elro]

  • Fix decoding error when an encoded description is stored in the FTI. [davisagli]

  • Avoid empty <div class=”field”> tag for title and description in item.pt and container.pt. [gaudenzius]

  • Add locales structure for translations with cs , de, es, eu, fr, ja, nl, pt_BR [toutpt]

  • Update french translation [toutpt]

1.0b2 - 2010-08-05

  • Fix several XML errors in templates. Needed for Chameleon compatibility. [wichert]

  • cloning a type through the dexterity UI in the control panel did not work if the type had a hyphen in it’s name. This fixes http://code.google.com/p/dexterity/issues/detail?id=126 [vangheem]

1.0b1 - 2010-04-20

  • Require plone.app.jquerytools for the schema editor UI, and make sure it is installed when upgrading. [davisagli]

  • Remove unused schemaeditor.css. [davisagli]

  • Omit the metadata fields except on edit and add forms. [davisagli]

  • Enable the “Name from title” behavior for new types, by default. [davisagli]

  • Include plone.formwidget.namedfile so that File upload and Image fields are available out of the box. You must explicitly include z3c.blobfile in your environment if you want blob-based files. [davisagli]

  • Added a DexterityLayer that can be used in tests. [davisagli]

  • Fix issue with the BehaviorsForm accidentally polluting the title of the z3c.form EditForm ‘Apply’ button. [davisagli]

  • Add upgrades folder and make sure plone.app.z3cform profile gets installed on upgrades from previous versions of Dexterity. [davisagli]

  • Depend on the plone.app.z3cform profile, to make sure the Plone browser layer for z3c.form gets installed. [davisagli]

  • Avoid relying on acquisition to get the portal_url for links in the type listing table. [davisagli]

1.0a7 - 2010-01-08

  • Make sure the Dublin Core fieldsets appear in the same order as they do in AT content. [davisagli]

  • Make sure the current user is loaded as the default creator for the IOwnership schema in an add form. [davisagli]

  • Include behavior descriptions on the behavior edit tab. [davisagli]

  • IBasic behavior: set missing_value of description-field to u’’ . The description should never be None (live_search would not work any more). [jbaumann]

  • Fix issue where traversing to a nonexistent type name in the types control panel did not raise NotFound. [davisagli]

  • Make it possible to view the fields of non-editable schemata. [davisagli]

  • Tweaks to the tabbed_forms template used for the types control panel. [davisagli]

1.0a6 - 2009-10-12

  • Add plone.app.textfield as a dependency. We don’t use it directly in this package, but users of Dexterity should have it installed and available. [optilude]

  • Use some default icons for new types. [davisagli]

  • Show type icons in type listing if available. [davisagli]

  • Removed ‘container’ field from the types listing in the control panel (it wasn’t working). [davisagli]

  • Add message factories to titles and descriptions of metadata schema fields. Fixes http://code.google.com/p/dexterity/issues/detail?id=75. [optilude]

  • Patch listActionInfos() instead of listActions() in order to get the folder/add category into the actions list. This avoids a problem with the ‘actions.xml’ export handler exporting the folder/add category incorrectly. Fixes http://code.google.com/p/dexterity/issues/detail?id=78 [optilude]

1.0a5 - 2009-07-26

  • Explicitly include overrides.zcml from plone.app.z3cform. [optilude]

1.0a4 - 2009-07-12

  • Changed API methods and arguments to mixedCase to be more consistent with the rest of Zope. This is a non-backwards-compatible change. Our profuse apologies, but it’s now or never. :-/

    If you find that you get import errors or unknown keyword arguments in your code, please change names from foo_bar too fooBar, e.g. serialize_schema() becomes serializeSchema(). [optilude]

1.0a3 (2009-06-07)

  • Updated use of <plone:behavior /> directive to match plone.behavior 1.0b4. [optilude]

1.0a2 (2009-06-01)

  • Remove superfluous <includeOverrides /> in configure.zcml which would cause a problem when the package is loaded via z3c.autoinclude.plugin [optilude]

1.0a1 - (2009-05-27)

  • Initial release

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

plone.app.dexterity-1.0b4.zip (79.0 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