odoo/addons/web
qsm-odoo b2d66d0c14 [FIX] web: properly combine domains with "OR" in CompoundDomain
The CompoundDomain class allows to regroup several domains with an
implicit "AND"; these domains can be either a string, an array or
another CompoundDomain. A CompoundDomain can then be converted to
an array thanks to pyeval.js.
For example, if a CompoundDomain is initialized with `[A, B]` and
`[C]`, the array conversion gave `[A, B, C]` (which is expected).

However, a hackish method was used with CompoundDomain. If one of the
domain of a CompoundDomain is equal to `["|"]` (an array with the
OR operator in it), the two next subdomains were supposed to be joined
by a OR operator. Indeed, for the case of a CompoundDomain initialized
with `["|"]`, `[A]` and `[B]`, the array conversion gave `["|", A, B]`
(which is expected). However, if initialized with `["|"]`, `[A, B]` and
`[C]`, the array conversion gave `["|", A, B, C]` which is very wrong
as what was expected is `["|", "&", A, B, C]`. The problem is that the
given `[A, B]` contains implicit "&" operators.

This commit fixes the problem by normalizing only if the CompoundDomain
starts with a ["|"] or ["!"] array which is the standard odoo case.
This allows to limit breaking custom code (e.g we want a simple "AND"
of `[A]` and `[B]` to stay `[A, B]`, not become `["&", A, B]`).

The commit also modifies a test so that it checks that the problem is
properly solved.
2017-03-24 15:03:54 +01:00
..
controllers [FIX] http: do not allow passing spaces around db in URL param 2016-09-09 09:28:10 +02:00
doc [FIX] doc: Research -> Search 2016-06-17 09:48:47 +02:00
i18n [I18N] Update translation terms from Transifex 2017-03-19 02:55:34 +01:00
static [FIX] web: properly combine domains with "OR" in CompoundDomain 2017-03-24 15:03:54 +01:00
tests [FIX] web: re-enable test_menu.py without the mock-menu test 2014-10-10 18:12:59 +02:00
views [FIX] web: fix db manager layout in Chrome 50 2016-04-20 11:42:03 +02:00
.bowerrc
Gruntfile.js
__init__.py [FIX] web: no need to initialize wsgi handler in postload anymore 2014-03-24 10:30:38 +01:00
__openerp__.py [MERGE] Forward-port latest saas-3 bugfixes, up to c9b690f6b6 2015-01-29 13:54:13 +01:00
bower.json
package.json