summaryrefslogtreecommitdiff
path: root/addons/mail_bot/static/src/js/mailbot_service.js
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2019-01-09 19:59:27 +0100
committerChristophe Simonis <chs@odoo.com>2019-01-09 19:59:27 +0100
commitd7c5bc02cc2b27442f0d4c8aca70266762be2a32 (patch)
tree3a675d15b539a4474be38704405b318bebecdce7 /addons/mail_bot/static/src/js/mailbot_service.js
parent37b518f1749aff3d6ffb2246c32f2aa1e67d9067 (diff)
parent8aa8548d8ab68feb13f3bde51c557db84877e809 (diff)
[MERGE] forward port branch saas-12.1 up to 8aa8548d8ab
Diffstat (limited to 'addons/mail_bot/static/src/js/mailbot_service.js')
-rw-r--r--addons/mail_bot/static/src/js/mailbot_service.js36
1 files changed, 27 insertions, 9 deletions
diff --git a/addons/mail_bot/static/src/js/mailbot_service.js b/addons/mail_bot/static/src/js/mailbot_service.js
index 8863ea94ba0..5312e5d5129 100644
--- a/addons/mail_bot/static/src/js/mailbot_service.js
+++ b/addons/mail_bot/static/src/js/mailbot_service.js
@@ -12,15 +12,9 @@ var MailBotService = AbstractService.extend({
* @override
*/
start: function () {
- var self = this;
+ this._hasRequest = (window.Notification && window.Notification.permission === "default") || false;
if ('odoobot_initialized' in session && ! session.odoobot_initialized) {
- setTimeout(function () {
- session.odoobot_initialized = true;
- self._rpc({
- model: 'mail.channel',
- method: 'init_odoobot',
- });
- }, 2*60*1000);
+ this._showOdoobotTimeout();
}
},
@@ -60,7 +54,31 @@ var MailBotService = AbstractService.extend({
* @returns {boolean}
*/
isRequestingForNativeNotifications: function () {
- return window.Notification && window.Notification.permission === "default";
+ return this._hasRequest;
+ },
+ /**
+ * Called when user either accepts or refuses push notifications.
+ */
+ removeRequest: function () {
+ this._hasRequest = false;
+ },
+
+ //--------------------------------------------------------------------------
+ // Private
+ //--------------------------------------------------------------------------
+
+ /**
+ * @private
+ */
+ _showOdoobotTimeout: function () {
+ var self = this;
+ setTimeout(function () {
+ session.odoobot_initialized = true;
+ self._rpc({
+ model: 'mail.channel',
+ method: 'init_odoobot',
+ });
+ }, 2*60*1000);
},
});