diff options
| author | Thibault Delavallée <tde@openerp.com> | 2015-11-18 12:52:17 +0100 |
|---|---|---|
| committer | Thibault Delavallée <tde@openerp.com> | 2015-11-18 13:48:27 +0100 |
| commit | 2e583eb7c92fcbdac3827ba25496324238f2aee5 (patch) | |
| tree | 064f729fd265a2ae8ae2eda0ad5b29c2218ea6e0 /addons/mail | |
| parent | e01e24aa9c4433772751a84f0e57eb1ffcdf1507 (diff) | |
[FIX] mail: chatter: re-re-add the read more / less
The read more / read less in chatter has been removed in the new timeline and
then cleaned timeline introduced at cc6d2aa995ab13645627eae49ae462fbf2b038e8.
This feature has been brought back at revision 486aab5098fd757dfad06e63b9f3bde51a78cb0e.
However a new cleaning removed the feature at revision 2a5f07e0b919d4209c2cb72c6dfdc8b86cd5c7ff.
This commit brings back this feature for the second time. Next one brings free
cookies.
Diffstat (limited to 'addons/mail')
| -rw-r--r-- | addons/mail/models/mail_message.py | 2 | ||||
| -rw-r--r-- | addons/mail/static/src/js/chat_manager.js | 1 | ||||
| -rw-r--r-- | addons/mail/static/src/js/thread.js | 6 | ||||
| -rw-r--r-- | addons/mail/static/src/less/thread.less | 4 | ||||
| -rw-r--r-- | addons/mail/static/src/xml/thread.xml | 13 |
5 files changed, 24 insertions, 2 deletions
diff --git a/addons/mail/models/mail_message.py b/addons/mail/models/mail_message.py index 3ec357c8610..2bf6c25d13d 100644 --- a/addons/mail/models/mail_message.py +++ b/addons/mail/models/mail_message.py @@ -315,7 +315,7 @@ class Message(models.Model): 'attachment_ids': attachment_ids, 'tracking_value_ids': tracking_value_ids, }) - body_short = tools.html_email_clean(message_dict['body'], remove=True) + body_short = tools.html_email_clean(message_dict['body'], shorten=True, remove=True) message_dict['body_short'] = body_short != message_dict['body'] and body_short or False return True diff --git a/addons/mail/static/src/js/chat_manager.js b/addons/mail/static/src/js/chat_manager.js index 56c9e6405d7..cadacd82c69 100644 --- a/addons/mail/static/src/js/chat_manager.js +++ b/addons/mail/static/src/js/chat_manager.js @@ -69,6 +69,7 @@ function make_message (data) { var msg = { id: data.id, author_id: data.author_id, + body_short: data.body_short || "", body: data.body || "", date: data.date, message_type: data.message_type, diff --git a/addons/mail/static/src/js/thread.js b/addons/mail/static/src/js/thread.js index 539b43740a3..6fd5838aa48 100644 --- a/addons/mail/static/src/js/thread.js +++ b/addons/mail/static/src/js/thread.js @@ -35,6 +35,12 @@ var Thread = Widget.extend({ this.$('.o_thread_message').removeClass('o_thread_selected_message'); $(event.currentTarget).toggleClass('o_thread_selected_message', !selected); }, + "click span.oe_mail_expand": function (event) { + event.preventDefault(); + var $source = $(event.currentTarget); + $source.parents('.o_thread_message_core').find('.o_mail_body_short').toggle(); + $source.parents('.o_thread_message_core').find('.o_mail_body_long').toggle(); + }, }, init: function (parent, options) { diff --git a/addons/mail/static/src/less/thread.less b/addons/mail/static/src/less/thread.less index a7c96c8334f..e28b949bd5d 100644 --- a/addons/mail/static/src/less/thread.less +++ b/addons/mail/static/src/less/thread.less @@ -113,6 +113,10 @@ } } + .o_mail_body_long { + display: none; + } + .o_mail_info { margin-bottom: 2px; .text-muted(); diff --git a/addons/mail/static/src/xml/thread.xml b/addons/mail/static/src/xml/thread.xml index 62f692a9901..394627940cb 100644 --- a/addons/mail/static/src/xml/thread.xml +++ b/addons/mail/static/src/xml/thread.xml @@ -109,7 +109,18 @@ </t> <p t-if="message.subject" class="o_mail_subject">Subject: <t t-esc="message.subject"/></p> <t t-if="!(message.tracking_value_ids && message.tracking_value_ids.length > 0)"> - <t t-raw="message.body"/> + <t t-if="message.body_short"> + <div class="o_mail_body_short"> + <t t-raw="message.body_short"/> + </div> + <div class="o_mail_body_long"> + <t t-raw="message.body"/> + <span class="oe_mail_expand"><a href="#">... read less</a></span> + </div> + </t> + <t t-if="! message.body_short"> + <t t-raw="message.body"/> + </t> </t> <t t-foreach="message.attachment_ids" t-as="attachment"> <t t-call="mail.Attachment"/> |
