Antony Lesuisse (OpenERP) has proposed merging
lp:~openerp-dev/openerp-web/trunk-onchange-al into lp:openerp-web.
Requested reviews:
OpenERP R&D Web Team (openerp-dev-web)
For more details, see:
https://code.launchpad.net/~openerp-dev/openerp-web/trunk-onchange-al/+merge/90811
new onchange see spec on kanban pad
--
https://code.launchpad.net/~openerp-dev/openerp-web/trunk-onchange-al/+merge/90811
Your team OpenERP R&D Team is subscribed to branch
lp:~openerp-dev/openerp-web/trunk-onchange-al.
=== modified file 'addons/web/static/src/js/view_form.js'
--- addons/web/static/src/js/view_form.js 2012-01-26 14:37:34 +0000
+++ addons/web/static/src/js/view_form.js 2012-01-30 23:48:24 +0000
@@ -240,7 +240,14 @@
parse_on_change: function (on_change, widget) {
var self = this;
var onchange = _.str.trim(on_change);
- var call = onchange.match(/^\s?(.*?)\((.*?)\)\s?$/);
+ var onchange_fields = widget.node.attrs.on_change_fields;
+ var call;
+
+ if (onchange_fields) {
+ call = [onchange,onchange_fields];
+ } else {
+ call = onchange.match(/^\s?(.*?)\((.*?)\)\s?$/);
+ }
if (!call) {
return null;
}
@@ -261,7 +268,7 @@
}
};
var parent_fields = null, context_index = null;
- var args = _.map(call[2].split(','), function (a, i) {
+ var evaluate_arg = function (a, i) {
var field = _.str.trim(a);
// literal constant or context
@@ -299,11 +306,23 @@
"' for onchange '" + onchange + "'");
});
- return {
- method: method,
- args: args,
- context_index: context_index
- };
+ var args_obj = {};
+ var args_array = [];
+ _.each(call[2].split(','), function (a, i) {
+ value = evaluate_arg(a,i);
+ args_obj[a] = value;
+ args_array[i] = value;
+ }
+
+ var r = { method: method };
+ if (onchange_fields) {
+ r.args = args_obj;
+ r.context_index = 2;
+ } else {
+ r.args = args_array;
+ r.context_index = context_index;
+ }
+ return r;
},
do_onchange: function(widget, processed) {
var self = this;
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help : https://help.launchpad.net/ListHelp