Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
E
erp5_workflow
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wenjie.zheng
erp5_workflow
Commits
af9d37e2
Commit
af9d37e2
authored
Nov 24, 2015
by
wenjie.zheng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
WorkflowTool.py: add reassignWorkflowWithoutConversion.
parent
bf9cc762
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
0 deletions
+24
-0
product/ERP5/Tool/WorkflowTool.py
product/ERP5/Tool/WorkflowTool.py
+24
-0
No files found.
product/ERP5/Tool/WorkflowTool.py
View file @
af9d37e2
...
...
@@ -577,6 +577,30 @@ class WorkflowTool(BaseTool, OriginalWorkflowTool):
if
workflow_id
not
in
ptype
.
getTypeWorkflowList
():
ptype
.
addTypeWorkflowList
(
workflow_id
)
def
reassignWorkflowWithoutConversion
(
self
):
# This function should be called when a new template installed and add
# portal_types assignment with converted workflows in to _chain_by_type.
# This function only synchronize assignment information to new added portal
# type's TypeWorkflowList.
# To trigger this function, go to portal_workflow and choose "convert DCWorkflow"
# in the action list. Reassignment happens in the background. Nothing need to
# be done, just go back to whatever you are doing.
type_workflow_dict
=
self
.
getChainsByType
()
for
ptype_id
in
type_workflow_dict
:
ptype
=
getattr
(
context
.
getPortalObject
().
portal_types
,
ptype_id
,
None
)
if
ptype
is
not
None
:
for
workflow_id
in
type_workflow_dict
[
ptype_id
]:
workflow
=
getattr
(
self
,
workflow_id
,
None
)
if
workflow
and
workflow
.
getPortalType
()
in
[
'Workflow'
,
'Interaction Workflow'
]:
# 1. clean DC workflow assignement:
self
.
delTypeCBT
(
ptype
.
id
,
workflow
.
id
)
# 2. assign ERP5 Workflow to portal type:
type_workflow_list
=
ptype
.
getTypeWorkflowList
()
if
workflow_id
not
in
type_workflow_list
:
ptype
.
addTypeWorkflowList
(
workflow_id
)
def
getChainDict
(
self
):
chain_dict
=
{}
for
portal_type
,
wf_id_list
in
self
.
_chains_by_type
.
iteritems
():
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment