diff --git a/web_widget_datepicker_options/README.rst b/web_widget_datepicker_options/README.rst new file mode 100644 index 00000000..ff79a340 --- /dev/null +++ b/web_widget_datepicker_options/README.rst @@ -0,0 +1,63 @@ +.. 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. Options are passed as they are, without any validation. + +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. + + +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 +======= + +Contributors +------------ + +* Vincent Vinet +* Yanina Aular +* Luis González + +Do not contact contributors directly about support or help with technical issues. + +Maintainer +---------- + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :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 https://odoo-community.org. diff --git a/web_widget_datepicker_options/__init__.py b/web_widget_datepicker_options/__init__.py new file mode 100644 index 00000000..d9d1f13d --- /dev/null +++ b/web_widget_datepicker_options/__init__.py @@ -0,0 +1 @@ +# 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 new file mode 100644 index 00000000..6cec5651 --- /dev/null +++ b/web_widget_datepicker_options/__manifest__.py @@ -0,0 +1,19 @@ +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + "name": "Web widget datepicker options", + "summary": "Enhance customization for datepicker widgets", + "version": "11.0.1.0.0", + "category": "Web", + "author": "Vincent Vinet, " + "Odoo Community Association (OCA)", + "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/description/icon.png b/web_widget_datepicker_options/static/description/icon.png new file mode 100644 index 00000000..3a0328b5 Binary files /dev/null and b/web_widget_datepicker_options/static/description/icon.png differ diff --git a/web_widget_datepicker_options/static/description/icon.svg b/web_widget_datepicker_options/static/description/icon.svg new file mode 100644 index 00000000..a7a26d09 --- /dev/null +++ b/web_widget_datepicker_options/static/description/icon.svg @@ -0,0 +1,79 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + 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 00000000..6e714a16 --- /dev/null +++ b/web_widget_datepicker_options/static/src/js/datepicker.js @@ -0,0 +1,34 @@ +/* +License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +*/ + +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); + var parent = this.getParent(); + if(typeof parent !== 'undefined' + && parent.field.type === 'date' + && parent.nodeOptions){ + var datepicker = parent.nodeOptions.datepicker; + _.assign(this.options, datepicker); + } + }, + }); + + Widget.DateTimeWidget.include({ + init: function() { + this._super.apply(this, arguments); + 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/views/assets.xml b/web_widget_datepicker_options/views/assets.xml new file mode 100644 index 00000000..1959b9b5 --- /dev/null +++ b/web_widget_datepicker_options/views/assets.xml @@ -0,0 +1,12 @@ + + + + +