Add domain inversion for reference fields
issue7877 review45831002
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
* Add domain inversion for reference fields
|
||||
* Add list-form view
|
||||
* Support HTML widget
|
||||
* Use locale format for data export
|
||||
|
||||
+15
-6
@@ -2339,13 +2339,22 @@
|
||||
},
|
||||
unique_value: function(domain) {
|
||||
if ((domain instanceof Array) &&
|
||||
(domain.length == 1) &&
|
||||
!domain[0][0].contains('.') &&
|
||||
(domain[0][1] == '=')) {
|
||||
return [true, domain[0][1], domain[0][2]];
|
||||
} else {
|
||||
return [false, null, null];
|
||||
(domain.length == 1)) {
|
||||
domain = domain[0];
|
||||
var name = domain[0];
|
||||
var value = domain[2];
|
||||
var count = 0;
|
||||
if (domain.length == 4 && name.endsWith('.id')) {
|
||||
count = 1;
|
||||
var model = domain[3];
|
||||
value = [model, value];
|
||||
}
|
||||
if ((name.split('.').length - 1) == count &&
|
||||
(domain[1] == '=')) {
|
||||
return [true, domain[1], value];
|
||||
}
|
||||
}
|
||||
return [false, null, null];
|
||||
},
|
||||
parse: function(domain) {
|
||||
var And = Sao.common.DomainInversion.And;
|
||||
|
||||
@@ -2201,6 +2201,10 @@
|
||||
QUnit.ok(!unique_value(domain)[0]);
|
||||
domain = [['a.b', '=', 1]];
|
||||
QUnit.ok(!unique_value(domain)[0]);
|
||||
domain = [['a.id', '=', 1, 'model']];
|
||||
QUnit.ok(compare(unique_value(domain), [true, '=', ['model', 1]]));
|
||||
domain = [['a.b.id', '=', 1, 'model']];
|
||||
QUnit.ok(compare(unique_value(domain), [false, null, null]));
|
||||
});
|
||||
|
||||
QUnit.test('DomainInversion evaldomain', function() {
|
||||
|
||||
Reference in New Issue
Block a user