1 | <?xml version="1.0"?>
|
---|
2 | <cps-workflow workflow_id="workspace_folderish_content_wf"
|
---|
3 | title="CPS Workflow Definition"
|
---|
4 | state_variable="review_state"
|
---|
5 | meta_type="CPS Workflow">
|
---|
6 | <permission>Modify portal content</permission>
|
---|
7 | <permission>View</permission>
|
---|
8 | <permission>WebDAV Lock items</permission>
|
---|
9 | <permission>WebDAV Unlock items</permission>
|
---|
10 | <state state_id="work" title="Work">
|
---|
11 | <exit-transition transition_id="copy_submit"/>
|
---|
12 | <exit-transition transition_id="create_content"/>
|
---|
13 | <exit-transition transition_id="cut_copy_paste"/>
|
---|
14 | <exit-transition transition_id="modify"/>
|
---|
15 | <permission-map name="Modify portal content"
|
---|
16 | acquired="False">
|
---|
17 | <permission-role>Manager</permission-role>
|
---|
18 | <permission-role>WorkspaceManager</permission-role>
|
---|
19 | <permission-role>WorkspaceMember</permission-role>
|
---|
20 | </permission-map>
|
---|
21 | <permission-map name="View" acquired="False">
|
---|
22 | <permission-role>Manager</permission-role>
|
---|
23 | <permission-role>WorkspaceManager</permission-role>
|
---|
24 | <permission-role>WorkspaceMember</permission-role>
|
---|
25 | <permission-role>WorkspaceReader</permission-role>
|
---|
26 | </permission-map>
|
---|
27 | <permission-map name="WebDAV Lock items" acquired="False">
|
---|
28 | <permission-role>Manager</permission-role>
|
---|
29 | <permission-role>WorkspaceManager</permission-role>
|
---|
30 | <permission-role>WorkspaceMember</permission-role>
|
---|
31 | </permission-map>
|
---|
32 | <permission-map name="WebDAV Unlock items"
|
---|
33 | acquired="False">
|
---|
34 | <permission-role>Manager</permission-role>
|
---|
35 | <permission-role>WorkspaceManager</permission-role>
|
---|
36 | <permission-role>WorkspaceMember</permission-role>
|
---|
37 | </permission-map>
|
---|
38 | </state>
|
---|
39 | <transition transition_id="copy_submit"
|
---|
40 | title="Copy content into a section for Publishing"
|
---|
41 | new_state="" trigger="USER" before_script=""
|
---|
42 | after_script="">
|
---|
43 | <action url="%(content_url)s/content_submit_form"
|
---|
44 | category="workflow">action_submit</action>
|
---|
45 | <guard>
|
---|
46 | <guard-role>Manager</guard-role>
|
---|
47 | <guard-role>WorkspaceManager</guard-role>
|
---|
48 | <guard-role>WorkspaceMember</guard-role>
|
---|
49 | </guard>
|
---|
50 | <transition-behavior behavior_id="clone"/>
|
---|
51 | <clone-allowed-transition transition_id="submit"/>
|
---|
52 | <clone-allowed-transition transition_id="publish"/>
|
---|
53 | </transition>
|
---|
54 | <transition transition_id="create" title="Initial creation"
|
---|
55 | new_state="work" trigger="USER"
|
---|
56 | before_script="" after_script="">
|
---|
57 |
|
---|
58 | <guard>
|
---|
59 | <guard-role>Manager</guard-role>
|
---|
60 | <guard-role>WorkspaceManager</guard-role>
|
---|
61 | <guard-role>WorkspaceMember</guard-role>
|
---|
62 | </guard>
|
---|
63 | <transition-behavior behavior_id="initial-create"/>
|
---|
64 | </transition>
|
---|
65 | <transition transition_id="create_content"
|
---|
66 | title="Create content" new_state="work"
|
---|
67 | trigger="USER" before_script="" after_script="">
|
---|
68 |
|
---|
69 | <guard>
|
---|
70 | <guard-role>Manager</guard-role>
|
---|
71 | <guard-role>WorkspaceManager</guard-role>
|
---|
72 | <guard-role>WorkspaceMember</guard-role>
|
---|
73 | </guard>
|
---|
74 | <transition-behavior behavior_id="allow-sub-create"/>
|
---|
75 | <transition-behavior behavior_id="allow-sub-checkout"/>
|
---|
76 | </transition>
|
---|
77 | <transition transition_id="cut_copy_paste"
|
---|
78 | title="Cut/Copy/Paste" new_state=""
|
---|
79 | trigger="USER" before_script="" after_script="">
|
---|
80 |
|
---|
81 | <guard>
|
---|
82 | <guard-role>Manager</guard-role>
|
---|
83 | <guard-role>WorkspaceManager</guard-role>
|
---|
84 | <guard-role>WorkspaceMember</guard-role>
|
---|
85 | </guard>
|
---|
86 | <transition-behavior behavior_id="allow-sub-move"/>
|
---|
87 | <transition-behavior behavior_id="allow-sub-delete"/>
|
---|
88 | <transition-behavior behavior_id="allow-sub-copy"/>
|
---|
89 | </transition>
|
---|
90 | <transition transition_id="modify" title="Edit content"
|
---|
91 | new_state="" trigger="USER" before_script=""
|
---|
92 | after_script="">
|
---|
93 | <description>This transition provides a specific entry in status history</description>
|
---|
94 |
|
---|
95 | <guard>
|
---|
96 | <guard-role>Manager</guard-role>
|
---|
97 | <guard-role>Owner</guard-role>
|
---|
98 | <guard-role>WorkspaceManager</guard-role>
|
---|
99 | <guard-role>WorkspaceMember</guard-role>
|
---|
100 | </guard>
|
---|
101 | </transition>
|
---|
102 | <variable variable_id="action" for_catalog="False"
|
---|
103 | for_status="True" update_always="True">
|
---|
104 | <description>The last transition</description>
|
---|
105 | <default>
|
---|
106 |
|
---|
107 | <expression>transition/getId|nothing</expression>
|
---|
108 | </default>
|
---|
109 | <guard>
|
---|
110 | </guard>
|
---|
111 | </variable>
|
---|
112 | <variable variable_id="actor" for_catalog="False"
|
---|
113 | for_status="True" update_always="True">
|
---|
114 | <description>The ID of the user who performed</description>
|
---|
115 | <default>
|
---|
116 |
|
---|
117 | <expression>user/getId</expression>
|
---|
118 | </default>
|
---|
119 | <guard>
|
---|
120 | </guard>
|
---|
121 | </variable>
|
---|
122 | <variable variable_id="comments" for_catalog="False"
|
---|
123 | for_status="True" update_always="True">
|
---|
124 | <description>Comments about the last transition</description>
|
---|
125 | <default>
|
---|
126 |
|
---|
127 | <expression>python:state_change.kwargs.get('comment', '')</expression>
|
---|
128 | </default>
|
---|
129 | <guard>
|
---|
130 | </guard>
|
---|
131 | </variable>
|
---|
132 | <variable variable_id="dest_container" for_catalog="False"
|
---|
133 | for_status="True" update_always="True">
|
---|
134 | <description>Destination container for the last paste/publish</description>
|
---|
135 | <default>
|
---|
136 |
|
---|
137 | <expression>python:state_change.kwargs.get('dest_container', '')</expression>
|
---|
138 | </default>
|
---|
139 | <guard>
|
---|
140 | </guard>
|
---|
141 | </variable>
|
---|
142 | <variable variable_id="language_revs" for_catalog="False"
|
---|
143 | for_status="True" update_always="True">
|
---|
144 | <description>The language revisions of the proxy</description>
|
---|
145 | <default>
|
---|
146 |
|
---|
147 | <expression>state_change/getLanguageRevisions</expression>
|
---|
148 | </default>
|
---|
149 | <guard>
|
---|
150 | </guard>
|
---|
151 | </variable>
|
---|
152 | <variable variable_id="review_history" for_catalog="False"
|
---|
153 | for_status="False" update_always="False">
|
---|
154 | <description>Provides access to workflow history</description>
|
---|
155 | <default>
|
---|
156 |
|
---|
157 | <expression>state_change/getHistory</expression>
|
---|
158 | </default>
|
---|
159 | <guard>
|
---|
160 | <guard-role>Manager</guard-role>
|
---|
161 | <guard-role>WorkspaceManager</guard-role>
|
---|
162 | <guard-role>WorkspaceMember</guard-role>
|
---|
163 | <guard-role>WorkspaceReader</guard-role>
|
---|
164 | </guard>
|
---|
165 | </variable>
|
---|
166 | <variable variable_id="time" for_catalog="True"
|
---|
167 | for_status="True" update_always="True">
|
---|
168 | <description>Time of the last transition</description>
|
---|
169 | <default>
|
---|
170 |
|
---|
171 | <expression>state_change/getDateTime</expression>
|
---|
172 | </default>
|
---|
173 | <guard>
|
---|
174 | </guard>
|
---|
175 | </variable>
|
---|
176 | </cps-workflow>
|
---|