| 
				
			 | 
			
			
				
				@@ -1,6 +1,7 @@ 
			 | 
		
		
	
		
			
			| 
				1
			 | 
			
				1
			 | 
			
			
				
				 /* global $, APP, toastr, Impromptu */ 
			 | 
		
		
	
		
			
			| 
				2
			 | 
			
				2
			 | 
			
			
				
				  
			 | 
		
		
	
		
			
			| 
				3
			 | 
			
				3
			 | 
			
			
				
				 import UIUtil from './UIUtil'; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				4
			 | 
			
			
				
				+import jitsiLocalStorage from '../../util/JitsiLocalStorage'; 
			 | 
		
		
	
		
			
			| 
				4
			 | 
			
				5
			 | 
			
			
				
				  
			 | 
		
		
	
		
			
			| 
				5
			 | 
			
				6
			 | 
			
			
				
				 /** 
			 | 
		
		
	
		
			
			| 
				6
			 | 
			
				7
			 | 
			
			
				
				  * Flag for enable/disable of the notifications. 
			 | 
		
		
	
	
		
			
			| 
				
			 | 
			
			
				
				@@ -20,6 +21,91 @@ let popupEnabled = true; 
			 | 
		
		
	
		
			
			| 
				20
			 | 
			
				21
			 | 
			
			
				
				  */ 
			 | 
		
		
	
		
			
			| 
				21
			 | 
			
				22
			 | 
			
			
				
				 let twoButtonDialog = null; 
			 | 
		
		
	
		
			
			| 
				22
			 | 
			
				23
			 | 
			
			
				
				  
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				24
			 | 
			
			
				
				+/** 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				25
			 | 
			
			
				
				+ * Generates html for dont show again checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				26
			 | 
			
			
				
				+ * @param {object} options options 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				27
			 | 
			
			
				
				+ * @param {string} options.id the id of the checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				28
			 | 
			
			
				
				+ * @param {string} options.textKey the key for the text displayed next to 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				29
			 | 
			
			
				
				+ * checkbox 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				30
			 | 
			
			
				
				+ * @param {boolean} options.checked if true the checkbox is foing to be checked 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				31
			 | 
			
			
				
				+ * by default. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				32
			 | 
			
			
				
				+ * @returns {string} 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				33
			 | 
			
			
				
				+ */ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				34
			 | 
			
			
				
				+function generateDontShowCheckbox(options) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				35
			 | 
			
			
				
				+    if(!isDontShowAgainEnabled(options)) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				36
			 | 
			
			
				
				+        return ""; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				37
			 | 
			
			
				
				+    } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				38
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				39
			 | 
			
			
				
				+    let checked 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				40
			 | 
			
			
				
				+        = (options.checked === true) ? "checked" : ""; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				41
			 | 
			
			
				
				+    return `<br /> 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				42
			 | 
			
			
				
				+        <label> 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				43
			 | 
			
			
				
				+            <input type='checkbox' ${checked} id='${options.id}' /> 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				44
			 | 
			
			
				
				+            <span data-i18n='${options.textKey}'></span> 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				45
			 | 
			
			
				
				+        </label>`; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				46
			 | 
			
			
				
				+} 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				47
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				48
			 | 
			
			
				
				+/** 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				49
			 | 
			
			
				
				+ * Checks whether the dont show again checkbox was checked before. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				50
			 | 
			
			
				
				+ * @param {object} options - options for dont show again checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				51
			 | 
			
			
				
				+ * @param {string} options.id the id of the checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				52
			 | 
			
			
				
				+ * @param {string} options.localStorageKey the key for the local storage. if 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				53
			 | 
			
			
				
				+ * not provided options.id will be used. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				54
			 | 
			
			
				
				+ * @returns {boolean} true if the dialog mustn't be displayed and 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				55
			 | 
			
			
				
				+ * false otherwise. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				56
			 | 
			
			
				
				+ */ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				57
			 | 
			
			
				
				+function dontShowTheDialog(options) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				58
			 | 
			
			
				
				+    if(isDontShowAgainEnabled(options)) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				59
			 | 
			
			
				
				+        if(jitsiLocalStorage.getItem(options.localStorageKey || options.id) 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				60
			 | 
			
			
				
				+            === "true") { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				61
			 | 
			
			
				
				+            return true; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				62
			 | 
			
			
				
				+        } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				63
			 | 
			
			
				
				+    } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				64
			 | 
			
			
				
				+    return false; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				65
			 | 
			
			
				
				+} 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				66
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				67
			 | 
			
			
				
				+/** 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				68
			 | 
			
			
				
				+ * Wraps the submit function to process the dont show again status and store 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				69
			 | 
			
			
				
				+ * it. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				70
			 | 
			
			
				
				+ * @param {object} options - options for dont show again checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				71
			 | 
			
			
				
				+ * @param {string} options.id the id of the checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				72
			 | 
			
			
				
				+ * @param {Array} options.buttonValues The button values that will trigger 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				73
			 | 
			
			
				
				+ * storing he checkbox value 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				74
			 | 
			
			
				
				+ * @param {string} options.localStorageKey the key for the local storage. if 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				75
			 | 
			
			
				
				+ * not provided options.id will be used. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				76
			 | 
			
			
				
				+ * @param {Function} submitFunction the submit function to be wrapped 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				77
			 | 
			
			
				
				+ * @returns {Function} wrapped function 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				78
			 | 
			
			
				
				+ */ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				79
			 | 
			
			
				
				+function dontShowAgainSubmitFunctionWrapper(options, submitFunction) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				80
			 | 
			
			
				
				+    if(isDontShowAgainEnabled(options)) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				81
			 | 
			
			
				
				+        return (...args) => { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				82
			 | 
			
			
				
				+            console.debug(args, options.buttonValues); 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				83
			 | 
			
			
				
				+            //args[1] is the value associated with the pressed button 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				84
			 | 
			
			
				
				+            if(!options.buttonValues || options.buttonValues.length === 0 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				85
			 | 
			
			
				
				+                || options.buttonValues.indexOf(args[1]) !== -1 ) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				86
			 | 
			
			
				
				+                let checkbox = $(`#${options.id}`); 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				87
			 | 
			
			
				
				+                if (checkbox.length) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				88
			 | 
			
			
				
				+                    jitsiLocalStorage.setItem( 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				89
			 | 
			
			
				
				+                        options.localStorageKey || options.id, 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				90
			 | 
			
			
				
				+                        checkbox.prop("checked")); 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				91
			 | 
			
			
				
				+                } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				92
			 | 
			
			
				
				+            } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				93
			 | 
			
			
				
				+            submitFunction(...args); 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				94
			 | 
			
			
				
				+        }; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				95
			 | 
			
			
				
				+    } else { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				96
			 | 
			
			
				
				+        return submitFunction; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				97
			 | 
			
			
				
				+    } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				98
			 | 
			
			
				
				+} 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				99
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				100
			 | 
			
			
				
				+/** 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				101
			 | 
			
			
				
				+ * Check whether dont show again checkbox is enabled or not. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				102
			 | 
			
			
				
				+ * @param {object} options - options for dont show again checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				103
			 | 
			
			
				
				+ * @returns {boolean} true if enabled and false if not. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				104
			 | 
			
			
				
				+ */ 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				105
			 | 
			
			
				
				+function isDontShowAgainEnabled(options) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				106
			 | 
			
			
				
				+    return typeof options === "object"; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				107
			 | 
			
			
				
				+} 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				108
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				23
			 | 
			
				109
			 | 
			
			
				
				 var messageHandler = { 
			 | 
		
		
	
		
			
			| 
				24
			 | 
			
				110
			 | 
			
			
				
				     OK: "dialog.OK", 
			 | 
		
		
	
		
			
			| 
				25
			 | 
			
				111
			 | 
			
			
				
				     CANCEL: "dialog.Cancel", 
			 | 
		
		
	
	
		
			
			| 
				
			 | 
			
			
				
				@@ -72,6 +158,16 @@ var messageHandler = { 
			 | 
		
		
	
		
			
			| 
				72
			 | 
			
				158
			 | 
			
			
				
				      *        the dialog is opened 
			 | 
		
		
	
		
			
			| 
				73
			 | 
			
				159
			 | 
			
			
				
				      * @param defaultButton index of default button which will be activated when 
			 | 
		
		
	
		
			
			| 
				74
			 | 
			
				160
			 | 
			
			
				
				      *        the user press 'enter'. Indexed from 0. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				161
			 | 
			
			
				
				+     * @param {object} dontShowAgain - options for dont show again checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				162
			 | 
			
			
				
				+     * @param {string} dontShowAgain.id the id of the checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				163
			 | 
			
			
				
				+     * @param {string} dontShowAgain.textKey the key for the text displayed 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				164
			 | 
			
			
				
				+     * next to checkbox 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				165
			 | 
			
			
				
				+     * @param {boolean} dontShowAgain.checked if true the checkbox is foing to 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				166
			 | 
			
			
				
				+     * be checked 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				167
			 | 
			
			
				
				+     * @param {Array} dontShowAgain.buttonValues The button values that will 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				168
			 | 
			
			
				
				+     * trigger storing the checkbox value 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				169
			 | 
			
			
				
				+     * @param {string} dontShowAgain.localStorageKey the key for the local 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				170
			 | 
			
			
				
				+     * storage. if not provided dontShowAgain.id will be used. 
			 | 
		
		
	
		
			
			| 
				75
			 | 
			
				171
			 | 
			
			
				
				      * @return the prompt that was created, or null 
			 | 
		
		
	
		
			
			| 
				76
			 | 
			
				172
			 | 
			
			
				
				      */ 
			 | 
		
		
	
		
			
			| 
				77
			 | 
			
				173
			 | 
			
			
				
				     openTwoButtonDialog: function(options) { 
			 | 
		
		
	
	
		
			
			| 
				
			 | 
			
			
				
				@@ -87,12 +183,20 @@ var messageHandler = { 
			 | 
		
		
	
		
			
			| 
				87
			 | 
			
				183
			 | 
			
			
				
				             size, 
			 | 
		
		
	
		
			
			| 
				88
			 | 
			
				184
			 | 
			
			
				
				             defaultButton, 
			 | 
		
		
	
		
			
			| 
				89
			 | 
			
				185
			 | 
			
			
				
				             wrapperClass, 
			 | 
		
		
	
		
			
			| 
				90
			 | 
			
				
			 | 
			
			
				
				-            classes 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				186
			 | 
			
			
				
				+            classes, 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				187
			 | 
			
			
				
				+            dontShowAgain 
			 | 
		
		
	
		
			
			| 
				91
			 | 
			
				188
			 | 
			
			
				
				         } = options; 
			 | 
		
		
	
		
			
			| 
				92
			 | 
			
				189
			 | 
			
			
				
				  
			 | 
		
		
	
		
			
			| 
				93
			 | 
			
				190
			 | 
			
			
				
				         if (!popupEnabled || twoButtonDialog) 
			 | 
		
		
	
		
			
			| 
				94
			 | 
			
				191
			 | 
			
			
				
				             return null; 
			 | 
		
		
	
		
			
			| 
				95
			 | 
			
				192
			 | 
			
			
				
				  
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				193
			 | 
			
			
				
				+        if(dontShowTheDialog(dontShowAgain)) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				194
			 | 
			
			
				
				+            // Maybe we should pass some parameters here? I'm not sure 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				195
			 | 
			
			
				
				+            // and currently we don't need any parameters. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				196
			 | 
			
			
				
				+            submitFunction(); 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				197
			 | 
			
			
				
				+            return null; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				198
			 | 
			
			
				
				+        } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				199
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				96
			 | 
			
				200
			 | 
			
			
				
				         var buttons = []; 
			 | 
		
		
	
		
			
			| 
				97
			 | 
			
				201
			 | 
			
			
				
				  
			 | 
		
		
	
		
			
			| 
				98
			 | 
			
				202
			 | 
			
			
				
				         var leftButton = leftButtonKey ? 
			 | 
		
		
	
	
		
			
			| 
				
			 | 
			
			
				
				@@ -108,6 +212,7 @@ var messageHandler = { 
			 | 
		
		
	
		
			
			| 
				108
			 | 
			
				212
			 | 
			
			
				
				         if (msgKey) { 
			 | 
		
		
	
		
			
			| 
				109
			 | 
			
				213
			 | 
			
			
				
				             message = APP.translation.generateTranslationHTML(msgKey); 
			 | 
		
		
	
		
			
			| 
				110
			 | 
			
				214
			 | 
			
			
				
				         } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				215
			 | 
			
			
				
				+        message += generateDontShowCheckbox(dontShowAgain); 
			 | 
		
		
	
		
			
			| 
				111
			 | 
			
				216
			 | 
			
			
				
				         classes = classes || this._getDialogClasses(size); 
			 | 
		
		
	
		
			
			| 
				112
			 | 
			
				217
			 | 
			
			
				
				         if (wrapperClass) { 
			 | 
		
		
	
		
			
			| 
				113
			 | 
			
				218
			 | 
			
			
				
				             classes.prompt += ` ${wrapperClass}`; 
			 | 
		
		
	
	
		
			
			| 
				
			 | 
			
			
				
				@@ -122,13 +227,13 @@ var messageHandler = { 
			 | 
		
		
	
		
			
			| 
				122
			 | 
			
				227
			 | 
			
			
				
				             loaded: loadedFunction, 
			 | 
		
		
	
		
			
			| 
				123
			 | 
			
				228
			 | 
			
			
				
				             promptspeed: 0, 
			 | 
		
		
	
		
			
			| 
				124
			 | 
			
				229
			 | 
			
			
				
				             classes, 
			 | 
		
		
	
		
			
			| 
				125
			 | 
			
				
			 | 
			
			
				
				-            submit: function (e, v, m, f) { 
			 | 
		
		
	
		
			
			| 
				126
			 | 
			
				
			 | 
			
			
				
				-                twoButtonDialog = null; 
			 | 
		
		
	
		
			
			| 
				127
			 | 
			
				
			 | 
			
			
				
				-                if (v){ 
			 | 
		
		
	
		
			
			| 
				128
			 | 
			
				
			 | 
			
			
				
				-                    if (submitFunction) 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				230
			 | 
			
			
				
				+            submit: dontShowAgainSubmitFunctionWrapper(dontShowAgain, 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				231
			 | 
			
			
				
				+                function (e, v, m, f) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				232
			 | 
			
			
				
				+                    twoButtonDialog = null; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				233
			 | 
			
			
				
				+                    if (v && submitFunction) { 
			 | 
		
		
	
		
			
			| 
				129
			 | 
			
				234
			 | 
			
			
				
				                         submitFunction(e, v, m, f); 
			 | 
		
		
	
		
			
			| 
				130
			 | 
			
				
			 | 
			
			
				
				-                } 
			 | 
		
		
	
		
			
			| 
				131
			 | 
			
				
			 | 
			
			
				
				-            }, 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				235
			 | 
			
			
				
				+                    } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				236
			 | 
			
			
				
				+                }), 
			 | 
		
		
	
		
			
			| 
				132
			 | 
			
				237
			 | 
			
			
				
				             close: function (e, v, m, f) { 
			 | 
		
		
	
		
			
			| 
				133
			 | 
			
				238
			 | 
			
			
				
				                 twoButtonDialog = null; 
			 | 
		
		
	
		
			
			| 
				134
			 | 
			
				239
			 | 
			
			
				
				                 if (closeFunction) { 
			 | 
		
		
	
	
		
			
			| 
				
			 | 
			
			
				
				@@ -155,12 +260,29 @@ var messageHandler = { 
			 | 
		
		
	
		
			
			| 
				155
			 | 
			
				260
			 | 
			
			
				
				      * @param loadedFunction function to be called after the prompt is fully 
			 | 
		
		
	
		
			
			| 
				156
			 | 
			
				261
			 | 
			
			
				
				      *        loaded 
			 | 
		
		
	
		
			
			| 
				157
			 | 
			
				262
			 | 
			
			
				
				      * @param closeFunction function to be called on dialog close 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				263
			 | 
			
			
				
				+     * @param {object} dontShowAgain - options for dont show again checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				264
			 | 
			
			
				
				+     * @param {string} dontShowAgain.id the id of the checkbox. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				265
			 | 
			
			
				
				+     * @param {string} dontShowAgain.textKey the key for the text displayed 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				266
			 | 
			
			
				
				+     * next to checkbox 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				267
			 | 
			
			
				
				+     * @param {boolean} dontShowAgain.checked if true the checkbox is foing to 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				268
			 | 
			
			
				
				+     * be checked 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				269
			 | 
			
			
				
				+     * @param {Array} dontShowAgain.buttonValues The button values that will 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				270
			 | 
			
			
				
				+     * trigger storing the checkbox value 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				271
			 | 
			
			
				
				+     * @param {string} dontShowAgain.localStorageKey the key for the local 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				272
			 | 
			
			
				
				+     * storage. if not provided dontShowAgain.id will be used. 
			 | 
		
		
	
		
			
			| 
				158
			 | 
			
				273
			 | 
			
			
				
				      */ 
			 | 
		
		
	
		
			
			| 
				159
			 | 
			
				274
			 | 
			
			
				
				     openDialog: function (titleKey, msgString, persistent, buttons, 
			 | 
		
		
	
		
			
			| 
				160
			 | 
			
				
			 | 
			
			
				
				-                              submitFunction, loadedFunction, closeFunction) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				275
			 | 
			
			
				
				+        submitFunction, loadedFunction, closeFunction, dontShowAgain) { 
			 | 
		
		
	
		
			
			| 
				161
			 | 
			
				276
			 | 
			
			
				
				         if (!popupEnabled) 
			 | 
		
		
	
		
			
			| 
				162
			 | 
			
				277
			 | 
			
			
				
				             return; 
			 | 
		
		
	
		
			
			| 
				163
			 | 
			
				278
			 | 
			
			
				
				  
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				279
			 | 
			
			
				
				+        if(dontShowTheDialog(dontShowAgain)) { 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				280
			 | 
			
			
				
				+            // Maybe we should pass some parameters here? I'm not sure 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				281
			 | 
			
			
				
				+            // and currently we don't need any parameters. 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				282
			 | 
			
			
				
				+            submitFunction(); 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				283
			 | 
			
			
				
				+            return; 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				284
			 | 
			
			
				
				+        } 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				285
			 | 
			
			
				
				+ 
			 | 
		
		
	
		
			
			| 
				164
			 | 
			
				286
			 | 
			
			
				
				         let args = { 
			 | 
		
		
	
		
			
			| 
				165
			 | 
			
				287
			 | 
			
			
				
				             title: this._getFormattedTitleString(titleKey), 
			 | 
		
		
	
		
			
			| 
				166
			 | 
			
				288
			 | 
			
			
				
				             persistent: persistent, 
			 | 
		
		
	
	
		
			
			| 
				
			 | 
			
			
				
				@@ -168,7 +290,8 @@ var messageHandler = { 
			 | 
		
		
	
		
			
			| 
				168
			 | 
			
				290
			 | 
			
			
				
				             defaultButton: 1, 
			 | 
		
		
	
		
			
			| 
				169
			 | 
			
				291
			 | 
			
			
				
				             promptspeed: 0, 
			 | 
		
		
	
		
			
			| 
				170
			 | 
			
				292
			 | 
			
			
				
				             loaded: loadedFunction, 
			 | 
		
		
	
		
			
			| 
				171
			 | 
			
				
			 | 
			
			
				
				-            submit: submitFunction, 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				293
			 | 
			
			
				
				+            submit: dontShowAgainSubmitFunctionWrapper( 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				294
			 | 
			
			
				
				+                dontShowAgain, submitFunction), 
			 | 
		
		
	
		
			
			| 
				172
			 | 
			
				295
			 | 
			
			
				
				             close: closeFunction, 
			 | 
		
		
	
		
			
			| 
				173
			 | 
			
				296
			 | 
			
			
				
				             classes: this._getDialogClasses() 
			 | 
		
		
	
		
			
			| 
				174
			 | 
			
				297
			 | 
			
			
				
				         }; 
			 | 
		
		
	
	
		
			
			| 
				
			 | 
			
			
				
				@@ -177,7 +300,8 @@ var messageHandler = { 
			 | 
		
		
	
		
			
			| 
				177
			 | 
			
				300
			 | 
			
			
				
				             args.closeText = ''; 
			 | 
		
		
	
		
			
			| 
				178
			 | 
			
				301
			 | 
			
			
				
				         } 
			 | 
		
		
	
		
			
			| 
				179
			 | 
			
				302
			 | 
			
			
				
				  
			 | 
		
		
	
		
			
			| 
				180
			 | 
			
				
			 | 
			
			
				
				-        let dialog = new Impromptu(msgString, args); 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				303
			 | 
			
			
				
				+        let dialog = new Impromptu( 
			 | 
		
		
	
		
			
			| 
				
			 | 
			
				304
			 | 
			
			
				
				+            msgString + generateDontShowCheckbox(dontShowAgain), args); 
			 | 
		
		
	
		
			
			| 
				181
			 | 
			
				305
			 | 
			
			
				
				         APP.translation.translateElement(dialog.getPrompt()); 
			 | 
		
		
	
		
			
			| 
				182
			 | 
			
				306
			 | 
			
			
				
				         return dialog; 
			 | 
		
		
	
		
			
			| 
				183
			 | 
			
				307
			 | 
			
			
				
				     }, 
			 |