Skip to main content

Provides form to update object properties via Plone UI.

Project description

Introduction

Provides form to update object properties via Plone UI.

Quick Intro

  • it replicates ZMI /manage_propertiesForm form in Plone UI

  • it’s like collective.interfaces package to manage zope interfaces via Plone but to manage PropertyManager based properties

  • it uses z3c.form library to generate CRUD form

  • it is tested in Plone 3 (Plone 4 to be checked soon)

  • it’s installable via portal quickinstaller tool, for detailed instructions on how to add it to your zope instance, please, check docs/INSTALL.txt file

Property attributes

IPropertyManager interface provides properties with the next list of metadata:

  • id: required

  • type: required

  • select_variable: optional; for selection and multiple selection property types to provide the name of a property or method which returns a list of strings from which the selection(s) can be chosen

  • mode: optional; must contain 0 or more chars from the set ‘w’, ‘d’; ‘w’ - value may be changed by user, ‘d’ - user can delete property, ‘’ - property and it’s value may be shown in property listings, but it is read-only and may not be deleted; without mode key property is assumed to have the mode ‘wd’ (writeable and deletable)

  • label: optional

  • description: optional

Property types

Default property manager property types are listed below. All of them are planned to be supported by collective.properties management form (see TODO section below for what’s not implemented yet):

  • float - floating number

  • int - integer

  • long - long integer

  • string - utf-8 encoded string

  • lines - list of utf-8 encoded strings

  • text - utf-8 encoded text (string with line breaks)

  • date - Zope2 DateTime object

  • tokens - list of utf-8 encoded strings, entered as text line and split by space characters afterwards

  • selection - utf-8 encoded string, the only difference between string property type is that selection property values is selected from list of available options, this property type owns extra item in the property dictionary, ‘select_variable’ which provides the name of a property or method; note: make sure your vocabulary doesn’t include unicode strings, only integers, floats, utf-8 encoded strings and booleans, otherwise old PropertyManager form breaks which returns a list of strings from which the selection can be chosen.

  • multiple selection - list of utf-8 encoded strings, these strings are also selected from list of available options as described above in selection property type

Compatibility

It’s been tested only with Plone 3 so far.

Notes

Property Manager interface defines some reserved strings that are prohibited to be used as property ids. It provides validation method which is also used by collective.properties management form. That’s why it’s secure to install this package in Plone site and let non-tech content manager use it’s properties form.

Not all standard properties are handled yet. For details, please, see TODO section below.

collective.properties form simply skips property types that it doesn’t know how to handle. So to manage them you still need to use standard /manage_propertiesForm form.

Form that this package provides to manage properties is fully compatible with old Property Manager form (/manage_propertiesForm) so it’s possible to manage properties on both of them at the same time, and there won’t be any issues with string encodings, etc… collective.properties form saves data in the same format original form does.

TODO

  • add tests

  • test in plone4

  • improve installation docs re z3c.form versions and installing Plone z3cform support via quickinstaller

Changelog

1.0a2 - May 10, 2001

  • Add Manage Properties form title and description with details on how to use it. [piv]

  • Set Property Value inputs to readonly mode for non-writable properties. Validate property update on server side as well. [piv]

  • Disable deletion checkboxes for non-deletable properties. Validate deletion on server side as well. [piv]

  • Added selection and multiple selection property type handling. [piv]

  • Added tokens property type handling. [piv]

  • Added date property type handling. [piv]

  • Store string and text property types as ‘utf-8’ encoded strings to be OFS.PropertyManager compliant. So now it’s possible to use both forms to manage properties w/o any encoding issues. [piv]

  • Made lines property type work. [piv]

  • Added boolean property type handling. [piv]

1.0a1 - March 14, 2011

  • Initial release, no handlers for date and selection fields, no tests yet. [piv]

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

collective.properties-1.0a2.tar.gz (24.7 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