From 109b319d643b439ba279ececa41b0983baece9c2 Mon Sep 17 00:00:00 2001 From: Harshad Modi Date: Tue, 23 May 2017 14:04:08 +0530 Subject: [FIX] web: send date string in server compatible format Languages like Arabic (ar_SY), Hindi(hi_IN) do not use english digits to describe dates, and moment.js format function will keep these characters. So, the server will get date strings, and will be unable to use them. To see the problem, just type moment().locale('ar_SY').format('YYYY-MM-DD') into a browser console. In this commit, we simply force the locale to 'en' before sending data to the server. PR #17156 --- addons/web/static/src/js/fields/field_utils.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'addons/web/static/src/js/fields/field_utils.js') diff --git a/addons/web/static/src/js/fields/field_utils.js b/addons/web/static/src/js/fields/field_utils.js index aabf5e2ae95..0606af0d662 100644 --- a/addons/web/static/src/js/fields/field_utils.js +++ b/addons/web/static/src/js/fields/field_utils.js @@ -347,7 +347,7 @@ function parseDate(value, field, options) { } if (date.year() >= 1900) { date.toJSON = function () { - return this.format('YYYY-MM-DD'); + return this.clone().locale('en').format('YYYY-MM-DD'); }; return date; } @@ -394,7 +394,7 @@ function parseDateTime(value, field, options) { } if (datetime.year() >= 1900) { datetime.toJSON = function () { - return this.format('YYYY-MM-DD HH:mm:ss'); + return this.clone().locale('en').format('YYYY-MM-DD HH:mm:ss'); }; return datetime; } -- cgit v1.2.3