check-out/check-in staging for Plone
Project description
-------
iterate
-------
:Author: Kapil Thangavelu
:Version: $Revision:$
:Copyright: ObjectRealms, LLC (c) Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Summary
-------
iterate is a plone product that allows one to utilize a checkin / checkout procedure
for content editing. It integrates in versioning, locking, and utilizes zope3 technology like
adapters and events to allow for easy customization.
Features
--------
- versioning utilizing cmf editions
- locking using zope dav locks
- pluggable behavior for policies via adapters
- observable behavior via events
- specialized handling for archetypes references
- simple, clean integration with the plone user interface
Use Cases
---------
iterate was designed to solve/enable the following use cases.
Collaborative Document Editing Scenario
=======================================
Workgroup or person working on a document, the ability to checkout and lock a document
allows for a editing cycle, without concern of overwrites, and with an audit trail of
versions.
Publish/Modify/Review Cycles on a CMS
=====================================
A common theme in content management, is publishing a web document, and then needing
to revise it but not to change the published web content, till the modified document
has undergone a review cycle.
Iterate Lifecycle via the User Interface
----------------------------------------
iterate integrates with the plone user interface mainly through the actions menu.
it adds three conditional actions to the menu.. checkout, checkin, and cancel checkout.
checkout form
=============
on this form a user is asked to which location they wish to checkout
the current content, the vocabulary of checkouts is overridable via template
customization and is currently the current folder, and the user's home
folder. if the content is not yet versioned, versioning is applied and
a new version is created before the checkout is performed. an adapter
is utilized to perform the checkout mechanics and an object lifecycle
event is generated with the baseline ( origin ) and checkout as
attributes. the adapter is responsible for effecting a copy of the
content to the checkout location and taking a lock on the origin content.
whether this form and action are active on a given piece of content
depends on the iterate policy adapter found for this content.
checkouts have some system additional properties, versioning and workflow.
they can be versioned independently of the baseline, with only changes
from the latest version being merged into the baseline on
checkin. they can undergoe separate workflows different from the
baseline content. (this last feature requires some customization see
docs/workflow.rst ).
checkout status form
====================
visually checkouts are distinguished by an extra document icon (next
to sendto, and rss links). clicking on this icon will lead to a
checkout status page. which allows for looking at information
regarding the checkout itself, such as when the checkout was
performed and by whom.
checkin form
============
a user is asked for a checkin message. on checkin the working copy is
merged into the baseline, and a new version of the baseline is
created, and the baseline is unlocked.
cancel checkout
===============
a confirmation dialog is displayed, if the checkout is canceled the
working copy is destroyed, and the baseline is unlocked.
Installation
------------
see docs/install.txt
Configuration and Design
------------------------
see docs/developers.txt
Development
-----------
project home page
http://plone.org/products/iterate
mailing list
svn repository
https://svn.objectrealms.net/svn/public/iterate
issue tracker
http://plone.org/products/iterate
Credits
-------
Kapil Thangavelu <hazmat@objectrealms.net>
Benjamin Saller <bcsaller@objectrealms.net>
icons from tortoisesvn project ( http://tigris.org )
License
-------
GPL, see license.txt for details
Changelog
---------
1.2.2 (November 13th 2008)
~~~~~~~~~~~~~~~~~~~~~~~~~~
* Fix action coniditions for the nth time; this time it's an
over-ambitious "Cancel check-out" permission. This fixes
http://dev.plone.org/plone/ticket/8735
[nouri]
1.2.1 (November 11th 2008)
~~~~~~~~~~~~~~~~~~~~~~~~~~
* Refine permissions fix from 1.2.0 and make tests pass again:
- Don't require Modify Portal Content (MPC) permission on the
original to check out, which was omitted in the fix for 1.2.0.
- Don't require MPC on the original for cancelling of checkout, only
require it on the working copy.
[nouri]
* Fix missing internationnalization (#8608 thanks to Vincent Fretin)
[encolpe]
1.2.0 (October 24th 2008)
~~~~~~~~~~~~~~~~~~~~~~~~~
* Allow users without modify content permissions (but with the iterate
check out permission) to check out items, and only allow them to
check in back again only when they have modify content permissions.
[nouri]
1.1.5 (August 18th 2008)
~~~~~~~~~~~~~~~~~~~~~~~~
* Fixed typo in subscribers/workflow.py. This fixes
https://dev.plone.org/plone/ticket/8035.
[dunlapm]
* Added i18n of status messages. This fixes part of
http://dev.plone.org/plone/ticket/8022.
[naro]
1.1.0 (April 20th 2008)
~~~~~~~~~~~~~~~~~~~~~~~
* Fixed dodgy test in test_iterate.py that was dependent on semantics of
default workflow.
[optilude]
* Fixed i18n markup and updated some messages. This closes
http://dev.plone.org/plone/ticket/7958.
[hannosch]
* Updated i18n:domain in templates to the plone domain. There's no need for a
iterate domain.
[hannosch]
* Use README.txt and HISTORY.txt for the package's long description.
[wichert]
* Remove unneeded intialize method from __init__
[wichert]
1.0
~~~
* First release
iterate
-------
:Author: Kapil Thangavelu
:Version: $Revision:$
:Copyright: ObjectRealms, LLC (c) Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License
Summary
-------
iterate is a plone product that allows one to utilize a checkin / checkout procedure
for content editing. It integrates in versioning, locking, and utilizes zope3 technology like
adapters and events to allow for easy customization.
Features
--------
- versioning utilizing cmf editions
- locking using zope dav locks
- pluggable behavior for policies via adapters
- observable behavior via events
- specialized handling for archetypes references
- simple, clean integration with the plone user interface
Use Cases
---------
iterate was designed to solve/enable the following use cases.
Collaborative Document Editing Scenario
=======================================
Workgroup or person working on a document, the ability to checkout and lock a document
allows for a editing cycle, without concern of overwrites, and with an audit trail of
versions.
Publish/Modify/Review Cycles on a CMS
=====================================
A common theme in content management, is publishing a web document, and then needing
to revise it but not to change the published web content, till the modified document
has undergone a review cycle.
Iterate Lifecycle via the User Interface
----------------------------------------
iterate integrates with the plone user interface mainly through the actions menu.
it adds three conditional actions to the menu.. checkout, checkin, and cancel checkout.
checkout form
=============
on this form a user is asked to which location they wish to checkout
the current content, the vocabulary of checkouts is overridable via template
customization and is currently the current folder, and the user's home
folder. if the content is not yet versioned, versioning is applied and
a new version is created before the checkout is performed. an adapter
is utilized to perform the checkout mechanics and an object lifecycle
event is generated with the baseline ( origin ) and checkout as
attributes. the adapter is responsible for effecting a copy of the
content to the checkout location and taking a lock on the origin content.
whether this form and action are active on a given piece of content
depends on the iterate policy adapter found for this content.
checkouts have some system additional properties, versioning and workflow.
they can be versioned independently of the baseline, with only changes
from the latest version being merged into the baseline on
checkin. they can undergoe separate workflows different from the
baseline content. (this last feature requires some customization see
docs/workflow.rst ).
checkout status form
====================
visually checkouts are distinguished by an extra document icon (next
to sendto, and rss links). clicking on this icon will lead to a
checkout status page. which allows for looking at information
regarding the checkout itself, such as when the checkout was
performed and by whom.
checkin form
============
a user is asked for a checkin message. on checkin the working copy is
merged into the baseline, and a new version of the baseline is
created, and the baseline is unlocked.
cancel checkout
===============
a confirmation dialog is displayed, if the checkout is canceled the
working copy is destroyed, and the baseline is unlocked.
Installation
------------
see docs/install.txt
Configuration and Design
------------------------
see docs/developers.txt
Development
-----------
project home page
http://plone.org/products/iterate
mailing list
svn repository
https://svn.objectrealms.net/svn/public/iterate
issue tracker
http://plone.org/products/iterate
Credits
-------
Kapil Thangavelu <hazmat@objectrealms.net>
Benjamin Saller <bcsaller@objectrealms.net>
icons from tortoisesvn project ( http://tigris.org )
License
-------
GPL, see license.txt for details
Changelog
---------
1.2.2 (November 13th 2008)
~~~~~~~~~~~~~~~~~~~~~~~~~~
* Fix action coniditions for the nth time; this time it's an
over-ambitious "Cancel check-out" permission. This fixes
http://dev.plone.org/plone/ticket/8735
[nouri]
1.2.1 (November 11th 2008)
~~~~~~~~~~~~~~~~~~~~~~~~~~
* Refine permissions fix from 1.2.0 and make tests pass again:
- Don't require Modify Portal Content (MPC) permission on the
original to check out, which was omitted in the fix for 1.2.0.
- Don't require MPC on the original for cancelling of checkout, only
require it on the working copy.
[nouri]
* Fix missing internationnalization (#8608 thanks to Vincent Fretin)
[encolpe]
1.2.0 (October 24th 2008)
~~~~~~~~~~~~~~~~~~~~~~~~~
* Allow users without modify content permissions (but with the iterate
check out permission) to check out items, and only allow them to
check in back again only when they have modify content permissions.
[nouri]
1.1.5 (August 18th 2008)
~~~~~~~~~~~~~~~~~~~~~~~~
* Fixed typo in subscribers/workflow.py. This fixes
https://dev.plone.org/plone/ticket/8035.
[dunlapm]
* Added i18n of status messages. This fixes part of
http://dev.plone.org/plone/ticket/8022.
[naro]
1.1.0 (April 20th 2008)
~~~~~~~~~~~~~~~~~~~~~~~
* Fixed dodgy test in test_iterate.py that was dependent on semantics of
default workflow.
[optilude]
* Fixed i18n markup and updated some messages. This closes
http://dev.plone.org/plone/ticket/7958.
[hannosch]
* Updated i18n:domain in templates to the plone domain. There's no need for a
iterate domain.
[hannosch]
* Use README.txt and HISTORY.txt for the package's long description.
[wichert]
* Remove unneeded intialize method from __init__
[wichert]
1.0
~~~
* First 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.iterate-1.2.2.tar.gz
(40.3 kB
view hashes)