{ "version": 3, "sources": ["../../../Scripts/main/Misc.ts"], "sourcesContent": ["\uFEFFnamespace WebPortal.Misc {\n let OpenedWindows = new Array();\n\n export function openWindow(Param: string): void {\n setTimeout(() => { WindowOpenTimer(Param); }, 500);\n }\n function WindowOpenTimer(Param: string): void {\n let NewWindow: Window = window.open(Param, \"_blank\");\n NewWindow.status = PortalIdentifier;\n OpenedWindows.push(NewWindow);\n }\n\n export function getOpenWindows(): Array {\n return OpenedWindows;\n }\n\n /**\n * Gets the searched URL Parameter value\n * @param {string} sParam - Looks for the specified parameter\n * @param {string} sSource - Source string where the specified parameter should be looking for. Default: window.location.search.\n * @return {string} sValue\n */\n export function getUrlParameter(sParam: string, sSource?: string): any {\n let sUrl: string = sSource ? decodeURIComponent(sSource).split('?')[1] : window.location.search.substring(1);\n let sURLVariables: string[] = sUrl.split(\"&\");\n\n for (let i: number = 0; i < sURLVariables.length; i++) {\n let sParameterName: string[] = sURLVariables[i].split(\"=\");\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : sParameterName[1];\n }\n }\n }\n\n /**\n * Converts an object to a query string\n * @param {object} obj\n * @return {string} sValue\n */\n export function objToQueryStr(obj: any): string {\n let str: any = [];\n for (let property in obj) {\n if (obj.hasOwnProperty(property)) {\n str.push(encodeURIComponent(property) + \"=\" + encodeURIComponent(obj[property]));\n }\n }\n return str.join(\"&\");\n }\n\n /**\n * add spaces to every 3 chars. Used for displaying IDs.\n * @param {number} nValue\n * @return {string} sValue\n */\n export function addSpacesToEvery3Chars(nValue: number): string {\n let str: string = nValue.toString();\n return str.replace(/(.{3})/g, \"$1 \").trim();\n }\n\n /**\n * remove spaces in string value. Used for selecting IDs.\n * @param {number} nValue\n * @return {string} sValue\n */\n export function removeSpacesInStr(nValue: number): string {\n let str: string = nValue.toString();\n return str.replace(/(\\s)/g, \"\");\n }\n\n /**\n * Checks if the value string is a number.\n * @param {string} sValue\n * @return {boolean} bValue\n */\n export function regNumberOnlyCheck(sValue: string): boolean {\n let reg: RegExp = new RegExp(\"^\\\\d+$\");\n return reg.test(sValue);\n }\n\n /**\n * Checks if the value string has a conform URL and if following parameters are present: id and token whereas their values contains exactly 9 characters\n * @param sValue\n */\n export function regJoinLinkCheck(sValue: string): boolean {\n let reg: RegExp = new RegExp(\"(http[s]?:\\/\\/)?([^:\\/\\s]+)(:([^\\/]*))?(\\/\\w+\\.)*([^#?\\s]+)[(\\?|\\&)]([id=]+)\\=([0-9]{9})[(\\?|\\&)]([token=]+)\\=([a-fA-F0-9]{9})\");\n return reg.test(sValue);\n }\n\n /**\n * Replaces Single Backslashes with double Backslashes\n * @param {string} sValue\n * @return {string} sValue\n */\n export function replaceBackslashesWithDoubleBackslashes(sValue: string): string {\n return sValue.replace(/\\\\/g, \"\\\\\\\\\");\n }\n\n export function isUndefined(obj: any, field: any): boolean {\n if (typeof obj === \"undefined\") {\n return true;\n }\n\n if (typeof obj[field] === \"undefined\") {\n return true;\n }\n\n return false;\n }\n\n /**\n * Generates a new GUID\n * @return {string} guidResponse\n */\n export function newGUID(): string {\n let guidHolder: string = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\";\n let hex: string = \"0123456789abcdef\";\n let r: number = 0;\n let guidResponse: string = \"\";\n for (let i: number = 0; i < 36; i++) {\n if (guidHolder[i] !== \"-\" && guidHolder[i] !== \"4\") {\n r = Math.random() * 16 | 0;\n };\n\n if (guidHolder[i] === \"x\") {\n guidResponse += hex[r];\n } else if (guidHolder[i] === \"y\") {\n r &= 0x3;\n r |= 0x8;\n guidResponse += hex[r];\n } else {\n guidResponse += guidHolder[i];\n };\n };\n return guidResponse;\n }\n\n /**\n * Format File Size\n * @param {string} _Bytes\n * @return {string}\n */\n export function formatFileSize(_Bytes: any): string {\n if (typeof _Bytes !== \"number\") {\n return \"\";\n };\n if (_Bytes >= 1000000000) {\n return (_Bytes / 1000000000).toFixed(2) + \" GB\";\n };\n if (_Bytes >= 1000000) {\n return (_Bytes / 1000000).toFixed(2) + \" MB\";\n };\n return (_Bytes / 1000).toFixed(2) + \" KB\";\n }\n\n export function showModalMessage(messageObj: any): void {\n createModal(messageObj);\n\n // display the modal\n $(\"#modal_rdp_status_messages\").modal({ backdrop: \"static\", keyboard: false });\n\n function createModal(messageObj: any): void {\n let obj: any = (typeof messageObj === \"string\") ? { msg: messageObj, title: \"\", count: 1 } : messageObj;\n\n // contents\n if (!isUndefined(obj, \"title\")) {\n $(\"#modal_rdp_status_message_title\").text(obj.title);\n }\n\n if (!isUndefined(obj, \"msg\")) {\n $(\"#modal_rdp_status_message_body\").html(obj.msg);\n }\n\n if (!isUndefined(obj, \"cbYes\") && !isUndefined(obj, \"cbNo\")) {\n $(\"#modal_rdp_status_message_footer_close\").hide();\n $(\"#modal_rdp_status_message_footer_yes\").off().on(\"click\", obj.cbYes).show();\n $(\"#modal_rdp_status_message_footer_no\").off().on(\"click\", obj.cbNo).show();\n } else {\n $(\"#modal_rdp_status_message_footer_yes\").off().hide();\n $(\"#modal_rdp_status_message_footer_no\").off().hide();\n\n if (!isUndefined(obj, \"cbOk\")) {\n $(\"#modal_rdp_status_message_footer_close\").off().on(\"click\", obj.cbOk).show();\n } else {\n $(\"#modal_rdp_status_message_footer_close\").show();\n }\n }\n }\n }\n\n /**\n * Override Session (SparkView) notifications into navigationMessage.show() messages\n */\n export function overrideSessionNotifications(): void {\n /**\n * Overrides all notifications of hi5.notifications into a Bootstrap design.\n */\n if (hi5) {\n hi5.init.start();\n hi5.notifications.notify = function (messageData: any): void {\n if (navigationUtils.getButton(\"SessionInformation\").length) {\n navigationMessage.show(\"SessionInformation\", messageData);\n } else if (navigationUtils.getButton(\"SessionSharing\").length) {\n navigationMessage.show(\"SessionSharing\", messageData);\n } else {\n navigationMessage.show(\"Notification\", messageData);\n }\n };\n }\n }\n\n /**\n * Get User Agent Information. If hi5 is defined, it extracts the information. Otherwise, it only returns the userAgent string.\n */\n export function getUserAgent(): string {\n if (typeof hi5 == 'undefined')\n return navigator.userAgent;\n\n let str = \"Browser: \";\n if (hi5.browser.isEdge) str += 'Edge';\n if (hi5.browser.isFirefox) str += 'Firefox'\n if (hi5.browser.isOpera) str += 'Opera'\n if (hi5.browser.isRIM) str += 'RIM'\n if (hi5.browser.isChrome) str += 'Chrome'\n if (isRmsClient()) str += ', RemasClient'\n if (hi5.browser.isIE) str += 'IE'\n str += ', OS: ';\n if (hi5.browser.isMacOS) str += 'MacOS'\n if (hi5.browser.isWindows) str += 'Windows'\n if (hi5.browser.isLinux) str += 'Linux'\n str += ', Additional: ';\n if (hi5.browser.isTouch) str += 'Touch Device, '\n if (hi5.browser.isAndroid) str += 'Android, '\n if (hi5.browser.isChromeApp) str += 'ChromeApp, '\n if (hi5.browser.isMultitask) str += 'Multitask'\n\n return str;\n }\n\n export function isRmsClient(): boolean {\n return navigator.userAgent.indexOf('RMS') > -1\n || navigator.userAgent.indexOf('Client') > -1\n || navigator.userAgent.indexOf('Electron') > -1;\n }\n\n /**\n * Detect Internet Explorer\n * @return {boolean}\n */\n export function isInternetExplorerDetected(): boolean {\n let isIE: boolean = false;\n\n if (navigator.appName == 'Microsoft Internet Explorer') {\n let ua = navigator.userAgent,\n re = new RegExp(\"MSIE ([0-9]{1,}[\\\\.0-9]{0,})\");\n\n if (re.exec(ua) !== null) {\n return true;\n }\n }\n else if (navigator.appName == \"Netscape\") {\n /// in IE 11 the navigator.appVersion says 'trident'\n /// in Edge the navigator.appVersion does not say trident\n if (navigator.appVersion.indexOf('Trident') > 1)\n return true;\n }\n\n return false;\n }\n\n export function ShowTenantSelection(_Request: string, _TenantList: any, _LoginTenantId: number, _LanguageId: number): void {\n tempRequest = _Request;\n $(\"#pn_login\").addClass(\"hidden\");\n $(\"#pn_MobileID\").addClass(\"hidden\");\n $(\"#pn_WebToken\").addClass(\"hidden\");\n $(\"#pn_SMSTan\").addClass(\"hidden\");\n $(\"#pn_Oidb\").addClass(\"hidden\");\n $(\"#email\").blur();\n $(\"#password\").blur();\n\n $(\"#pn_TenantSelection\").removeClass(\"hidden\");\n\n for (let entry of _TenantList) {\n $(\"#select_TenantSelection\").append(new Option(entry.value, entry.key, false, false));\n }\n\n $('#select_TenantSelection option').sort(function (a, b) {\n return a.textContent.localeCompare(b.textContent);\n }).appendTo(\"#select_TenantSelection\");\n\n loginTenantId = _LoginTenantId;\n if (loginTenantId != 1) {\n $(\"#select_TenantSelection\").selectpicker(\"val\", loginTenantId);\n }\n\n // Tenant Info anzeigen\n switch (_LanguageId) {\n // Deutsch\n case 2:\n $(\"#pn_TenantSelection_info_german\").removeClass(\"hidden\");\n break;\n // Franz\u00F6sisch\n case 3:\n $(\"#pn_TenantSelection_info_french\").removeClass(\"hidden\");\n break;\n // Italienisch\n case 5:\n $(\"#pn_TenantSelection_info_italian\").removeClass(\"hidden\");\n break;\n // alle anderen Englisch\n default:\n $(\"#pn_TenantSelection_info_english\").removeClass(\"hidden\");\n }\n\n $(\"#select_TenantSelection\").selectpicker('refresh');\n $(\"#bt_TenantSelection_log_in\").focus();\n }\n}"], "mappings": "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", "names": ["WebPortal", "Misc", "messageObj"] }