mirror of https://github.com/OCA/web.git
[IMP] web_advanced_search: black, isort
parent
6e94a50fb3
commit
87bfe75358
|
@ -14,13 +14,13 @@ Advanced search
|
|||
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
|
||||
:alt: License: AGPL-3
|
||||
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github
|
||||
:target: https://github.com/OCA/web/tree/13.0/web_advanced_search
|
||||
:target: https://github.com/OCA/web/tree/14.0/web_advanced_search
|
||||
:alt: OCA/web
|
||||
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
|
||||
:target: https://translation.odoo-community.org/projects/web-13-0/web-13-0-web_advanced_search
|
||||
:target: https://translation.odoo-community.org/projects/web-14-0/web-14-0-web_advanced_search
|
||||
:alt: Translate me on Weblate
|
||||
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
|
||||
:target: https://runbot.odoo-community.org/runbot/162/13.0
|
||||
:target: https://runbot.odoo-community.org/runbot/162/14.0
|
||||
:alt: Try me on Runbot
|
||||
|
||||
|badge1| |badge2| |badge3| |badge4| |badge5|
|
||||
|
@ -58,7 +58,7 @@ this indefinetely, so it is possible to search for moves belonging
|
|||
to a journal which has a user who is member of a certain group etc.
|
||||
|
||||
Note also the domain dialog offers an editable preview in debug mode:
|
||||
.. image:: https://raw.githubusercontent.com/OCA/web/13.0/web_advanced_search/static/img/debug_mode.png
|
||||
.. image:: https://raw.githubusercontent.com/OCA/web/14.0/web_advanced_search/static/img/debug_mode.png
|
||||
|
||||
Known issues / Roadmap
|
||||
======================
|
||||
|
@ -128,7 +128,7 @@ Bug Tracker
|
|||
Bugs are tracked on `GitHub Issues <https://github.com/OCA/web/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 <https://github.com/OCA/web/issues/new?body=module:%20web_advanced_search%0Aversion:%2013.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
||||
`feedback <https://github.com/OCA/web/issues/new?body=module:%20web_advanced_search%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
||||
|
||||
Do not contact contributors directly about support or help with technical issues.
|
||||
|
||||
|
@ -155,6 +155,10 @@ Contributors
|
|||
* Jairo Llopis
|
||||
* Alexandre Díaz
|
||||
|
||||
* `DynApps NV <https://www.dynapps.be>`_:
|
||||
|
||||
* Raf Ven
|
||||
|
||||
Maintainers
|
||||
~~~~~~~~~~~
|
||||
|
||||
|
@ -168,6 +172,6 @@ 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.
|
||||
|
||||
This module is part of the `OCA/web <https://github.com/OCA/web/tree/13.0/web_advanced_search>`_ project on GitHub.
|
||||
This module is part of the `OCA/web <https://github.com/OCA/web/tree/14.0/web_advanced_search>`_ project on GitHub.
|
||||
|
||||
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
{
|
||||
"name": "Advanced search",
|
||||
"version": "13.0.1.0.3",
|
||||
"version": "14.0.1.0.0",
|
||||
"author": "Therp BV, " "Tecnativa, " "Odoo Community Association (OCA)",
|
||||
"license": "AGPL-3",
|
||||
"category": "Usability",
|
||||
|
|
|
@ -8,3 +8,7 @@
|
|||
* Vicent Cubells
|
||||
* Jairo Llopis
|
||||
* Alexandre Díaz
|
||||
|
||||
* `DynApps NV <https://www.dynapps.be>`_:
|
||||
|
||||
* Raf Ven
|
||||
|
|
|
@ -367,7 +367,7 @@ ul.auto-toc {
|
|||
!! This file is generated by oca-gen-addon-readme !!
|
||||
!! changes will be overwritten. !!
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||||
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/web/tree/13.0/web_advanced_search"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/web-13-0/web-13-0-web_advanced_search"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/162/13.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
|
||||
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/web/tree/14.0/web_advanced_search"><img alt="OCA/web" src="https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/web-14-0/web-14-0-web_advanced_search"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/162/14.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
|
||||
<p>More powerful and easy to use search, especially for related fields.</p>
|
||||
<p><strong>Table of contents</strong></p>
|
||||
<div class="contents local topic" id="contents">
|
||||
|
@ -414,7 +414,7 @@ this indefinetely, so it is possible to search for moves belonging
|
|||
to a journal which has a user who is member of a certain group etc.</p>
|
||||
<dl class="docutils">
|
||||
<dt>Note also the domain dialog offers an editable preview in debug mode:</dt>
|
||||
<dd><img alt="https://raw.githubusercontent.com/OCA/web/13.0/web_advanced_search/static/img/debug_mode.png" class="first last" src="https://raw.githubusercontent.com/OCA/web/13.0/web_advanced_search/static/img/debug_mode.png" />
|
||||
<dd><img alt="https://raw.githubusercontent.com/OCA/web/14.0/web_advanced_search/static/img/debug_mode.png" class="first last" src="https://raw.githubusercontent.com/OCA/web/14.0/web_advanced_search/static/img/debug_mode.png" />
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
@ -482,7 +482,7 @@ search as expected too.</p>
|
|||
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/web/issues">GitHub Issues</a>.
|
||||
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
|
||||
<a class="reference external" href="https://github.com/OCA/web/issues/new?body=module:%20web_advanced_search%0Aversion:%2013.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
||||
<a class="reference external" href="https://github.com/OCA/web/issues/new?body=module:%20web_advanced_search%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
|
||||
<p>Do not contact contributors directly about support or help with technical issues.</p>
|
||||
</div>
|
||||
<div class="section" id="credits">
|
||||
|
@ -508,6 +508,10 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
|
|||
<li>Alexandre Díaz</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a class="reference external" href="https://www.dynapps.be">DynApps NV</a>:<ul>
|
||||
<li>Raf Ven</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="maintainers">
|
||||
|
@ -517,7 +521,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
|
|||
<p>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.</p>
|
||||
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/web/tree/13.0/web_advanced_search">OCA/web</a> project on GitHub.</p>
|
||||
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/web/tree/14.0/web_advanced_search">OCA/web</a> project on GitHub.</p>
|
||||
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* Copyright 2020 Tecnativa - Alexandre Díaz
|
||||
* License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */
|
||||
|
||||
odoo.define("web_advanced_search.human_domain", function() {
|
||||
odoo.define("web_advanced_search.human_domain", function () {
|
||||
"use strict";
|
||||
|
||||
const join_mapping = {
|
||||
|
@ -12,21 +12,21 @@ odoo.define("web_advanced_search.human_domain", function() {
|
|||
};
|
||||
|
||||
const human_domain_methods = {
|
||||
DomainTree: function() {
|
||||
DomainTree: function () {
|
||||
const human_domains = [];
|
||||
_.each(this.children, child => {
|
||||
_.each(this.children, (child) => {
|
||||
human_domains.push(human_domain_methods[child.template].apply(child));
|
||||
});
|
||||
return `(${human_domains.join(join_mapping[this.operator])})`;
|
||||
},
|
||||
|
||||
DomainSelector: function() {
|
||||
DomainSelector: function () {
|
||||
const result = human_domain_methods.DomainTree.apply(this, arguments);
|
||||
// Remove surrounding parenthesis
|
||||
return result.slice(1, -1);
|
||||
},
|
||||
|
||||
DomainLeaf: function() {
|
||||
DomainLeaf: function () {
|
||||
const chain = [];
|
||||
let operator = this.operator_mapping[this.operator],
|
||||
value = `"${this.value}"`;
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
* Copyright 2020 Alexandre Díaz
|
||||
* License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */
|
||||
|
||||
odoo.define("web_advanced_search", function(require) {
|
||||
odoo.define("web_advanced_search", function (require) {
|
||||
"use strict";
|
||||
|
||||
const config = require("web.config");
|
||||
|
@ -25,7 +25,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
/**
|
||||
* @override
|
||||
*/
|
||||
init: function(parent, model, domain) {
|
||||
init: function (parent, model, domain) {
|
||||
this._super(parent);
|
||||
this.model = model;
|
||||
this.domain = new Domain(domain);
|
||||
|
@ -38,7 +38,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
*
|
||||
* @returns {Object} In the format expected by `web.FilterMenu`.
|
||||
*/
|
||||
get_filter: function() {
|
||||
get_filter: function () {
|
||||
return {
|
||||
attrs: {
|
||||
domain: this.domain_array,
|
||||
|
@ -49,7 +49,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
};
|
||||
},
|
||||
|
||||
_createDomainSelector: function() {
|
||||
_createDomainSelector: function () {
|
||||
this.domain_selector = new DomainSelector(
|
||||
this,
|
||||
this.model,
|
||||
|
@ -59,7 +59,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
return this.domain_selector.appendTo(this.dummy_parent);
|
||||
},
|
||||
|
||||
destroy: function() {
|
||||
destroy: function () {
|
||||
this.domain_selector.destroy();
|
||||
this.dummy_parent.remove();
|
||||
return this._super.apply(this, arguments);
|
||||
|
@ -82,9 +82,9 @@ odoo.define("web_advanced_search", function(require) {
|
|||
*
|
||||
* @override
|
||||
*/
|
||||
start: function() {
|
||||
start: function () {
|
||||
this._super.apply(this, arguments);
|
||||
this.$el.on("hide.bs.dropdown", function() {
|
||||
this.$el.on("hide.bs.dropdown", function () {
|
||||
var $modal = $(".o_technical_modal.show");
|
||||
return !(
|
||||
($modal.length && !$modal.has($(this)).length) ||
|
||||
|
@ -96,7 +96,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
/**
|
||||
* @override
|
||||
*/
|
||||
init: function() {
|
||||
init: function () {
|
||||
this._super.apply(this, arguments);
|
||||
|
||||
this._context = this.getParent().context;
|
||||
|
@ -108,7 +108,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
*
|
||||
* @returns {$.Deferred} The opening dialog itself.
|
||||
*/
|
||||
advanced_search_open: function() {
|
||||
advanced_search_open: function () {
|
||||
const domain_selector_dialog = new DomainSelectorDialog(
|
||||
this,
|
||||
this._modelName,
|
||||
|
@ -130,7 +130,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
*
|
||||
* @param {OdooEvent} event A `domain_selected` event from the dialog.
|
||||
*/
|
||||
advanced_search_commit: function(event) {
|
||||
advanced_search_commit: function (event) {
|
||||
_.invoke(this.propositions, "destroy");
|
||||
const proposition = new AdvancedSearchProposition(
|
||||
this,
|
||||
|
@ -140,7 +140,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
// Necessary to ensure that the porposition have the 'fieldSelector'
|
||||
// is filled
|
||||
_.defer(
|
||||
function() {
|
||||
function () {
|
||||
this.propositions = [proposition];
|
||||
this._commitSearch();
|
||||
}.bind(this)
|
||||
|
@ -166,13 +166,13 @@ odoo.define("web_advanced_search", function(require) {
|
|||
/**
|
||||
* @override
|
||||
*/
|
||||
init: function() {
|
||||
init: function () {
|
||||
this._super.apply(this, arguments);
|
||||
// To make widgets work, we need a model and an empty record
|
||||
FieldManagerMixin.init.call(this);
|
||||
this.trigger_up("get_dataset");
|
||||
// Make equal and not equal appear 1st and 2nd
|
||||
this.operators = _.sortBy(this.operators, op => {
|
||||
this.operators = _.sortBy(this.operators, (op) => {
|
||||
switch (op.value) {
|
||||
case "=":
|
||||
return -2;
|
||||
|
@ -217,7 +217,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
/**
|
||||
* @override
|
||||
*/
|
||||
start: function() {
|
||||
start: function () {
|
||||
const result = this._super.apply(this, arguments);
|
||||
// Render the initial widget
|
||||
result.then($.proxy(this, "show_inputs", $("<input value='='/>")));
|
||||
|
@ -227,7 +227,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
/**
|
||||
* @override
|
||||
*/
|
||||
destroy: function() {
|
||||
destroy: function () {
|
||||
if (this._field_widget) {
|
||||
this._field_widget.destroy();
|
||||
}
|
||||
|
@ -241,14 +241,14 @@ odoo.define("web_advanced_search", function(require) {
|
|||
*
|
||||
* @returns {Object}
|
||||
*/
|
||||
_get_record: function() {
|
||||
_get_record: function () {
|
||||
return this.model.get(this.datapoint_id);
|
||||
},
|
||||
|
||||
/**
|
||||
* @override
|
||||
*/
|
||||
show_inputs: function($operator) {
|
||||
show_inputs: function ($operator) {
|
||||
// Get widget class to be used
|
||||
switch ($operator.val()) {
|
||||
case "=":
|
||||
|
@ -289,7 +289,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
/**
|
||||
* @override
|
||||
*/
|
||||
_applyChanges: function(dataPointID, changes, event) {
|
||||
_applyChanges: function (dataPointID, changes, event) {
|
||||
if (this._field_widget_name === "many2one") {
|
||||
// Make char updates look like valid x2one updates
|
||||
if (_.isNaN(changes[this.field.name].id)) {
|
||||
|
@ -301,7 +301,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
return FieldManagerMixin._applyChanges.apply(this, arguments);
|
||||
}
|
||||
|
||||
return new Promise(resolve => {
|
||||
return new Promise((resolve) => {
|
||||
resolve();
|
||||
});
|
||||
},
|
||||
|
@ -309,7 +309,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
/**
|
||||
* @override
|
||||
*/
|
||||
_confirmChange: function(id, fields, event) {
|
||||
_confirmChange: function (id, fields, event) {
|
||||
this.datapoint_id = id;
|
||||
return this._field_widget.reset(this._get_record(), event);
|
||||
},
|
||||
|
@ -317,7 +317,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
/**
|
||||
* @override
|
||||
*/
|
||||
get_value: function() {
|
||||
get_value: function () {
|
||||
try {
|
||||
switch (this._field_widget_name) {
|
||||
case "many2one":
|
||||
|
@ -337,7 +337,7 @@ odoo.define("web_advanced_search", function(require) {
|
|||
*
|
||||
* @override
|
||||
*/
|
||||
toString: function() {
|
||||
toString: function () {
|
||||
try {
|
||||
switch (this._field_widget_name) {
|
||||
case "many2one":
|
||||
|
|
Loading…
Reference in New Issue