diff --git a/addons/event_sale/static/src/js/event_configurator_widget.js b/addons/event_sale/static/src/js/event_configurator_widget.js
index 469bf489f6c..ee63327073e 100644
--- a/addons/event_sale/static/src/js/event_configurator_widget.js
+++ b/addons/event_sale/static/src/js/event_configurator_widget.js
@@ -74,7 +74,7 @@ ProductConfiguratorWidget.include({
* @override
* @private
*/
- _onEditProductConfiguration: function () {
+ _onEditLineConfiguration: function () {
if (this.recordData.event_ok) {
var defaultValues = {
default_product_id: this.recordData.product_id.data.id
@@ -117,11 +117,10 @@ ProductConfiguratorWidget.include({
self.trigger_up('field_changed', {
dataPointID: dataPointId,
changes: result.eventConfiguration,
- // VFE NOTE : Do we unselect the row after event config?
- // event_sale tour is made to work without unselectRow
- /*onSuccess: function (){
- self.getParent().unselectRow();
- }*/
+ onSuccess: function () {
+ // Call post-init function.
+ self._onLineConfigured();
+ }
});
} else {
if (!self.recordData.event_id || !self.recordData.event_ticket_id) {
diff --git a/addons/event_sale/views/sale_order_views.xml b/addons/event_sale/views/sale_order_views.xml
index ae50fdbd75b..2ec78e4747e 100644
--- a/addons/event_sale/views/sale_order_views.xml
+++ b/addons/event_sale/views/sale_order_views.xml
@@ -30,9 +30,6 @@
/>
-
- {'no_open': True}
-
diff --git a/addons/sale/static/src/js/product_configurator_widget.js b/addons/sale/static/src/js/product_configurator_widget.js
index 34721b9b17e..78e79cf74f0 100644
--- a/addons/sale/static/src/js/product_configurator_widget.js
+++ b/addons/sale/static/src/js/product_configurator_widget.js
@@ -17,7 +17,7 @@ var _t = core._t;
*/
var ProductConfiguratorWidget = relationalFields.FieldMany2One.extend({
events: _.extend({}, relationalFields.FieldMany2One.prototype.events, {
- 'click .o_edit_product_configuration': '_onEditProductConfiguration'
+ 'click .o_edit_product_configuration': '_onEditConfiguration'
}),
/**
@@ -26,13 +26,35 @@ var ProductConfiguratorWidget = relationalFields.FieldMany2One.extend({
_render: function () {
this._super.apply(this, arguments);
if (this.mode === 'edit' && this.value &&
- (this._isConfigurableProduct() || this._isConfigurableLine())) {
- this._addConfigurationEditButton();
+ (this._isConfigurableProduct() || this._isConfigurableLine())) {
+ this._addProductLinkButton();
+ this._addConfigurationEditButton();
+ } else if (this.mode === 'edit' && this.value) {
+ this._addProductLinkButton();
} else {
this.$('.o_edit_product_configuration').hide();
}
},
+ /**
+ * Add button linking to product_id/product_template_id form.
+ */
+ _addProductLinkButton: function () {
+ if (this.$('.o_external_button').length === 0) {
+ var $productLinkButton = $('