summaryrefslogtreecommitdiff
path: root/addons/mail/static/src
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2017-12-06 12:02:58 +0100
committerChristophe Simonis <chs@odoo.com>2017-12-06 12:02:58 +0100
commit8ef7af6afe54fbd59051bbbce76daadd6fdb0e86 (patch)
treeb21971e972eacc87e198fbc38b48ac9b70d168fc /addons/mail/static/src
parent010add290342ae1e2887450a381e0d1f0acd34e5 (diff)
parentf96a797fe6238306ec70d3db013b8a4d348ef181 (diff)
[MERGE] forward port branch 11.0 up to f96a797fe62
Diffstat (limited to 'addons/mail/static/src')
-rw-r--r--addons/mail/static/src/js/activity.js12
-rw-r--r--addons/mail/static/src/js/thread.js2
-rw-r--r--addons/mail/static/src/xml/activity.xml4
-rw-r--r--addons/mail/static/src/xml/thread.xml4
4 files changed, 15 insertions, 7 deletions
diff --git a/addons/mail/static/src/js/activity.js b/addons/mail/static/src/js/activity.js
index a2ae24dff91..4d3d7adee50 100644
--- a/addons/mail/static/src/js/activity.js
+++ b/addons/mail/static/src/js/activity.js
@@ -20,8 +20,7 @@ var setDelayLabel = function(activities){
var today = moment().startOf('day');
_.each(activities, function(activity){
var to_display = '';
- var deadline = moment(activity.date_deadline + ' 00:00:00');
- var diff = deadline.diff(today, 'days', true); // true means no rounding
+ var diff = activity.date_deadline.diff(today, 'days', true); // true means no rounding
if(diff === 0){
to_display = _t('Today');
}else{
@@ -72,10 +71,17 @@ var AbstractActivityField = AbstractField.extend({
});
}
return $.when(fetch_def).then(function (results) {
+ // convert create_date and date_deadline to moments
+ _.each(results, function (activity) {
+ activity.create_date = moment(time.auto_str_to_date(activity.create_date));
+ activity.date_deadline = moment(time.auto_str_to_date(activity.date_deadline));
+ });
+
// filter out activities that are no longer linked to this record
self.activities = _.filter(self.activities.concat(results || []), function (activity) {
return _.contains(self.value.res_ids, activity.id);
});
+
// sort activities by due date
self.activities = _.sortBy(self.activities, 'date_deadline');
});
@@ -122,7 +128,6 @@ var Activity = AbstractActivityField.extend({
var fetch_def = this.dp.add(this._readActivities());
return fetch_def.then(function () {
_.each(self.activities, function (activity) {
- activity.time_ago = moment(time.auto_str_to_date(activity.create_date)).fromNow();
if (activity.note) {
activity.note = utils.parse_and_transform(activity.note, utils.add_link);
}
@@ -135,6 +140,7 @@ var Activity = AbstractActivityField.extend({
nbPlannedActivities: nbActivities.planned,
nbTodayActivities: nbActivities.today,
nbOverdueActivities: nbActivities.overdue,
+ date_format: time.getLangDatetimeFormat(),
}));
} else {
self.$el.empty();
diff --git a/addons/mail/static/src/js/thread.js b/addons/mail/static/src/js/thread.js
index ec5ffdda1a9..68a01df2345 100644
--- a/addons/mail/static/src/js/thread.js
+++ b/addons/mail/static/src/js/thread.js
@@ -2,6 +2,7 @@ odoo.define('mail.ChatThread', function (require) {
"use strict";
var core = require('web.core');
+var time = require('web.time');
var DocumentViewer = require('mail.DocumentViewer');
var Widget = require('web.Widget');
@@ -111,6 +112,7 @@ var Thread = Widget.extend({
messages: msgs,
options: options,
ORDER: ORDER,
+ date_format: time.getLangDatetimeFormat(),
}));
this.attachments = _.uniq(_.flatten(_.map(messages, 'attachment_ids')));
diff --git a/addons/mail/static/src/xml/activity.xml b/addons/mail/static/src/xml/activity.xml
index 2b0316ad59f..83dc4295e73 100644
--- a/addons/mail/static/src/xml/activity.xml
+++ b/addons/mail/static/src/xml/activity.xml
@@ -40,13 +40,13 @@
</dd>
<dt>Created on</dt>
<dd class="mb8">
- <t t-esc="moment(activity.create_date)"/>
+ <t t-esc="activity.create_date.format(date_format)"/>
</dd>
<dt>Assigned to</dt>
<dd class="mb8">
<img t-attf-src="/web/image#{activity.user_id[0] >= 0 ? ('/res.users/' + activity.user_id[0] + '/image_small') : ''}" height="18" width="18" class="img-circle mr4" t-att-title="activity.create_uid[1]"/>
<b><t t-esc="activity.user_id[1]"/></b>
- <em>, due on </em><span t-attf-class="o_activity_color_#{activity.state}"><t t-esc="moment(activity.date_deadline)"/></span>
+ <em>, due on </em><span t-attf-class="o_activity_color_#{activity.state}"><t t-esc="activity.date_deadline.format(date_format)"/></span>
</dd>
</dl>
</div>
diff --git a/addons/mail/static/src/xml/thread.xml b/addons/mail/static/src/xml/thread.xml
index 89f0921a6cc..6f5f5e71cfe 100644
--- a/addons/mail/static/src/xml/thread.xml
+++ b/addons/mail/static/src/xml/thread.xml
@@ -145,7 +145,7 @@
t-att-src="message.avatar_src"
class="o_thread_message_avatar img-circle"/>
</t>
- <span t-if="!message.display_author" t-att-title="message.date" class="o_thread_message_side_date">
+ <span t-if="!message.display_author" t-att-title="message.date.format(date_format)" class="o_thread_message_side_date">
<t t-esc="message.date.format('hh:mm')"/>
</span>
<i t-if="!message.display_author and options.display_stars and message.message_type != 'notification'"
@@ -172,7 +172,7 @@
<t t-esc="message.displayed_author"/>
</strong>
- - <small class="o_mail_timestamp" t-att-title="message.date"><t t-esc="message.hour"/></small>
+ - <small class="o_mail_timestamp" t-att-title="message.date.format(date_format)"><t t-esc="message.hour"/></small>
<t t-if="message.model and (message.model != 'mail.channel') and options.display_document_link">
<a t-att-href="message.url" t-att-data-oe-model="message.model" t-att-data-oe-id="message.res_id" class="o_document_link">on <t t-esc="message.record_name"/></a>
</t>