summaryrefslogtreecommitdiff
path: root/addons/mail_bot/static/src/components/notification_request
diff options
context:
space:
mode:
Diffstat (limited to 'addons/mail_bot/static/src/components/notification_request')
-rw-r--r--addons/mail_bot/static/src/components/notification_request/notification_request.js90
-rw-r--r--addons/mail_bot/static/src/components/notification_request/notification_request.scss73
-rw-r--r--addons/mail_bot/static/src/components/notification_request/notification_request.xml31
3 files changed, 0 insertions, 194 deletions
diff --git a/addons/mail_bot/static/src/components/notification_request/notification_request.js b/addons/mail_bot/static/src/components/notification_request/notification_request.js
deleted file mode 100644
index ef9639c688b..00000000000
--- a/addons/mail_bot/static/src/components/notification_request/notification_request.js
+++ /dev/null
@@ -1,90 +0,0 @@
-odoo.define('mail_bot/static/src/components/notification_request/notification_request.js', function (require) {
-'use strict';
-
-const components = {
- PartnerImStatusIcon: require('mail/static/src/components/partner_im_status_icon/partner_im_status_icon.js'),
-};
-const useStore = require('mail/static/src/component_hooks/use_store/use_store.js');
-
-const { Component } = owl;
-
-class NotificationRequest extends Component {
-
- /**
- * @override
- */
- constructor(...args) {
- super(...args);
- useStore(props => {
- return {
- isDeviceMobile: this.env.messaging.device.isMobile,
- partnerRoot: this.env.messaging.partnerRoot
- ? this.env.messaging.partnerRoot.__state
- : undefined,
- };
- });
- }
-
- //--------------------------------------------------------------------------
- // Public
- //--------------------------------------------------------------------------
-
- /**
- * @returns {string}
- */
- getHeaderText() {
- return _.str.sprintf(
- this.env._t("%s has a request"),
- this.env.messaging.partnerRoot.nameOrDisplayName
- );
- }
-
- //--------------------------------------------------------------------------
- // Private
- //--------------------------------------------------------------------------
-
- /**
- * Handle the response of the user when prompted whether push notifications
- * are granted or denied.
- *
- * @private
- * @param {string} value
- */
- _handleResponseNotificationPermission(value) {
- // manually force recompute because the permission is not in the store
- this.env.messaging.messagingMenu.update();
- if (value !== 'granted') {
- this.env.services['bus_service'].sendNotification(
- this.env._t("Permission denied"),
- this.env._t("Odoo will not have the permission to send native notifications on this device.")
- );
- }
- }
-
- //--------------------------------------------------------------------------
- // Handlers
- //--------------------------------------------------------------------------
-
- /**
- * @private
- */
- _onClick() {
- const windowNotification = this.env.browser.Notification;
- const def = windowNotification && windowNotification.requestPermission();
- if (def) {
- def.then(this._handleResponseNotificationPermission.bind(this));
- }
- this.trigger('o-odoobot-request-clicked');
- }
-
-}
-
-Object.assign(NotificationRequest, {
- components,
- props: {},
- template: 'mail_bot.NotificationRequest',
-});
-
-return NotificationRequest;
-
-});
diff --git a/addons/mail_bot/static/src/components/notification_request/notification_request.scss b/addons/mail_bot/static/src/components/notification_request/notification_request.scss
deleted file mode 100644
index 8d4b38db848..00000000000
--- a/addons/mail_bot/static/src/components/notification_request/notification_request.scss
+++ /dev/null
@@ -1,73 +0,0 @@
-// ------------------------------------------------------------------
-// Layout
-// ------------------------------------------------------------------
-
-.o_NotificationRequest {
- @include o-mail-notification-list-item-layout();
-}
-
-.o_NotificationRequest_content {
- @include o-mail-notification-list-item-content-layout();
-}
-
-.o_NotificationRequest_core {
- @include o-mail-notification-list-item-core-layout();
-}
-
-.o_NotificationRequest_coreItem {
- @include o-mail-notification-list-item-core-item-layout();
-}
-
-.o_NotificationRequest_header {
- @include o-mail-notification-list-item-header-layout();
-}
-
-.o_NotificationRequest_image {
- @include o-mail-notification-list-item-image-layout();
-}
-
-.o_NotificationRequest_imageContainer {
- @include o-mail-notification-list-item-image-container-layout();
-}
-
-.o_NotificationRequest_inlineText {
- @include o-mail-notification-list-item-inline-text-layout();
-}
-
-.o_NotificationRequest_name {
- @include o-mail-notification-list-item-name-layout();
-}
-
-.o_NotificationRequest_partnerImStatusIcon {
- @include o-mail-notification-list-item-partner-im-status-icon-layout();
-}
-
-.o_NotificationRequest_sidebar {
- @include o-mail-notification-list-item-sidebar-layout();
-}
-
-// ------------------------------------------------------------------
-// Style
-// ------------------------------------------------------------------
-
-.o_NotificationRequest {
- @include o-mail-notification-list-item-style();
-
- &:hover {
- .o_NotificationRequest_partnerImStatusIcon {
- @include o-mail-notification-list-item-hover-partner-im-status-icon-style();
- }
- }
-}
-
-.o_NotificationRequest_core {
- @include o-mail-notification-list-item-core-style();
-}
-
-.o_NotificationRequest_name {
- @include o-mail-notification-list-item-bold-style();
-}
-
-.o_NotificationRequest_partnerImStatusIcon {
- @include o-mail-notification-list-item-partner-im-status-icon-style();
-}
diff --git a/addons/mail_bot/static/src/components/notification_request/notification_request.xml b/addons/mail_bot/static/src/components/notification_request/notification_request.xml
deleted file mode 100644
index 10b22bac2cd..00000000000
--- a/addons/mail_bot/static/src/components/notification_request/notification_request.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<templates xml:space="preserve">
-
- <t t-name="mail_bot.NotificationRequest" owl="1">
- <div class="o_NotificationRequest" t-on-click="_onClick">
- <div class="o_NotificationRequest_sidebar">
- <div class="o_NotificationRequest_imageContainer o_NotificationRequest_sidebarItem">
- <img class="o_NotificationRequest_image rounded-circle" src="/mail/static/src/img/odoobot.png" alt="Avatar of OdooBot"/>
- <PartnerImStatusIcon
- class="o_NotificationRequest_partnerImStatusIcon"
- t-att-class="{ 'o-mobile': env.messaging.device.isMobile }"
- partnerLocalId="env.messaging.partnerRoot.localId"
- />
- </div>
- </div>
- <div class="o_NotificationRequest_content">
- <div class="o_NotificationRequest_header">
- <span class="o_NotificationRequest_name" t-att-class="{ 'o-mobile': env.messaging.device.isMobile }">
- <t t-esc="getHeaderText()"/>
- </span>
- </div>
- <div class="o_NotificationRequest_core">
- <span class="o_NotificationRequest_coreItem o_NotificationRequest_inlineText">
- Enable desktop notifications to chat.
- </span>
- </div>
- </div>
- </div>
- </t>
-
-</templates>