diff options
| author | Géry Debongnie <ged@odoo.com> | 2017-02-24 14:03:58 +0100 |
|---|---|---|
| committer | Aaron Bohy <aab@odoo.com> | 2017-04-11 19:44:38 +0200 |
| commit | 4a612171b3bf85f2902c582fcc658eea668a732e (patch) | |
| tree | 2e8c628788fcd4b99048d827ab08235b630031fb /addons/web/static/src/js | |
| parent | 064d7f462122bd5193e094d8b03c132cb43d14a2 (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.js | 16 |
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; }); |
