summaryrefslogtreecommitdiff
path: root/addons/mail/static/src/models/thread/thread.js
diff options
context:
space:
mode:
authorDidier (did) <did@odoo.com>2020-11-25 10:06:02 +0000
committerDidier (did) <did@odoo.com>2020-12-02 10:28:51 +0000
commit7a57cf0b68b3a1dce4276c6456a94b05eec20f28 (patch)
tree738db5008f744bb1cfcdad02d29da5b5383f87db /addons/mail/static/src/models/thread/thread.js
parent1e5eba693bd17ef9202ecd298bf24e2e68133616 (diff)
[FIX] mail: set href on notification link.
This allow the user to open link in new tabs with middle click task-2387837 closes odoo/odoo#62304 Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Diffstat (limited to 'addons/mail/static/src/models/thread/thread.js')
-rw-r--r--addons/mail/static/src/models/thread/thread.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/addons/mail/static/src/models/thread/thread.js b/addons/mail/static/src/models/thread/thread.js
index bb23735c62e..e692f00fe87 100644
--- a/addons/mail/static/src/models/thread/thread.js
+++ b/addons/mail/static/src/models/thread/thread.js
@@ -1402,6 +1402,20 @@ function factory(dependencies) {
}
/**
+ * Compute an url string that can be used inside a href attribute
+ *
+ * @private
+ * @returns {string}
+ */
+ _computeUrl() {
+ const baseHref = this.env.session.url('/web');
+ if (this.model === 'mail.channel') {
+ return `${baseHref}#action=mail.action_discuss&active_id=${this.model}_${this.id}`;
+ }
+ return `${baseHref}#model=${this.model}&id=${this.id}`;
+ }
+
+ /**
* @private
* @param {Object} param0
* @param {boolean} param0.isTyping
@@ -2086,6 +2100,17 @@ function factory(dependencies) {
default: '',
dependencies: ['orderedOtherTypingMembers'],
}),
+ /**
+ * URL to access to the conversation.
+ */
+ url: attr({
+ compute: '_computeUrl',
+ default: '',
+ dependencies: [
+ 'id',
+ 'model',
+ ]
+ }),
uuid: attr(),
};