From 2dfbaceaec2dd3422fb92d735d0959299fc7b5eb Mon Sep 17 00:00:00 2001 From: Aaron Bohy Date: Thu, 15 Oct 2015 10:37:12 +0200 Subject: [PATCH] [IMP] mail,im_livechat: client action sidebar: 'unsubcribe' cross displayed for all channels --- .../static/src/xml/im_livechat_backend.xml | 6 ++-- addons/mail/static/src/js/client_action.js | 32 +++++++++---------- addons/mail/static/src/xml/client_action.xml | 3 +- 3 files changed, 18 insertions(+), 23 deletions(-) diff --git a/addons/im_livechat/static/src/xml/im_livechat_backend.xml b/addons/im_livechat/static/src/xml/im_livechat_backend.xml index 57b438240b2..1e3efca1959 100644 --- a/addons/im_livechat/static/src/xml/im_livechat_backend.xml +++ b/addons/im_livechat/static/src/xml/im_livechat_backend.xml @@ -4,13 +4,11 @@ livechat + true Livechat - true - - - true + diff --git a/addons/mail/static/src/js/client_action.js b/addons/mail/static/src/js/client_action.js index 777781aab34..84bb01b2461 100644 --- a/addons/mail/static/src/js/client_action.js +++ b/addons/mail/static/src/js/client_action.js @@ -106,14 +106,8 @@ var ChatAction = Widget.extend(ControlPanelMixin, { }, "click .o_mail_partner_unpin": function (event) { event.stopPropagation(); - var self = this; var channel_id = $(event.target).data("channel-id"); - chat_manager - .unsubscribe(chat_manager.get_channel(channel_id)) - .then(function () { - self.render_sidebar(); - self.set_channel(chat_manager.get_channel("channel_inbox")); - }); + this.unsubscribe_from_channel(chat_manager.get_channel(channel_id)); }, }, @@ -326,6 +320,19 @@ var ChatAction = Widget.extend(ControlPanelMixin, { }); }); }, + unsubscribe_from_channel: function (channel) { + var self = this; + chat_manager + .unsubscribe(channel) + .then(this.render_sidebar.bind(this)) + .then(this.set_channel.bind(this, chat_manager.get_channel("channel_inbox"))) + .then(function () { + if (_.contains(['public', 'private'], channel.type)) { + var msg = _.str.sprintf(_t('You unsubscribed from %s.'), channel.name); + self.do_notify(_t("Unsubscribed"), msg); + } + }); + }, get_thread_rendering_options: function () { return { @@ -459,16 +466,7 @@ var ChatAction = Widget.extend(ControlPanelMixin, { }, on_click_button_unsubscribe: function () { - var self = this; - var channel = this.channel; - chat_manager - .unsubscribe(channel) - .then(this.set_channel.bind(this, chat_manager.get_channel("channel_inbox"))) - .then(this.render_sidebar.bind(this)) - .then(function () { - var msg = _.str.sprintf(_t('You unsubscribed from %s.'), channel.name); - self.do_notify(_t("Unsubscribed"), msg); - }); + this.unsubscribe_from_channel(this.channel); }, on_click_button_settings: function() { this.do_action({ diff --git a/addons/mail/static/src/xml/client_action.xml b/addons/mail/static/src/xml/client_action.xml index b9271646d0e..728e0716960 100644 --- a/addons/mail/static/src/xml/client_action.xml +++ b/addons/mail/static/src/xml/client_action.xml @@ -32,7 +32,6 @@ true - true Open chat @@ -61,7 +60,7 @@
- +