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
24cda5ab
Commit
24cda5ab
authored
Sep 17, 2015
by
wenjie.zheng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Workflow.py: check script before execute script.
parent
6e611fb7
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
6 additions
and
4 deletions
+6
-4
product/ERP5Workflow/Document/Workflow.py
product/ERP5Workflow/Document/Workflow.py
+6
-4
No files found.
product/ERP5Workflow/Document/Workflow.py
View file @
24cda5ab
...
@@ -615,13 +615,15 @@ class Workflow(IdAsReferenceMixin("", "prefix"), XMLObject):
...
@@ -615,13 +615,15 @@ class Workflow(IdAsReferenceMixin("", "prefix"), XMLObject):
before_script_success
=
1
before_script_success
=
1
if
tdef
is
not
None
and
tdef
.
getBeforeScriptId
():
if
tdef
is
not
None
and
tdef
.
getBeforeScriptId
():
script_id
=
tdef
.
getBeforeScriptId
()
script_id
=
tdef
.
getBeforeScriptId
()
if
script_id
:
script
=
self
.
_getOb
(
script_id
,
None
)
script
=
self
.
_getOb
(
script_id
,
None
)
if
script
:
# Pass lots of info to the script in a single parameter.
# Pass lots of info to the script in a single parameter.
if
script
.
getTypeInfo
().
getId
()
==
'Workflow Script'
:
if
script
.
getTypeInfo
().
getId
()
==
'Workflow Script'
:
kwargs
=
form_kw
kwargs
=
form_kw
sci
=
StateChangeInfo
(
sci
=
StateChangeInfo
(
document
,
self
,
former_status
,
tdef
,
old_sdef
,
new_sdef
,
kwargs
)
document
,
self
,
former_status
,
tdef
,
old_sdef
,
new_sdef
,
kwargs
)
else
:
raise
NotImplementedError
(
'Unsupported Script %s for state %s'
%
(
script_id
,
old_sdef
.
getReference
()))
try
:
try
:
script
(
sci
)
# May throw an exception.
script
(
sci
)
# May throw an exception.
except
ValidationFailed
,
validation_exc
:
except
ValidationFailed
,
validation_exc
:
...
@@ -710,14 +712,14 @@ class Workflow(IdAsReferenceMixin("", "prefix"), XMLObject):
...
@@ -710,14 +712,14 @@ class Workflow(IdAsReferenceMixin("", "prefix"), XMLObject):
# Execute the "after" script.
# Execute the "after" script.
if
tdef
is
not
None
:
if
tdef
is
not
None
:
script_id
=
getattr
(
tdef
,
'getAfterScriptId'
)()
script_id
=
getattr
(
tdef
,
'getAfterScriptId'
)()
if
script_id
is
not
None
:
script
=
self
.
_getOb
(
script_id
,
None
)
if
script
:
kwargs
=
form_kw
kwargs
=
form_kw
# Script can be either script or workflow method
# Script can be either script or workflow method
if
script_id
in
old_sdef
.
getDestinationIdList
()
and
\
if
script_id
in
old_sdef
.
getDestinationIdList
()
and
\
self
.
_getOb
(
script_id
).
trigger_type
==
TRIGGER_WORKFLOW_METHOD
:
self
.
_getOb
(
script_id
).
trigger_type
==
TRIGGER_WORKFLOW_METHOD
:
getattr
(
document
,
convertToMixedCase
(
self
.
_getOb
(
script_id
).
getReference
()))()
getattr
(
document
,
convertToMixedCase
(
self
.
_getOb
(
script_id
).
getReference
()))()
else
:
else
:
script
=
self
.
_getOb
(
script_id
)
# Pass lots of info to the script in a single parameter.
# Pass lots of info to the script in a single parameter.
if
script
.
getTypeInfo
().
getId
()
==
'Workflow Script'
:
if
script
.
getTypeInfo
().
getId
()
==
'Workflow Script'
:
sci
=
StateChangeInfo
(
sci
=
StateChangeInfo
(
...
...
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