diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_doVcsCommit.py b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_doVcsCommit.py
index b3d8af37e4f5214dcfc75fd2feee56354460eb72..6315ddeb9d85f916e8ece4695471c4ba43a55539 100644
--- a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_doVcsCommit.py
+++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_doVcsCommit.py
@@ -1,3 +1,4 @@
+from Products.ERP5Type.Log import log
kw = {}
request = container.REQUEST
for k in 'added', 'modified', 'removed':
@@ -17,7 +18,11 @@ if not changelog.strip():
'&portal_status_message=Commit%20cancelled.')
return context.asContext(**kw).BusinessTemplate_viewVcsChangelog()
+version_up_submodule = request.get('version_up', False)
try:
return context.getVcsTool().commit(changelog, **kw)
+ if version_up_submodule:
+ # Use interaction workflow in this case rather than trying imperative way
+ log("Check if we reach this point, it should be reachable by default")
except Exception, error:
return context.BusinessTemplate_handleException(error, script.id)
diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_viewVcsChangelog.xml b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_viewVcsChangelog.xml
index 7a91bc1aa794f5f7f1556a4e2e679172bda722c6..510df72fed9a8327e6011f3609a5aab0a981897c 100644
--- a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_viewVcsChangelog.xml
+++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_viewVcsChangelog.xml
@@ -72,6 +72,7 @@
your_push
+ your_version_up
your_changelog
reminder
added_files
diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_viewVcsChangelog/your_version_up_submodule.xml b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_viewVcsChangelog/your_version_up_submodule.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c653820316558571c44053a007af76cffb506a8b
--- /dev/null
+++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/BusinessTemplate_viewVcsChangelog/your_version_up_submodule.xml
@@ -0,0 +1,157 @@
+
+
+
+
+
+
+
+
+ -
+ delegated_list
+
+
+ default
+ description
+ enabled
+ title
+
+
+
+ -
+ id
+ your_version_up_submodule
+
+ -
+ message_values
+
+
+
-
+ external_validator_failed
+ The input failed the external validator.
+
+
+
+
+ -
+ overrides
+
+
+
-
+ field_id
+
+
+ -
+ form_id
+
+
+ -
+ target
+
+
+
+
+
+ -
+ tales
+
+
+
-
+ default
+
+ AAAAAAAAAAI=
+
+
+ -
+ description
+
+
+ -
+ enabled
+
+ AAAAAAAAAAM=
+
+
+ -
+ field_id
+
+
+ -
+ form_id
+
+
+ -
+ target
+
+
+ -
+ title
+
+
+
+
+
+ -
+ values
+
+
+
-
+ default
+ 1
+
+ -
+ description
+ This will add an extra commit to the regarding the version up of the submodule in the parent ERP5 repository.
+
+ -
+ enabled
+ 1
+
+ -
+ field_id
+ your_checkbox
+
+ -
+ form_id
+ Base_viewFieldLibrary
+
+ -
+ target
+ Click to edit the target
+
+ -
+ title
+ Version Up Submodule Commit
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+ _text
+ python: preferences.getPreferredVersionUpSubmodule() and not here.getVcsTool().getAheadCount()
+
+
+
+
+
+
+
+
+
+
+ -
+ _text
+ python: here.getVcsTool().reference != \'svn\'
+
+
+
+
+
diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/Preference_viewVcs.xml b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/Preference_viewVcs.xml
index bd9d9160bb5bb8251a0e8584f1d04c0d2118dd0b..0588986d7a598710631fb49be4e5791563aaa479 100644
--- a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/Preference_viewVcs.xml
+++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/Preference_viewVcs.xml
@@ -76,6 +76,7 @@
my_preferred_subversion_user_name
my_preferred_working_copy_list
my_preferred_vcs_push_mode
+ my_preferred_version_up_submodule
diff --git a/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/Preference_viewVcs/my_preferred_version_up_submodule.xml b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/Preference_viewVcs/my_preferred_version_up_submodule.xml
new file mode 100644
index 0000000000000000000000000000000000000000..769c8ef5192834b1eeb2c9f51a001dfc6d65374e
--- /dev/null
+++ b/bt5/erp5_forge/SkinTemplateItem/portal_skins/erp5_vcs/Preference_viewVcs/my_preferred_version_up_submodule.xml
@@ -0,0 +1,96 @@
+
+
+
+
+
+
+
+
+ -
+ delegated_list
+
+
+ title
+
+
+
+ -
+ id
+ my_preferred_version_up_submodule
+
+ -
+ message_values
+
+
+
-
+ external_validator_failed
+ The input failed the external validator.
+
+
+
+
+ -
+ overrides
+
+
+
-
+ field_id
+
+
+ -
+ form_id
+
+
+ -
+ target
+
+
+
+
+
+ -
+ tales
+
+
+
-
+ field_id
+
+
+ -
+ form_id
+
+
+ -
+ target
+
+
+
+
+
+ -
+ values
+
+
+
-
+ field_id
+ my_checkbox
+
+ -
+ form_id
+ Base_viewFieldLibrary
+
+ -
+ target
+ Click to edit the target
+
+ -
+ title
+ Version Up Submodule Commit
+
+
+
+
+
+
+
+
diff --git a/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow.xml b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow.xml
new file mode 100644
index 0000000000000000000000000000000000000000..13ba7eb13f339b09fe015c9be7d5cc6da2ac0842
--- /dev/null
+++ b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow.xml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+
+ -
+ _objects
+
+
+
+
+ -
+ creation_guard
+
+
+
+
+ -
+ description
+
+
+ -
+ groups
+
+
+
+
+ -
+ id
+ business_template_commit_interaction_workflow
+
+ -
+ manager_bypass
+ 0
+
+ -
+ title
+ Business Template Commit Interaction Workflow
+
+
+
+
+
diff --git a/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/interactions.xml b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/interactions.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e18bf8cbf778a6808aa24ec39bba4b527d7b1bef
--- /dev/null
+++ b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/interactions.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+ -
+ _mapping
+
+
+
+
+ -
+ _objects
+
+
+
+
+ -
+ id
+ interactions
+
+
+
+
+
diff --git a/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/interactions/BusinessTemplate_createVersionUpCommit.xml b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/interactions/BusinessTemplate_createVersionUpCommit.xml
new file mode 100644
index 0000000000000000000000000000000000000000..f3fdc40999a7c8bc6e6750fa5a7a59d0eebac481
--- /dev/null
+++ b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/interactions/BusinessTemplate_createVersionUpCommit.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+ -
+ id
+ BusinessTemplate_createVersionUpCommit
+
+
+
+
+
diff --git a/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/scripts.xml b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/scripts.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a703b14c4ca0bde0a51a531783d85f8be1ccd853
--- /dev/null
+++ b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/scripts.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+ -
+ _mapping
+
+
+
+
+ -
+ id
+ scripts
+
+
+
+
+
diff --git a/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/variables.xml b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/variables.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6ae03699d19840ac42b097dfc0a5f34edd416170
--- /dev/null
+++ b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/variables.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+ -
+ _mapping
+
+
+
+
+ -
+ id
+ variables
+
+
+
+
+
diff --git a/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/worklists.xml b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/worklists.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c3432aa051eac2d67ec0692a384adb38d1b6bac8
--- /dev/null
+++ b/bt5/erp5_forge/WorkflowTemplateItem/portal_workflow/business_template_commit_interaction_workflow/worklists.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+ -
+ _mapping
+
+
+
+
+ -
+ id
+ worklists
+
+
+
+
+
diff --git a/bt5/erp5_forge/bt/template_workflow_id_list b/bt5/erp5_forge/bt/template_workflow_id_list
index ac7f0b4ffd844f9c1feee1e4282f028b4721c56c..662d409352341bc3b0f7226ce4791620b00b3169 100644
--- a/bt5/erp5_forge/bt/template_workflow_id_list
+++ b/bt5/erp5_forge/bt/template_workflow_id_list
@@ -1,2 +1,3 @@
bug_event_workflow
-bug_workflow
\ No newline at end of file
+bug_workflow
+business_template_commit_interaction_workflow
\ No newline at end of file