[ADD] support for literal numbers in on_change specs

bzr revid: xmo@openerp.com-20111122124353-kfibt1cdvmy2pzp4
This commit is contained in:
Xavier Morel 2011-11-22 13:43:53 +01:00
parent bea1a79705
commit 998fd0dab6
2 changed files with 13 additions and 0 deletions

View File

@ -273,6 +273,10 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView#
if (field in argument_replacement) {
return argument_replacement[field](i);
}
// literal number
if (/^-?\d+(\.\d+)?$/.test(field)) {
return Number(field);
}
// form field
if (self.fields[field]) {
var value = self.fields[field].get_on_change_value();

View File

@ -62,4 +62,13 @@ $(document).ready(function () {
var result2 = f.parse_on_change("on_str('foo')", {});
deepEqual(result2.args, ['foo']);
});
test('Literal number', function () {
var f = make_form();
var result = f.parse_on_change('on_str(42)', {});
deepEqual(result.args, [42]);
var result2 = f.parse_on_change("on_str(-25)", {});
deepEqual(result2.args, [-25]);
var result3 = f.parse_on_change("on_str(25.02)", {});
deepEqual(result3.args, [25.02]);
});
});