[Zope-CMF] Implementing CMFStaging
Norfleet, Sheppard S.
SNorfleet2@northropgrumman.com
Thu, 3 Apr 2003 08:21:40 -0800
Looking for tips here from people that have implemented CMFStaging in a
document server. What do you forsee me needed to do implement this kind of
concept site:
View-Content:
IF content is UNDER_VERSION_CONTROL
content=getLastPublishedVersion(content)
view_content(content)
Edit-Content:
IF content is UNDER_VERSION_CONTROL
IF content is CHECKED_OUT
IF user is checkout_user(content)
showEditPage(content)
ELSE show(CONTENT-IS-CHECKED-OUT-MESSAGE)
ELSE show(CHECK-OUT-FIRST-MESSAGE)
ELSE showEditPage(content)
Content-Actions:
ShowAction(VIEW_CONTENT)
IF content is UNDER_VERSION_CONTROL
showAction(VERSION_HISTORY)
IF content is CHECKED_OUT
IF current_user=checkout_user(content)
showAction(EDIT_CONTENT)
showAction(CHECK_IN)
ELSE
showAction(CHECKED_OUT_USER)
ELIF showAction(CHECK_OUT)
ELSE
ShowAction(USE_VERSION_CONTROL);
ShowAction(EDIT_CONTENT);
Assume appropriate security steps in the pseudo-code above. My needs see
workflow as being separate from the version control process but aware
inasmuch as the workflow deals not with the content monolithically but with
a particular version of the content.
Example: I have a site with a controlled document published at version 2.5.
The documents private state may be at version 3.0 but it has not been
submitted through the workflow process yet.
Now my final questions are: Is this concept site attainable with CMF
Staging? AND what do I need to do to accomplish with CMF Staging? In
otherwords, what do I need to know how to do in order to fill in the gaps.
I am comfortable with python, but still relatively unfamiliar with CMF's
internal structure.
Thanks for any help
Shep