[imp] corrected integer handling in search view
bzr revid: nicolas.vanhoren@openerp.com-20110919134615-9ef47xeuw3gxdmwr
This commit is contained in:
parent
ba39c0351d
commit
e1bde312fc
|
@ -82,7 +82,12 @@ openerp.web.parse_value = function (value, descriptor, value_if_empty) {
|
|||
}
|
||||
switch (descriptor.widget || descriptor.type) {
|
||||
case 'integer':
|
||||
var tmp = Number(value);
|
||||
var tmp;
|
||||
do {
|
||||
tmp = value;
|
||||
value = value.replace(openerp.web._t.database.parameters.thousands_sep, "");
|
||||
} while(tmp !== value);
|
||||
tmp = Number(value);
|
||||
if (isNaN(tmp))
|
||||
throw value + " is not a correct integer";
|
||||
return tmp;
|
||||
|
|
|
@ -720,7 +720,11 @@ openerp.web.search.NumberField = openerp.web.search.Field.extend(/** @lends open
|
|||
openerp.web.search.IntegerField = openerp.web.search.NumberField.extend(/** @lends openerp.web.search.IntegerField# */{
|
||||
error_message: "not a valid integer",
|
||||
parse: function (value) {
|
||||
return parseInt(value, 10);
|
||||
try {
|
||||
return openerp.web.parse_value(value, {'widget': 'integer'});
|
||||
} catch (e) {
|
||||
return NaN;
|
||||
}
|
||||
}
|
||||
});
|
||||
/**
|
||||
|
@ -1173,7 +1177,7 @@ openerp.web.search.ExtendedSearchProposition.Integer = openerp.web.OldWidget.ext
|
|||
],
|
||||
get_value: function() {
|
||||
try {
|
||||
return Math.round(openerp.web.parse_value(this.$element.val(), {'widget': 'float'}));
|
||||
return openerp.web.parse_value(this.$element.val(), {'widget': 'integer'});
|
||||
} catch (e) {
|
||||
return "";
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue