summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js
diff options
context:
space:
mode:
authorGéry Debongnie <ged@odoo.com>2017-02-24 14:03:58 +0100
committerAaron Bohy <aab@odoo.com>2017-04-11 19:44:38 +0200
commit4a612171b3bf85f2902c582fcc658eea668a732e (patch)
tree2e8c628788fcd4b99048d827ab08235b630031fb /addons/web/static/src/js
parent064d7f462122bd5193e094d8b03c132cb43d14a2 (diff)
[FIX] web: basic model now parse dates on lists
Before this commit, the BasicModel didn't parse the dates when loading data for a list. But the rest of the web client assumes that data is properly parsed into their correct types, so a moment instance for date and datetime. Also, uppercase field_utils and properly reorder imports
Diffstat (limited to 'addons/web/static/src/js')
-rw-r--r--addons/web/static/src/js/views/basic/basic_model.js16
1 files changed, 11 insertions, 5 deletions
diff --git a/addons/web/static/src/js/views/basic/basic_model.js b/addons/web/static/src/js/views/basic/basic_model.js
index 15921f4332e..9d8df720436 100644
--- a/addons/web/static/src/js/views/basic/basic_model.js
+++ b/addons/web/static/src/js/views/basic/basic_model.js
@@ -80,9 +80,9 @@ var AbstractModel = require('web.AbstractModel');
var concurrency = require('web.concurrency');
var Context = require('web.Context');
var data = require('web.data'); // TODO: remove dependency to data.js
+var fieldUtils = require('web.field_utils');
var pyeval = require('web.pyeval');
var session = require('web.session');
-var field_utils = require('web.field_utils');
var x2ManyCommands = {
// (0, _, {values})
@@ -537,10 +537,10 @@ var BasicModel = AbstractModel.extend({
});
} else if (field.type === 'date') {
// process date: convert into Date object
- record._changes[name] = field_utils.parse_date(result[name]);
+ record._changes[name] = fieldUtils.parse_date(result[name]);
} else if (field.type === 'datetime') {
// process datetime: convert into Date object
- record._changes[name] = field_utils.parse_datetime(result[name]);
+ record._changes[name] = fieldUtils.parse_datetime(result[name]);
} else {
record._changes[name] = result[name];
}
@@ -1278,10 +1278,10 @@ var BasicModel = AbstractModel.extend({
}
} else if (field.type === 'date') {
// process data: convert into Date object
- record.data[name] = field_utils.parse_date(val);
+ record.data[name] = fieldUtils.parse_date(val);
} else if (field.type === 'datetime') {
// process datetime: convert into Date object
- record.data[name] = field_utils.parse_datetime(val);
+ record.data[name] = fieldUtils.parse_datetime(val);
}
});
}).then(function () {
@@ -1926,6 +1926,12 @@ var BasicModel = AbstractModel.extend({
dataPoint.data[name] = r.id;
}
+ if (field.type === 'date') {
+ dataPoint.data[name] = fieldUtils.parse_date(dataPoint.data[name]);
+ }
+ if (field.type === 'datetime') {
+ dataPoint.data[name] = fieldUtils.parse_datetime(dataPoint.data[name]);
+ }
});
return dataPoint.id;
});