UNKNOWN
Project description
Introduction
============
collective.wfform gives a developer the ability to present a z3c.form
during a workflow transition.
To implement this for a transition in a particular workflow,
change the transition url from:
%(content_url)s/content_status_modify?workflow_action=submit
to:
%(content_url)s/workflow_transition_form?workflow_action=submit
This will give you a jQuery popup form with a comments field.
To add your own fields, add a method to your content type which
returns a z3c schema based on the transition.
security.declareProtected(permissions.ModifyPortalContent, 'getSchemaForTransition')
def getSchemaForTransition(self, transition):
"""Return a fieldset depending on the transition"""
if transition == 'my_transition':
return IMyTransitionForm
IMyTransitionForm should be a standard interface class with a zope3 schema.
To process the data from the form, add another method onto your class to manage this.
security.declareProtected(permissions.ModifyPortalContent, 'processTransitionForm')
def processTransitionForm(self, data):
"""Return a fieldset depending on the transition"""
if data.has_key('my_field'):
self.setMyField(data['my_field'])
collective.wfform Installation
------------------------------
To install collective.wfform into the global Python environment (or a workingenv),
using a traditional Zope 2 instance, you can do this:
* When you're reading this you have probably already run
``easy_install collective.wfform``. Find out how to install setuptools
(and EasyInstall) here:
http://peak.telecommunity.com/DevCenter/EasyInstall
* If you are using Zope 2.9 (not 2.10), get `pythonproducts`_ and install it
via::
python setup.py install --home /path/to/instance
into your Zope instance.
* Create a file called ``collective.wfform-configure.zcml`` in the
``/path/to/instance/etc/package-includes`` directory. The file
should only contain this::
<include package="collective.wfform" />
.. _pythonproducts: http://plone.org/products/pythonproducts
Alternatively, if you are using zc.buildout and the plone.recipe.zope2instance
recipe to manage your project, you can do this:
* Add ``collective.wfform`` to the list of eggs to install, e.g.:
[buildout]
...
eggs =
...
collective.wfform
* Tell the plone.recipe.zope2instance recipe to install a ZCML slug:
[instance]
recipe = plone.recipe.zope2instance
...
zcml =
collective.wfform
* Re-run buildout, e.g. with:
$ ./bin/buildout
You can skip the ZCML slug if you are going to explicitly include the package
from another package's configure.zcml file.
Changelog
=========
1.0dev (unreleased)
-------------------
- Initial release
============
collective.wfform gives a developer the ability to present a z3c.form
during a workflow transition.
To implement this for a transition in a particular workflow,
change the transition url from:
%(content_url)s/content_status_modify?workflow_action=submit
to:
%(content_url)s/workflow_transition_form?workflow_action=submit
This will give you a jQuery popup form with a comments field.
To add your own fields, add a method to your content type which
returns a z3c schema based on the transition.
security.declareProtected(permissions.ModifyPortalContent, 'getSchemaForTransition')
def getSchemaForTransition(self, transition):
"""Return a fieldset depending on the transition"""
if transition == 'my_transition':
return IMyTransitionForm
IMyTransitionForm should be a standard interface class with a zope3 schema.
To process the data from the form, add another method onto your class to manage this.
security.declareProtected(permissions.ModifyPortalContent, 'processTransitionForm')
def processTransitionForm(self, data):
"""Return a fieldset depending on the transition"""
if data.has_key('my_field'):
self.setMyField(data['my_field'])
collective.wfform Installation
------------------------------
To install collective.wfform into the global Python environment (or a workingenv),
using a traditional Zope 2 instance, you can do this:
* When you're reading this you have probably already run
``easy_install collective.wfform``. Find out how to install setuptools
(and EasyInstall) here:
http://peak.telecommunity.com/DevCenter/EasyInstall
* If you are using Zope 2.9 (not 2.10), get `pythonproducts`_ and install it
via::
python setup.py install --home /path/to/instance
into your Zope instance.
* Create a file called ``collective.wfform-configure.zcml`` in the
``/path/to/instance/etc/package-includes`` directory. The file
should only contain this::
<include package="collective.wfform" />
.. _pythonproducts: http://plone.org/products/pythonproducts
Alternatively, if you are using zc.buildout and the plone.recipe.zope2instance
recipe to manage your project, you can do this:
* Add ``collective.wfform`` to the list of eggs to install, e.g.:
[buildout]
...
eggs =
...
collective.wfform
* Tell the plone.recipe.zope2instance recipe to install a ZCML slug:
[instance]
recipe = plone.recipe.zope2instance
...
zcml =
collective.wfform
* Re-run buildout, e.g. with:
$ ./bin/buildout
You can skip the ZCML slug if you are going to explicitly include the package
from another package's configure.zcml file.
Changelog
=========
1.0dev (unreleased)
-------------------
- 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
collective.wfform-1.0-a1.zip
(24.2 kB
view hashes)