diff --git a/config.js b/config.js index 7949818cb..80316e091 100644 --- a/config.js +++ b/config.js @@ -949,12 +949,18 @@ var config = { // chromeExtensionBanner: { // // The chrome extension to be installed address // url: 'https://chrome.google.com/webstore/detail/jitsi-meetings/kglhbbefdnlheedjiejgomgmfplipfeb', + // edgeUrl: 'https://microsoftedge.microsoft.com/addons/detail/jitsi-meetings/eeecajlpbgjppibfledfihobcabccihn', // // Extensions info which allows checking if they are installed or not // chromeExtensionsInfo: [ // { // id: 'kglhbbefdnlheedjiejgomgmfplipfeb', // path: 'jitsi-logo-48x48.png' + // }, + // // Edge extension info + // { + // id: 'eeecajlpbgjppibfledfihobcabccihn', + // path: 'jitsi-logo-48x48.png' // } // ] // }, diff --git a/lang/main.json b/lang/main.json index 4f7a33f28..4f5320f90 100644 --- a/lang/main.json +++ b/lang/main.json @@ -116,6 +116,7 @@ }, "chromeExtensionBanner": { "buttonText": "Install Chrome Extension", + "buttonTextEdge": "Install Edge Extension", "close": "Close", "dontShowAgain": "Don’t show me this again", "installExtensionText": "Install the extension for Google Calendar and Office 365 integration" diff --git a/react/features/chrome-extension-banner/components/ChromeExtensionBanner.web.js b/react/features/chrome-extension-banner/components/ChromeExtensionBanner.web.js index 0264b251f..2ba4ad8d2 100644 --- a/react/features/chrome-extension-banner/components/ChromeExtensionBanner.web.js +++ b/react/features/chrome-extension-banner/components/ChromeExtensionBanner.web.js @@ -104,6 +104,7 @@ class ChromeExtensionBanner extends PureComponent { shouldShow: false }; + this.isEdge = /Edg(e)?/.test(navigator.userAgent); this._onClosePressed = this._onClosePressed.bind(this); this._onInstallExtensionClick = this._onInstallExtensionClick.bind(this); this._shouldNotRender = this._shouldNotRender.bind(this); @@ -196,8 +197,10 @@ class ChromeExtensionBanner extends PureComponent { * @returns {void} */ _onInstallExtensionClick() { + const { edgeUrl, url } = this.props.bannerCfg; + sendAnalytics(createChromeExtensionBannerEvent(true)); - window.open(this.props.bannerCfg.url); + window.open(this.isEdge && edgeUrl ? edgeUrl : url); this.setState({ closePressed: true }); } @@ -264,7 +267,7 @@ class ChromeExtensionBanner extends PureComponent { return null; } - const { t } = this.props; + const { bannerCfg, t } = this.props; const mainClassNames = this.props.conference ? 'chrome-extension-banner chrome-extension-banner__pos_in_meeting' : 'chrome-extension-banner'; @@ -306,7 +309,10 @@ class ChromeExtensionBanner extends PureComponent {
- { t('chromeExtensionBanner.buttonText') } + { t(this.isEdge && bannerCfg.edgeUrl + ? 'chromeExtensionBanner.buttonTextEdge' + : 'chromeExtensionBanner.buttonText') + }