Browse Source

Merge pull request #329 from trojikman/11.0-mail_sent

commit is created by 👷‍♂️ Merge Bot: https://odoo-devops.readthedocs.io/en/latest/git/github-merge-bot.html
pull/336/head
Mitchell Admin 3 years ago
committed by GitHub
parent
commit
e92bca3acc
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      mail_sent/__manifest__.py
  2. 5
      mail_sent/doc/changelog.rst
  3. 62
      mail_sent/static/src/js/sent.js
  4. 12
      mail_sent/static/src/xml/menu.xml

4
mail_sent/__manifest__.py

@ -1,9 +1,11 @@
# Copyright 2020 Denis Mudarisov <https://github.com/trojikman>
# License MIT (https://opensource.org/licenses/MIT).
{
"name": "Sentbox",
"summary": """Quick way to find sent messages""",
"category": "Discuss",
"images": ["images/menu.png"],
"version": "11.0.1.1.0",
"version": "11.0.1.1.1",
"author": "IT-Projects LLC, Ivan Yelizariev, Pavel Romanchenko",
"support": "apps@itpp.dev",
"website": "https://it-projects.info",

5
mail_sent/doc/changelog.rst

@ -1,3 +1,8 @@
`1.1.1`
-------
- **Fix:** adaptation to changes in `mail_base`
`1.1.0`
-------

62
mail_sent/static/src/js/sent.js

@ -1,4 +1,6 @@
odoo.define("mail_sent.sent", function(require) {
/* Copyright 2020 Denis Mudarisov <https://github.com/trojikman>
License MIT (https://opensource.org/licenses/MIT). */
odoo.define("mail_sent.sent", function (require) {
"use strict";
var core = require("web.core");
@ -9,7 +11,7 @@ odoo.define("mail_sent.sent", function(require) {
var ChatAction = core.action_registry.get("mail.chat.instant_messaging");
ChatAction.include({
init: function(parent, action, options) {
init: function (parent, action, options) {
this._super.apply(this, arguments);
var channel_name = "channel_sent";
// Add channel Sent for show "Send message" button
@ -18,44 +20,44 @@ odoo.define("mail_sent.sent", function(require) {
this.channels_display_subject.push(channel_name);
},
update_message_on_current_channel: function(current_channel_id, message) {
update_message_on_current_channel: function (current_channel_id, message) {
var result = this._super.apply(this, arguments);
var sent = current_channel_id === "channel_sent" && !message.is_sent;
return sent || result;
},
});
// Inherit class and override methods
var chat_manager_super = _.clone(chat_manager);
chat_manager.get_properties = function(msg) {
var properties = chat_manager_super.get_properties.apply(this, arguments);
properties.is_sent = this.property_descr("channel_sent", msg, this);
return properties;
};
chat_manager.is_ready.then(function () {
// Inherit class and override methods
var chat_manager_super = _.clone(chat_manager);
chat_manager.get_properties = function (msg) {
var properties = chat_manager_super.get_properties.apply(this, arguments);
properties.is_sent = this.property_descr("channel_sent", msg, this);
return properties;
};
chat_manager.set_channel_flags = function(data, msg) {
chat_manager_super.set_channel_flags.apply(this, arguments);
if (data.sent && data.author_id[0] === session.partner_id) {
msg.is_sent = true;
}
return msg;
};
chat_manager.set_channel_flags = function (data, msg) {
chat_manager_super.set_channel_flags.apply(this, arguments);
if (data.sent && data.author_id[0] === session.partner_id) {
msg.is_sent = true;
}
return msg;
};
chat_manager.get_channel_array = function(msg) {
var arr = chat_manager_super.get_channel_array.apply(this, arguments);
return arr.concat("channel_sent");
};
chat_manager.get_channel_array = function (msg) {
var arr = chat_manager_super.get_channel_array.apply(this, arguments);
return arr.concat("channel_sent");
};
chat_manager.get_domain = function(channel) {
return channel.id === "channel_sent"
? [
["sent", "=", true],
["author_id.user_ids", "in", [session.uid]],
]
: chat_manager_super.get_domain.apply(this, arguments);
};
chat_manager.get_domain = function (channel) {
return channel.id === "channel_sent"
? [
["sent", "=", true],
["author_id.user_ids", "in", [session.uid]],
]
: chat_manager_super.get_domain.apply(this, arguments);
};
chat_manager.is_ready.then(function() {
// Add sent channel
chat_manager.add_channel({
id: "channel_sent",

12
mail_sent/static/src/xml/menu.xml

@ -7,9 +7,10 @@
t-attf-class="o_mail_chat_title_main o_mail_chat_channel_item #{(active_channel_id == 'channel_sent') ? 'o_active': ''}"
data-channel-id="channel_sent"
>
<span class="o_channel_name mail_sent"> <i
class="fa fa-send-o"
/> Sent </span>
<span class="o_channel_name mail_sent">
<i class="fa fa-send-o" />
Sent
</span>
</div>
</t>
</t>
@ -18,8 +19,9 @@
<t t-jquery="t:last-child" t-operation="after">
<t t-if="options.channel_id==='channel_sent'">
<div class="o_thread_title">No sent messages</div>
<div
>You can send messages and then these messages will appear here.</div>
<div>
You can send messages and then these messages will appear here.
</div>
</t>
</t>
</t>

Loading…
Cancel
Save