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
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
Hashes for collective.properties-1.0a2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf0dfd25197cc6bbb4760f0d829bf83f532075234e0276b96f3e7d368e66fe00 |
|
MD5 | 9c975da143603ca79ba31aa1c9d0c7a0 |
|
BLAKE2b-256 | f89290f92b8291de3900e1518c0daad6b94d3b7ecda410e04616ccd103de1bb1 |