From 4501eedfc104dc804caffeeae2a9249405b8a883 Mon Sep 17 00:00:00 2001 From: Vincent Vinet Date: Tue, 24 Mar 2015 07:49:29 -0400 Subject: [PATCH 1/8] [ADD] web_widget_datepicker_options * use include instead of extend * add README.rst * update api doc link in readme.rst * remove description from __oe__ since it is in README.rst * add OCA icon and AGPL badges * add datepicker.js through assets_backend --- README.rst | 48 ++++++++++++++++++++++ __init__.py | 21 ++++++++++ __openerp__.py | 36 ++++++++++++++++ static/description/icon.png | Bin 0 -> 9455 bytes static/description/icon.svg | 79 ++++++++++++++++++++++++++++++++++++ static/src/js/datepicker.js | 53 ++++++++++++++++++++++++ view/qweb.xml | 10 +++++ 7 files changed, 247 insertions(+) create mode 100644 README.rst create mode 100644 __init__.py create mode 100644 __openerp__.py create mode 100644 static/description/icon.png create mode 100644 static/description/icon.svg create mode 100644 static/src/js/datepicker.js create mode 100644 view/qweb.xml diff --git a/README.rst b/README.rst new file mode 100644 index 000000000..56dbf0838 --- /dev/null +++ b/README.rst @@ -0,0 +1,48 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :alt: License: AGPL-3 + +Datepicker Widget Options +========================= + +This module allows passing options to the jquery datepicker for fields that use +the datepicker widget. The option are passed as-is and are not validated. + +To see all supported options, see the `API documentation +`_. + + +Usage +===== + +You must pass all options through the "datepicker" field in the options:: + + ... + + ... + +Known issues / Roadmap +====================== + +* Absolutely no validation on options. + +Credits +======= + +Contributors +------------ + +* Vincent Vinet + +Maintainer +---------- + +.. image:: http://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: http://odoo-community.org + +This module is maintained by the OCA. + +OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. + +To contribute to this module, please visit http://odoo-community.org. + diff --git a/__init__.py b/__init__.py new file mode 100644 index 000000000..5daf74683 --- /dev/null +++ b/__init__.py @@ -0,0 +1,21 @@ +# -*- encoding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2015 Savoir-faire Linux +# (). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## diff --git a/__openerp__.py b/__openerp__.py new file mode 100644 index 000000000..4f48932d4 --- /dev/null +++ b/__openerp__.py @@ -0,0 +1,36 @@ +# -*- encoding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2015 Savoir-faire Linux +# (). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## + +{ + "name": 'web_widget_datepicker_options', + "version": "1.0", + "depends": [ + 'base', + 'web', + ], + "data": [ + 'view/qweb.xml', + ], + "author": "Vincent Vinet", + "installable": True, + "active": False, +} diff --git a/static/description/icon.png b/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 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 z 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 Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/static/description/icon.svg b/static/description/icon.svg new file mode 100644 index 000000000..a7a26d093 --- /dev/null +++ b/static/description/icon.svg @@ -0,0 +1,79 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + diff --git a/static/src/js/datepicker.js b/static/src/js/datepicker.js new file mode 100644 index 000000000..304f119b7 --- /dev/null +++ b/static/src/js/datepicker.js @@ -0,0 +1,53 @@ +/* + OpenERP, Open Source Management Solution + This module copyright (C) 2015 Savoir-faire Linux + (). + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ +/*global openerp, _, $ */ + +openerp.web_widget_datepicker_options = function (instance) { + + "use strict"; + + instance.web.form.FieldDatetime.include({ + initialize_content: function() { + this._super(); + var self = this; + if (this.datewidget) { + if (typeof this.options.datepicker === 'object') { + $.map(this.options.datepicker, function(value, key) { + self.datewidget.picker('option', key, value); + }); + } + } + } + }); + + instance.web.form.FieldDate.include({ + initialize_content: function() { + this._super(); + var self = this; + if (this.datewidget) { + if (typeof this.options.datepicker === 'object') { + $.map(this.options.datepicker, function(value, key) { + self.datewidget.picker('option', key, value); + }); + } + } + } + }); +}; + diff --git a/view/qweb.xml b/view/qweb.xml new file mode 100644 index 000000000..9921348dd --- /dev/null +++ b/view/qweb.xml @@ -0,0 +1,10 @@ + + + + + + From 9cc1e4e14763e4377e0382902545f9f6b45206e5 Mon Sep 17 00:00:00 2001 From: Yannick Vaucher Date: Fri, 22 May 2015 19:45:36 +0200 Subject: [PATCH 2/8] Add bug tracker link on README.rst --- README.rst | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/README.rst b/README.rst index 56dbf0838..f21fe3d5a 100644 --- a/README.rst +++ b/README.rst @@ -25,6 +25,16 @@ Known issues / Roadmap * Absolutely no validation on options. + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed feedback +`here `_. + + Credits ======= From 23e753e274f70be118d19eea6b461ff6b24b7d9c Mon Sep 17 00:00:00 2001 From: Markus Schneider Date: Thu, 4 Jun 2015 14:30:25 +0200 Subject: [PATCH 3/8] add OCA to author --- __openerp__.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index 4f48932d4..b5db00c83 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -30,7 +30,8 @@ "data": [ 'view/qweb.xml', ], - "author": "Vincent Vinet", + "author": "Vincent Vinet, " + "Odoo Community Association (OCA)", "installable": True, "active": False, } From 2af52e4899d4fc80db1c3f3749038f48f7c2edf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Bidoul?= Date: Fri, 9 Oct 2015 10:03:39 +0200 Subject: [PATCH 4/8] [UPD] prefix versions with 8.0 --- __openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index b5db00c83..373262030 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -22,7 +22,7 @@ { "name": 'web_widget_datepicker_options', - "version": "1.0", + "version": "8.0.1.0.0", "depends": [ 'base', 'web', From 85cb6f628c0bf9d463a471558ee2f8be269b267a Mon Sep 17 00:00:00 2001 From: "Pedro M. Baeza" Date: Wed, 14 Oct 2015 02:57:05 +0200 Subject: [PATCH 5/8] [MIG] Make modules uninstallable --- __openerp__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/__openerp__.py b/__openerp__.py index 373262030..67b23c1ec 100644 --- a/__openerp__.py +++ b/__openerp__.py @@ -32,6 +32,6 @@ ], "author": "Vincent Vinet, " "Odoo Community Association (OCA)", - "installable": True, + 'installable': False, "active": False, } From f0c38a00dd81e56f908f1b4e9172411d180b94b1 Mon Sep 17 00:00:00 2001 From: "Pedro M. Baeza" Date: Thu, 6 Oct 2016 16:13:01 +0200 Subject: [PATCH 6/8] [MIG] Rename manifest files --- __openerp__.py => __manifest__.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename __openerp__.py => __manifest__.py (100%) diff --git a/__openerp__.py b/__manifest__.py similarity index 100% rename from __openerp__.py rename to __manifest__.py From 9b264c286eb4d36a95e198c6eaa21544cb3b8edc Mon Sep 17 00:00:00 2001 From: Yanina Aular Date: Mon, 14 May 2018 12:26:34 -0500 Subject: [PATCH 7/8] [MIG] Migrate web_widget_datepicker_options to version 11.0 This commit extracts the module from version 10 and migrates it to v11 --- static/src/js/datepicker.js | 53 ------------------ .../README.rst | 1 + .../__init__.py | 0 .../__manifest__.py | 6 +- .../static}/description/icon.png | Bin .../static}/description/icon.svg | 0 .../static/src/js/datepicker.js | 43 ++++++++++++++ .../view}/qweb.xml | 0 8 files changed, 47 insertions(+), 56 deletions(-) delete mode 100644 static/src/js/datepicker.js rename README.rst => web_widget_datepicker_options/README.rst (97%) rename __init__.py => web_widget_datepicker_options/__init__.py (100%) rename __manifest__.py => web_widget_datepicker_options/__manifest__.py (94%) rename {static => web_widget_datepicker_options/static}/description/icon.png (100%) rename {static => web_widget_datepicker_options/static}/description/icon.svg (100%) create mode 100644 web_widget_datepicker_options/static/src/js/datepicker.js rename {view => web_widget_datepicker_options/view}/qweb.xml (100%) diff --git a/static/src/js/datepicker.js b/static/src/js/datepicker.js deleted file mode 100644 index 304f119b7..000000000 --- a/static/src/js/datepicker.js +++ /dev/null @@ -1,53 +0,0 @@ -/* - OpenERP, Open Source Management Solution - This module copyright (C) 2015 Savoir-faire Linux - (). - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as - published by the Free Software Foundation, either version 3 of the - License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . -*/ -/*global openerp, _, $ */ - -openerp.web_widget_datepicker_options = function (instance) { - - "use strict"; - - instance.web.form.FieldDatetime.include({ - initialize_content: function() { - this._super(); - var self = this; - if (this.datewidget) { - if (typeof this.options.datepicker === 'object') { - $.map(this.options.datepicker, function(value, key) { - self.datewidget.picker('option', key, value); - }); - } - } - } - }); - - instance.web.form.FieldDate.include({ - initialize_content: function() { - this._super(); - var self = this; - if (this.datewidget) { - if (typeof this.options.datepicker === 'object') { - $.map(this.options.datepicker, function(value, key) { - self.datewidget.picker('option', key, value); - }); - } - } - } - }); -}; - diff --git a/README.rst b/web_widget_datepicker_options/README.rst similarity index 97% rename from README.rst rename to web_widget_datepicker_options/README.rst index f21fe3d5a..aae7b04fc 100644 --- a/README.rst +++ b/web_widget_datepicker_options/README.rst @@ -42,6 +42,7 @@ Contributors ------------ * Vincent Vinet +* Yanina Aular Maintainer ---------- diff --git a/__init__.py b/web_widget_datepicker_options/__init__.py similarity index 100% rename from __init__.py rename to web_widget_datepicker_options/__init__.py diff --git a/__manifest__.py b/web_widget_datepicker_options/__manifest__.py similarity index 94% rename from __manifest__.py rename to web_widget_datepicker_options/__manifest__.py index 67b23c1ec..40522db84 100644 --- a/__manifest__.py +++ b/web_widget_datepicker_options/__manifest__.py @@ -22,7 +22,8 @@ { "name": 'web_widget_datepicker_options', - "version": "8.0.1.0.0", + "version": "11.0.1.0.0", + "license": "AGPL-3", "depends": [ 'base', 'web', @@ -32,6 +33,5 @@ ], "author": "Vincent Vinet, " "Odoo Community Association (OCA)", - 'installable': False, - "active": False, + 'installable': True, } diff --git a/static/description/icon.png b/web_widget_datepicker_options/static/description/icon.png similarity index 100% rename from static/description/icon.png rename to web_widget_datepicker_options/static/description/icon.png diff --git a/static/description/icon.svg b/web_widget_datepicker_options/static/description/icon.svg similarity index 100% rename from static/description/icon.svg rename to web_widget_datepicker_options/static/description/icon.svg diff --git a/web_widget_datepicker_options/static/src/js/datepicker.js b/web_widget_datepicker_options/static/src/js/datepicker.js new file mode 100644 index 000000000..ecd585ab8 --- /dev/null +++ b/web_widget_datepicker_options/static/src/js/datepicker.js @@ -0,0 +1,43 @@ +/* + OpenERP, Open Source Management Solution + This module copyright (C) 2015 Savoir-faire Linux + (). + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +odoo.define('web_widget_datepicker_options.datepicker', function(require) { + "use strict"; + var Widget = require('web.datepicker'); + + Widget.DateWidget.include({ + init: function() { + this._super.apply(this, arguments); + if(typeof this.__parentedParent !== 'undefined' && this.__parentedParent.field.type === 'date' && this.__parentedParent.nodeOptions){ + var datepicker = this.__parentedParent.nodeOptions.datepicker; + Object.assign(this.options, datepicker); + } + }, + }); + + Widget.DateTimeWidget.include({ + init: function() { + this._super.apply(this, arguments); + if(typeof this.__parentedParent !== 'undefined' && this.__parentedParent.field.type === 'date' && this.__parentedParent.nodeOptions){ + var datepicker = this.__parentedParent.nodeOptions.datepicker; + Object.assign(this.options, datepicker); + } + }, + }); +}); diff --git a/view/qweb.xml b/web_widget_datepicker_options/view/qweb.xml similarity index 100% rename from view/qweb.xml rename to web_widget_datepicker_options/view/qweb.xml From c7049129558726694b142ab4ee95b667d978131e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luis=20Gonz=C3=A1lez?= Date: Mon, 28 May 2018 01:52:27 +0000 Subject: [PATCH 8/8] [FIX] web_widget_datepicker_options: Apply fixes after migration to v11 This applies some changes to the module after migration, to conform new guidelines and conventions for version 11.0. In addition, this applies the following fixes: - The widged didn't work when the field was a `datetime` due to a typo in a JS conditional - Replaced `Object.assign()` -> `_.assign()` to improve browser-compatibility --- web_widget_datepicker_options/README.rst | 22 ++++++---- web_widget_datepicker_options/__init__.py | 22 +--------- web_widget_datepicker_options/__manifest__.py | 44 ++++++------------- .../static/src/js/datepicker.js | 35 ++++++--------- web_widget_datepicker_options/view/qweb.xml | 10 ----- .../views/assets.xml | 12 +++++ 6 files changed, 52 insertions(+), 93 deletions(-) delete mode 100644 web_widget_datepicker_options/view/qweb.xml create mode 100644 web_widget_datepicker_options/views/assets.xml diff --git a/web_widget_datepicker_options/README.rst b/web_widget_datepicker_options/README.rst index aae7b04fc..ff79a340e 100644 --- a/web_widget_datepicker_options/README.rst +++ b/web_widget_datepicker_options/README.rst @@ -1,11 +1,11 @@ -.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.png :alt: License: AGPL-3 Datepicker Widget Options ========================= This module allows passing options to the jquery datepicker for fields that use -the datepicker widget. The option are passed as-is and are not validated. +the datepicker widget. Options are passed as they are, without any validation. To see all supported options, see the `API documentation `_. @@ -17,7 +17,7 @@ Usage You must pass all options through the "datepicker" field in the options:: ... - + ... Known issues / Roadmap @@ -32,7 +32,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback -`here `_. +`here `_. Credits @@ -43,17 +43,21 @@ Contributors * Vincent Vinet * Yanina Aular +* Luis González + +Do not contact contributors directly about support or help with technical issues. Maintainer ---------- -.. image:: http://odoo-community.org/logo.png +.. image:: https://odoo-community.org/logo.png :alt: Odoo Community Association - :target: http://odoo-community.org + :target: https://odoo-community.org This module is maintained by the OCA. -OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. - -To contribute to this module, please visit http://odoo-community.org. +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. +To contribute to this module, please visit https://odoo-community.org. diff --git a/web_widget_datepicker_options/__init__.py b/web_widget_datepicker_options/__init__.py index 5daf74683..d9d1f13de 100644 --- a/web_widget_datepicker_options/__init__.py +++ b/web_widget_datepicker_options/__init__.py @@ -1,21 +1 @@ -# -*- encoding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# This module copyright (C) 2015 Savoir-faire Linux -# (). -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). diff --git a/web_widget_datepicker_options/__manifest__.py b/web_widget_datepicker_options/__manifest__.py index 40522db84..6cec56514 100644 --- a/web_widget_datepicker_options/__manifest__.py +++ b/web_widget_datepicker_options/__manifest__.py @@ -1,37 +1,19 @@ -# -*- encoding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# This module copyright (C) 2015 Savoir-faire Linux -# (). -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { - "name": 'web_widget_datepicker_options', + "name": "Web widget datepicker options", + "summary": "Enhance customization for datepicker widgets", "version": "11.0.1.0.0", - "license": "AGPL-3", - "depends": [ - 'base', - 'web', - ], - "data": [ - 'view/qweb.xml', - ], + "category": "Web", "author": "Vincent Vinet, " "Odoo Community Association (OCA)", - 'installable': True, + "website": "https://github.com/OCA/web", + "license": "AGPL-3", + "depends": [ + "web", + ], + "data": [ + "views/assets.xml", + ], + "installable": True, } diff --git a/web_widget_datepicker_options/static/src/js/datepicker.js b/web_widget_datepicker_options/static/src/js/datepicker.js index ecd585ab8..6e714a167 100644 --- a/web_widget_datepicker_options/static/src/js/datepicker.js +++ b/web_widget_datepicker_options/static/src/js/datepicker.js @@ -1,20 +1,5 @@ /* - OpenERP, Open Source Management Solution - This module copyright (C) 2015 Savoir-faire Linux - (). - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as - published by the Free Software Foundation, either version 3 of the - License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . +License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */ odoo.define('web_widget_datepicker_options.datepicker', function(require) { @@ -24,9 +9,12 @@ odoo.define('web_widget_datepicker_options.datepicker', function(require) { Widget.DateWidget.include({ init: function() { this._super.apply(this, arguments); - if(typeof this.__parentedParent !== 'undefined' && this.__parentedParent.field.type === 'date' && this.__parentedParent.nodeOptions){ - var datepicker = this.__parentedParent.nodeOptions.datepicker; - Object.assign(this.options, datepicker); + var parent = this.getParent(); + if(typeof parent !== 'undefined' + && parent.field.type === 'date' + && parent.nodeOptions){ + var datepicker = parent.nodeOptions.datepicker; + _.assign(this.options, datepicker); } }, }); @@ -34,9 +22,12 @@ odoo.define('web_widget_datepicker_options.datepicker', function(require) { Widget.DateTimeWidget.include({ init: function() { this._super.apply(this, arguments); - if(typeof this.__parentedParent !== 'undefined' && this.__parentedParent.field.type === 'date' && this.__parentedParent.nodeOptions){ - var datepicker = this.__parentedParent.nodeOptions.datepicker; - Object.assign(this.options, datepicker); + var parent = this.getParent(); + if(typeof parent !== 'undefined' + && parent.field.type === 'datetime' + && parent.nodeOptions){ + var datepicker = parent.nodeOptions.datepicker; + _.assign(this.options, datepicker); } }, }); diff --git a/web_widget_datepicker_options/view/qweb.xml b/web_widget_datepicker_options/view/qweb.xml deleted file mode 100644 index 9921348dd..000000000 --- a/web_widget_datepicker_options/view/qweb.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - diff --git a/web_widget_datepicker_options/views/assets.xml b/web_widget_datepicker_options/views/assets.xml new file mode 100644 index 000000000..1959b9b5d --- /dev/null +++ b/web_widget_datepicker_options/views/assets.xml @@ -0,0 +1,12 @@ + + + + +