diff --git a/setup/web_widget_one2many_product_picker_sale_stock/odoo/addons/web_widget_one2many_product_picker_sale_stock b/setup/web_widget_one2many_product_picker_sale_stock/odoo/addons/web_widget_one2many_product_picker_sale_stock
new file mode 120000
index 000000000..19bc00420
--- /dev/null
+++ b/setup/web_widget_one2many_product_picker_sale_stock/odoo/addons/web_widget_one2many_product_picker_sale_stock
@@ -0,0 +1 @@
+../../../../web_widget_one2many_product_picker_sale_stock
\ No newline at end of file
diff --git a/setup/web_widget_one2many_product_picker_sale_stock/setup.py b/setup/web_widget_one2many_product_picker_sale_stock/setup.py
new file mode 100644
index 000000000..28c57bb64
--- /dev/null
+++ b/setup/web_widget_one2many_product_picker_sale_stock/setup.py
@@ -0,0 +1,6 @@
+import setuptools
+
+setuptools.setup(
+ setup_requires=['setuptools-odoo'],
+ odoo_addon=True,
+)
diff --git a/web_widget_one2many_product_picker_sale_stock/__manifest__.py b/web_widget_one2many_product_picker_sale_stock/__manifest__.py
index 3066b8ecf..f8255ffa1 100644
--- a/web_widget_one2many_product_picker_sale_stock/__manifest__.py
+++ b/web_widget_one2many_product_picker_sale_stock/__manifest__.py
@@ -2,24 +2,16 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
{
- 'name': 'Web Widget One2Many Product Picker Sale Stock',
- 'summary': 'Adds support for stock in the one2many product picker widget',
- 'version': '12.0.1.0.0',
- 'category': 'Website',
- 'author': "Tecnativa, "
- "Odoo Community Association (OCA)",
- 'website': 'https://www.tecnativa.com',
- 'license': 'AGPL-3',
- 'depends': [
- 'web_widget_one2many_product_picker',
- 'sale_stock_info_popup',
- ],
- 'data': [
- 'templates/assets.xml',
- ],
- 'qweb': [
- 'static/src/xml/one2many_product_picker.xml',
- ],
- 'installable': True,
- 'auto_install': False,
+ "name": "Web Widget One2Many Product Picker Sale Stock",
+ "summary": "Adds support for stock in the one2many product picker widget",
+ "version": "12.0.1.0.0",
+ "category": "Website",
+ "author": "Tecnativa, " "Odoo Community Association (OCA)",
+ "website": "https://www.tecnativa.com",
+ "license": "AGPL-3",
+ "depends": ["web_widget_one2many_product_picker", "sale_stock_info_popup",],
+ "data": ["templates/assets.xml",],
+ "qweb": ["static/src/xml/one2many_product_picker.xml",],
+ "installable": True,
+ "auto_install": False,
}
diff --git a/web_widget_one2many_product_picker_sale_stock/static/src/js/views/One2ManyProductPicker/record.js b/web_widget_one2many_product_picker_sale_stock/static/src/js/views/One2ManyProductPicker/record.js
index 52521066d..f855fbf42 100644
--- a/web_widget_one2many_product_picker_sale_stock/static/src/js/views/One2ManyProductPicker/record.js
+++ b/web_widget_one2many_product_picker_sale_stock/static/src/js/views/One2ManyProductPicker/record.js
@@ -1,21 +1,21 @@
// Copyright 2020 Tecnativa - Alexandre Díaz
// License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
-odoo.define("web_widget_one2many_product_picker_sale_stock.One2ManyProductPickerRecord", function (
- require
-) {
- "use strict";
+odoo.define(
+ "web_widget_one2many_product_picker_sale_stock.One2ManyProductPickerRecord",
+ function(require) {
+ "use strict";
- var One2ManyProductPickerRecord = require(
- "web_widget_one2many_product_picker.One2ManyProductPickerRecord");
+ var One2ManyProductPickerRecord = require("web_widget_one2many_product_picker.One2ManyProductPickerRecord");
- One2ManyProductPickerRecord.include({
- /**
- * @override
- */
- _getQWebContext: function () {
- var qweb_context = this._super.apply(this, arguments);
- qweb_context["show_sale_stock"] = this.options.showSaleStock;
- return qweb_context;
- },
- });
-});
+ One2ManyProductPickerRecord.include({
+ /**
+ * @override
+ */
+ _getQWebContext: function() {
+ var qweb_context = this._super.apply(this, arguments);
+ qweb_context.show_sale_stock = this.options.showSaleStock;
+ return qweb_context;
+ },
+ });
+ }
+);
diff --git a/web_widget_one2many_product_picker_sale_stock/static/src/js/views/One2ManyProductPicker/renderer.js b/web_widget_one2many_product_picker_sale_stock/static/src/js/views/One2ManyProductPicker/renderer.js
index bd03bfec0..44726bab7 100644
--- a/web_widget_one2many_product_picker_sale_stock/static/src/js/views/One2ManyProductPicker/renderer.js
+++ b/web_widget_one2many_product_picker_sale_stock/static/src/js/views/One2ManyProductPicker/renderer.js
@@ -1,18 +1,21 @@
// Copyright 2020 Tecnativa - Alexandre Díaz
// License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
-odoo.define("web_widget_one2many_product_picker_sale_stock.One2ManyProductPickerRenderer", function (require) {
- "use strict";
+odoo.define(
+ "web_widget_one2many_product_picker_sale_stock.One2ManyProductPickerRenderer",
+ function(require) {
+ "use strict";
- var One2ManyProductPickerRenderer = require("web_widget_one2many_product_picker.One2ManyProductPickerRenderer");
+ var One2ManyProductPickerRenderer = require("web_widget_one2many_product_picker.One2ManyProductPickerRenderer");
- One2ManyProductPickerRenderer.include({
- /**
- * @override
- */
- _getRecordOptions: function (search_record) {
- var options = this._super.apply(this, arguments);
- options["showSaleStock"] = this.options.show_sale_stock;
- return options
- },
- });
-});
+ One2ManyProductPickerRenderer.include({
+ /**
+ * @override
+ */
+ _getRecordOptions: function(search_record) {
+ var options = this._super.apply(this, arguments);
+ options.showSaleStock = this.options.show_sale_stock;
+ return options;
+ },
+ });
+ }
+);
diff --git a/web_widget_one2many_product_picker_sale_stock/static/src/js/views/abstract_view.js b/web_widget_one2many_product_picker_sale_stock/static/src/js/views/abstract_view.js
index ad410cabd..a30d86a57 100644
--- a/web_widget_one2many_product_picker_sale_stock/static/src/js/views/abstract_view.js
+++ b/web_widget_one2many_product_picker_sale_stock/static/src/js/views/abstract_view.js
@@ -1,6 +1,8 @@
// Copyright 2020 Tecnativa - Alexandre Díaz
// License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
-odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", function (require) {
+odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", function(
+ require
+) {
"use strict";
var AbstractView = require("web.AbstractView");
@@ -13,17 +15,20 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
* @returns {Object}
*/
function _constructFakeFieldDef(params) {
- return _.extend({
- change_default: false,
- company_dependent: false,
- manual: false,
- views: {},
- searchable: true,
- store: false,
- readonly: true,
- required: false,
- sortable: false,
- }, params);
+ return _.extend(
+ {
+ change_default: false,
+ company_dependent: false,
+ manual: false,
+ views: {},
+ searchable: true,
+ store: false,
+ readonly: true,
+ required: false,
+ sortable: false,
+ },
+ params
+ );
}
/**
@@ -33,9 +38,11 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
/**
* @override
*/
- init: function (viewInfo, params) {
- if (viewInfo.model === 'sale.order') {
- var widget_name = $(viewInfo.arch).find("field[name='order_line']").attr("widget");
+ init: function(viewInfo, params) {
+ if (viewInfo.model === "sale.order") {
+ var widget_name = $(viewInfo.arch)
+ .find("field[name='order_line']")
+ .attr("widget");
if (widget_name === "one2many_product_picker") {
this._injectSaleStockFields(viewInfo);
}
@@ -48,7 +55,7 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
* @private
* @param {Object} viewInfo
*/
- _injectSaleStockFields: function (viewInfo) {
+ _injectSaleStockFields: function(viewInfo) {
var to_inject = {
product_type: _constructFakeFieldDef({
depends: ["product_id.type"],
@@ -61,7 +68,7 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
"customer_lead",
"product_uom_qty",
"order_id.warehouse_id",
- "order_id.commitment_date"
+ "order_id.commitment_date",
],
type: "float",
}),
@@ -71,7 +78,7 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
"customer_lead",
"product_uom_qty",
"order_id.warehouse_id",
- "order_id.commitment_date"
+ "order_id.commitment_date",
],
type: "float",
}),
@@ -81,7 +88,7 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
"customer_lead",
"product_uom_qty",
"order_id.warehouse_id",
- "order_id.commitment_date"
+ "order_id.commitment_date",
],
type: "float",
}),
@@ -91,7 +98,7 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
"customer_lead",
"product_uom_qty",
"order_id.warehouse_id",
- "order_id.commitment_date"
+ "order_id.commitment_date",
],
type: "datetime",
}),
@@ -100,7 +107,7 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
"product_id",
"product_uom_qty",
"qty_delivered",
- "state"
+ "state",
],
relation: "stock.warehouse",
type: "many2one",
@@ -111,7 +118,7 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
"customer_lead",
"product_uom_qty",
"order_id.warehouse_id",
- "order_id.commitment_date"
+ "order_id.commitment_date",
],
group_operator: "sum",
type: "float",
@@ -121,7 +128,7 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
"product_id",
"route_id",
"order_id.warehouse_id",
- "product_id.route_ids"
+ "product_id.route_ids",
],
type: "boolean",
}),
@@ -130,30 +137,32 @@ odoo.define("web_widget_one2many_product_picker_sale_stock.AbstractView", functi
"product_id",
"product_uom_qty",
"qty_delivered",
- "state"
+ "state",
],
type: "boolean",
}),
};
- viewInfo.viewFields.order_line.views.form.fields =
- _.extend({}, to_inject, viewInfo.viewFields.order_line.views.form.fields);
+ viewInfo.viewFields.order_line.views.form.fields = _.extend(
+ {},
+ to_inject,
+ viewInfo.viewFields.order_line.views.form.fields
+ );
// Add fields to arch
var field_names = Object.keys(to_inject);
var $arch = $(viewInfo.viewFields.order_line.views.form.arch);
for (var index in field_names) {
var field_name = field_names[index];
- var $field = $arch.find("field[name='"+field_name+"']");
+ var $field = $arch.find("field[name='" + field_name + "']");
if (!$field.length) {
$("", {
name: field_name,
invisible: 1,
- modifiers: "{\"invisible\": true}",
+ modifiers: '{"invisible": true}',
}).appendTo($arch);
}
}
viewInfo.viewFields.order_line.views.form.arch = $arch[0].outerHTML;
- }
+ },
});
-
});
diff --git a/web_widget_one2many_product_picker_sale_stock/static/src/js/widgets/field_one2many_product_picker.js b/web_widget_one2many_product_picker_sale_stock/static/src/js/widgets/field_one2many_product_picker.js
index f1755dca6..47499622a 100644
--- a/web_widget_one2many_product_picker_sale_stock/static/src/js/widgets/field_one2many_product_picker.js
+++ b/web_widget_one2many_product_picker_sale_stock/static/src/js/widgets/field_one2many_product_picker.js
@@ -1,20 +1,21 @@
// Copyright 2020 Tecnativa - Alexandre Díaz
// License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
-odoo.define("web_widget_one2many_product_picker_sale_stock.FieldOne2ManyProductPicker", function (
- require
-) {
- "use strict";
+odoo.define(
+ "web_widget_one2many_product_picker_sale_stock.FieldOne2ManyProductPicker",
+ function(require) {
+ "use strict";
- var FieldOne2ManyProductPicker = require("web_widget_one2many_product_picker.FieldOne2ManyProductPicker");
+ var FieldOne2ManyProductPicker = require("web_widget_one2many_product_picker.FieldOne2ManyProductPicker");
- FieldOne2ManyProductPicker.include({
- /**
- * @override
- */
- _getDefaultOptions: function () {
- var defaults = this._super.apply(this, arguments);
- defaults["show_sale_stock"] = false;
- return defaults;
- },
- });
-});
+ FieldOne2ManyProductPicker.include({
+ /**
+ * @override
+ */
+ _getDefaultOptions: function() {
+ var defaults = this._super.apply(this, arguments);
+ defaults.show_sale_stock = false;
+ return defaults;
+ },
+ });
+ }
+);
diff --git a/web_widget_one2many_product_picker_sale_stock/static/src/xml/one2many_product_picker.xml b/web_widget_one2many_product_picker_sale_stock/static/src/xml/one2many_product_picker.xml
index f8ae40950..7546a515d 100644
--- a/web_widget_one2many_product_picker_sale_stock/static/src/xml/one2many_product_picker.xml
+++ b/web_widget_one2many_product_picker_sale_stock/static/src/xml/one2many_product_picker.xml
@@ -1,14 +1,15 @@
-
+
-
-
+
-
+
-
diff --git a/web_widget_one2many_product_picker_sale_stock/templates/assets.xml b/web_widget_one2many_product_picker_sale_stock/templates/assets.xml
index bda3468c8..6c4e8eeca 100644
--- a/web_widget_one2many_product_picker_sale_stock/templates/assets.xml
+++ b/web_widget_one2many_product_picker_sale_stock/templates/assets.xml
@@ -1,10 +1,20 @@
-
+
-
+
-
-
+
+