diff --git a/addons/mail/mail_message.py b/addons/mail/mail_message.py
index 8ac047fb77e..be88fa9de60 100644
--- a/addons/mail/mail_message.py
+++ b/addons/mail/mail_message.py
@@ -373,6 +373,7 @@ class mail_message(osv.Model):
'type': message.type,
'subtype': message.subtype_id.name if message.subtype_id else False,
'body': body_html,
+ 'body_original': message.body if message.type == 'email' else None,
'model': message.model,
'res_id': message.res_id,
'record_name': message.record_name,
diff --git a/addons/mail/static/src/js/mail.js b/addons/mail/static/src/js/mail.js
index 1f65058d4af..094a4f72de5 100644
--- a/addons/mail/static/src/js/mail.js
+++ b/addons/mail/static/src/js/mail.js
@@ -225,6 +225,7 @@ openerp.mail = function (session) {
this.name = datasets.name || false,
this.record_name = datasets.record_name || false,
this.body = datasets.body || '',
+ this.body_original = datasets.body_original || '',
this.vote_nb = datasets.vote_nb || 0,
this.has_voted = datasets.has_voted || false,
this.is_favorite = datasets.is_favorite || false,
@@ -976,6 +977,7 @@ openerp.mail = function (session) {
},
expender: function () {
+ var self = this;
this.$('.oe_msg_body:first').expander({
slicePoint: this.options.truncate_limit,
expandText: _t('read more'),
@@ -983,7 +985,15 @@ openerp.mail = function (session) {
detailClass: 'oe_msg_tail',
moreClass: 'oe_mail_expand',
lessClass: 'oe_mail_reduce',
- });
+ afterExpand: function(){
+ self.$('.oe_msg_body').hide();
+ self.$('.oe_msg_original').show();
+ },
+ onCollapse: function(){
+ self.$('.oe_msg_body').show();
+ self.$('.oe_msg_original').hide();
+ },
+ });
},
/**
diff --git a/addons/mail/static/src/xml/mail.xml b/addons/mail/static/src/xml/mail.xml
index 1e52105c739..e57b9d7d7a2 100644
--- a/addons/mail/static/src/xml/mail.xml
+++ b/addons/mail/static/src/xml/mail.xml
@@ -257,7 +257,10 @@