From ccdba038889c12cd331e437d72ac19abfd579701 Mon Sep 17 00:00:00 2001 From: tsareg Date: Fri, 27 May 2016 14:01:43 +0300 Subject: [PATCH] Minor fixes for error dialogs --- conference.js | 2 -- modules/UI/UI.js | 39 +++++++++++++++++++++++++-------------- 2 files changed, 25 insertions(+), 16 deletions(-) diff --git a/conference.js b/conference.js index c2de11ff3..09d33d011 100644 --- a/conference.js +++ b/conference.js @@ -1056,8 +1056,6 @@ export default { this.useVideoStream(null); this.videoSwitchInProgress = false; console.error('failed to share local video', err); - - APP.UI.showDeviceErrorDialog('camera', err); }); } }, diff --git a/modules/UI/UI.js b/modules/UI/UI.js index 89e1589d0..40b12180d 100644 --- a/modules/UI/UI.js +++ b/modules/UI/UI.js @@ -1164,23 +1164,29 @@ UI.showDeviceErrorDialog = function (type, error) { throw new Error("Invalid device type"); } - if (window.localStorage[type + "DoNotShowErrorAgain-" + error.name] - === "true") { + if (error.name && error instanceof JitsiMeetJS.JitsiTrackError && + window.localStorage[type + "DoNotShowErrorAgain-" + error.name] + === "true") { return; } let titleKey = error.name === TrackErrors.PERMISSION_DENIED ? "dialog.permissionDenied" : "dialog.error", - errorMsg = JITSI_TRACK_ERROR_TO_MESSAGE_KEY_MAP[type][error.name], - doNotShowAgainMsg = "dialog.doNotShowWarningAgain", + errorMsg = JITSI_TRACK_ERROR_TO_MESSAGE_KEY_MAP[type][error.name] || + JITSI_TRACK_ERROR_TO_MESSAGE_KEY_MAP[type][TrackErrors.GENERAL], title = ``, - message = ` -

- `; + message = "

" + + (!JITSI_TRACK_ERROR_TO_MESSAGE_KEY_MAP[type][error.name] + && error.message + ? "
" + error.message + "
" + : "") + + ""; messageHandler.openDialog( title, @@ -1188,11 +1194,16 @@ UI.showDeviceErrorDialog = function (type, error) { false, {Ok: true}, function () { - let form = $.prompt.getPrompt(), - input = form.find("#doNotShowWarningAgain"); + let form = $.prompt.getPrompt(); - window.localStorage[type + "DoNotShowErrorAgain-" + error.name] - = input.prop("checked"); + if (form) { + let input = form.find("#doNotShowWarningAgain"); + + if (input.length) { + window.localStorage[type + "DoNotShowErrorAgain-" + + error.name] = input.prop("checked"); + } + } } );