{"version":3,"file":"main.min.js","sources":["main.js"],"sourcesContent":["/*! http://mths.be/fromcodepoint v0.1.0 by @mathias */\r\n// https://tc39.github.io/ecma262/#sec-array.prototype.find\r\nif (!Array.prototype.find) {\r\n Object.defineProperty(Array.prototype, 'find', {\r\n value: function (predicate) {\r\n // 1. Let O be ? ToObject(this value).\r\n if (this === null) {\r\n throw TypeError('\"this\" is null or not defined');\r\n }\r\n\r\n var o = Object(this);\r\n\r\n // 2. Let len be ? ToLength(? Get(O, \"length\")).\r\n var len = o.length >>> 0;\r\n\r\n // 3. If IsCallable(predicate) is false, throw a TypeError exception.\r\n if (typeof predicate !== 'function') {\r\n throw TypeError('predicate must be a function');\r\n }\r\n\r\n // 4. If thisArg was supplied, let T be thisArg; else let T be undefined.\r\n var thisArg = arguments[1];\r\n\r\n // 5. Let k be 0.\r\n var k = 0;\r\n\r\n // 6. Repeat, while k < len\r\n while (k < len) {\r\n // a. Let Pk be ! ToString(k).\r\n // b. Let kValue be ? Get(O, Pk).\r\n // c. Let testResult be ToBoolean(? Call(predicate, T, « kValue, k, O »)).\r\n // d. If testResult is true, return kValue.\r\n var kValue = o[k];\r\n if (predicate.call(thisArg, kValue, k, o)) {\r\n return kValue;\r\n }\r\n // e. Increase k by 1.\r\n k++;\r\n }\r\n\r\n // 7. Return undefined.\r\n return undefined;\r\n },\r\n configurable: true,\r\n writable: true\r\n });\r\n}\r\nif (!String.prototype.startsWith) {\r\n String.prototype.startsWith = function (searchString, position) {\r\n position = position || 0;\r\n return this.indexOf(searchString, position) === position;\r\n };\r\n}\r\nif (!String.fromCodePoint) {\r\n (function () {\r\n var defineProperty = (function () {\r\n // IE 8 only supports `Object.defineProperty` on DOM elements\r\n try {\r\n var object = {};\r\n var $defineProperty = Object.defineProperty;\r\n var result = $defineProperty(object, object, object) && $defineProperty;\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n return result;\r\n }());\r\n var stringFromCharCode = String.fromCharCode;\r\n var floor = Math.floor;\r\n var fromCodePoint = function () {\r\n var MAX_SIZE = 0x4000;\r\n var codeUnits = [];\r\n var highSurrogate;\r\n var lowSurrogate;\r\n var index = -1;\r\n var length = arguments.length;\r\n if (!length) {\r\n return '';\r\n }\r\n var result = '';\r\n while (++index < length) {\r\n var codePoint = Number(arguments[index]);\r\n if (\r\n !isFinite(codePoint) || // `NaN`, `+Infinity`, or `-Infinity`\r\n codePoint < 0 || // not a valid Unicode code point\r\n codePoint > 0x10FFFF || // not a valid Unicode code point\r\n floor(codePoint) !== codePoint // not an integer\r\n ) {\r\n throw RangeError('Invalid code point: ' + codePoint);\r\n }\r\n if (codePoint <= 0xFFFF) { // BMP code point\r\n codeUnits.push(codePoint);\r\n } else { // Astral code point; split in surrogate halves\r\n // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\r\n codePoint -= 0x10000;\r\n highSurrogate = (codePoint >> 10) + 0xD800;\r\n lowSurrogate = (codePoint % 0x400) + 0xDC00;\r\n codeUnits.push(highSurrogate, lowSurrogate);\r\n }\r\n if (index + 1 === length || codeUnits.length > MAX_SIZE) {\r\n result += stringFromCharCode.apply(null, codeUnits);\r\n codeUnits.length = 0;\r\n }\r\n }\r\n return result;\r\n };\r\n if (defineProperty) {\r\n defineProperty(String, 'fromCodePoint', {\r\n 'value': fromCodePoint,\r\n 'configurable': true,\r\n 'writable': true\r\n });\r\n } else {\r\n String.fromCodePoint = fromCodePoint;\r\n }\r\n }());\r\n}\r\nif (!Array.prototype.map) {\r\n\r\n Array.prototype.map = function (callback/*, thisArg*/) {\r\n\r\n var T, A, k;\r\n\r\n if (this === null) {\r\n throw new TypeError('this is null or not defined');\r\n }\r\n\r\n // 1. Let O be the result of calling ToObject passing the |this| \r\n // value as the argument.\r\n var O = Object(this);\r\n\r\n // 2. Let lenValue be the result of calling the Get internal \r\n // method of O with the argument \"length\".\r\n // 3. Let len be ToUint32(lenValue).\r\n var len = O.length >>> 0;\r\n\r\n // 4. If IsCallable(callback) is false, throw a TypeError exception.\r\n // See: http://es5.github.com/#x9.11\r\n if (typeof callback !== 'function') {\r\n throw new TypeError(callback + ' is not a function');\r\n }\r\n\r\n // 5. If thisArg was supplied, let T be thisArg; else let T be undefined.\r\n if (arguments.length > 1) {\r\n T = arguments[1];\r\n }\r\n\r\n // 6. Let A be a new array created as if by the expression new Array(len) \r\n // where Array is the standard built-in constructor with that name and \r\n // len is the value of len.\r\n A = new Array(len);\r\n\r\n // 7. Let k be 0\r\n k = 0;\r\n\r\n // 8. Repeat, while k < len\r\n while (k < len) {\r\n\r\n var kValue, mappedValue;\r\n\r\n // a. Let Pk be ToString(k).\r\n // This is implicit for LHS operands of the in operator\r\n // b. Let kPresent be the result of calling the HasProperty internal \r\n // method of O with argument Pk.\r\n // This step can be combined with c\r\n // c. If kPresent is true, then\r\n if (k in O) {\r\n\r\n // i. Let kValue be the result of calling the Get internal \r\n // method of O with argument Pk.\r\n kValue = O[k];\r\n\r\n // ii. Let mappedValue be the result of calling the Call internal \r\n // method of callback with T as the this value and argument \r\n // list containing kValue, k, and O.\r\n mappedValue = callback.call(T, kValue, k, O);\r\n\r\n // iii. Call the DefineOwnProperty internal method of A with arguments\r\n // Pk, Property Descriptor\r\n // { Value: mappedValue,\r\n // Writable: true,\r\n // Enumerable: true,\r\n // Configurable: true },\r\n // and false.\r\n\r\n // In browsers that support Object.defineProperty, use the following:\r\n // Object.defineProperty(A, k, {\r\n // value: mappedValue,\r\n // writable: true,\r\n // enumerable: true,\r\n // configurable: true\r\n // });\r\n\r\n // For best browser support, use the following:\r\n A[k] = mappedValue;\r\n }\r\n // d. Increase k by 1.\r\n k++;\r\n }\r\n\r\n // 9. return A\r\n return A;\r\n };\r\n}\r\njQuery.validator.setDefaults({\r\n highlight: function (element, errorClass, validClass) {\r\n if (element.type === 'radio') {\r\n this.findByName(element.name).addClass(errorClass).removeClass(validClass);\r\n } else {\r\n $(element).addClass(errorClass).removeClass(validClass);\r\n $(element).closest('.form-group').removeClass('has-success').addClass('has-error');\r\n }\r\n },\r\n unhighlight: function (element, errorClass, validClass) {\r\n if (element.type === 'radio') {\r\n this.findByName(element.name).removeClass(errorClass).addClass(validClass);\r\n } else {\r\n $(element).removeClass(errorClass).addClass(validClass);\r\n $(element).closest('.form-group').removeClass('has-error').addClass('has-success');\r\n }\r\n }\r\n});\r\njQuery.validator.unobtrusive.adapters.add(\r\n 'requiredif', ['other'], function (options) {\r\n\r\n var getModelPrefix = function (fieldName) {\r\n return fieldName.substr(0, fieldName.lastIndexOf('.') + 1);\r\n }\r\n\r\n var appendModelPrefix = function (value, prefix) {\r\n if (value.indexOf('*.') === 0) {\r\n value = value.replace('*.', prefix);\r\n }\r\n return value;\r\n }\r\n\r\n var prefix = getModelPrefix(options.element.name),\r\n other = options.params.other,\r\n fullOtherName = appendModelPrefix(other, prefix),\r\n element = $(options.form).find(':input[name=\"' + fullOtherName + '\"]')[0];\r\n\r\n options.rules['requiredif'] = element;\r\n if (options.message) {\r\n options.messages['requiredif'] = options.message;\r\n }\r\n }\r\n);\r\n\r\njQuery.validator.addMethod('requiredif', function (value, element, params) {\r\n var otherValue = $(params).val();\r\n if (otherValue !== null && otherValue !== '') {\r\n return true;\r\n }\r\n return value !== null && value !== '';\r\n}, '');\r\n(function ($) {\r\n if ($.fn.style) {\r\n return;\r\n }\r\n\r\n // Escape regex chars with \\\r\n var escape = function (text) {\r\n return text.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, \"\\\\$&\");\r\n };\r\n\r\n // For those who need them (< IE 9), add support for CSS functions\r\n var isStyleFuncSupported = !!CSSStyleDeclaration.prototype.getPropertyValue;\r\n if (!isStyleFuncSupported) {\r\n CSSStyleDeclaration.prototype.getPropertyValue = function (a) {\r\n return this.getAttribute(a);\r\n };\r\n CSSStyleDeclaration.prototype.setProperty = function (styleName, value, priority) {\r\n this.setAttribute(styleName, value);\r\n priority = typeof priority !== 'undefined' ? priority : '';\r\n if (priority !== '') {\r\n // Add priority manually\r\n var rule = new RegExp(escape(styleName) + '\\\\s*:\\\\s*' + escape(value) +\r\n '(\\\\s*;)?', 'gmi');\r\n this.cssText =\r\n this.cssText.replace(rule, styleName + ': ' + value + ' !' + priority + ';');\r\n }\r\n };\r\n CSSStyleDeclaration.prototype.removeProperty = function (a) {\r\n return this.removeAttribute(a);\r\n };\r\n CSSStyleDeclaration.prototype.getPropertyPriority = function (styleName) {\r\n var rule = new RegExp(escape(styleName) + '\\\\s*:\\\\s*[^\\\\s]*\\\\s*!important(\\\\s*;)?',\r\n 'gmi');\r\n return rule.test(this.cssText) ? 'important' : '';\r\n }\r\n }\r\n\r\n // The style function\r\n $.fn.style = function (styleName, value, priority) {\r\n // DOM node\r\n var node = this.get(0);\r\n // Ensure we have a DOM node\r\n if (typeof node === 'undefined') {\r\n return this;\r\n }\r\n // CSSStyleDeclaration\r\n var style = this.get(0).style;\r\n // Getter/Setter\r\n if (typeof styleName !== 'undefined') {\r\n if (typeof value !== 'undefined') {\r\n // Set style property\r\n priority = typeof priority !== 'undefined' ? priority : '';\r\n style.setProperty(styleName, value, priority);\r\n return this;\r\n } else {\r\n // Get style property\r\n return style.getPropertyValue(styleName);\r\n }\r\n } else {\r\n // Get CSSStyleDeclaration\r\n return style;\r\n }\r\n };\r\n})(jQuery);\r\n\r\n(function ($) {\r\n\r\n setTimezoneCookie();\r\n\r\n $.resizeend = function (el, options) {\r\n var base = this;\r\n\r\n base.$el = $(el);\r\n base.el = el;\r\n\r\n base.$el.data(\"resizeend\", base);\r\n base.rtime = new Date(1, 1, 2000, 12, 0, 0);\r\n base.timeout = false;\r\n base.delta = 100;\r\n\r\n base.init = function () {\r\n base.options = $.extend({}, $.resizeend.defaultOptions, options);\r\n\r\n if (base.options.runOnStart) base.options.onDragEnd();\r\n\r\n $(base.el).resize(function () {\r\n base.rtime = new Date();\r\n if (base.timeout === false) {\r\n base.timeout = true;\r\n setTimeout(base.resizeend, base.delta);\r\n }\r\n });\r\n };\r\n base.resizeend = function () {\r\n if (new Date() - base.rtime < base.delta) {\r\n setTimeout(base.resizeend, base.delta);\r\n } else {\r\n base.timeout = false;\r\n base.options.onDragEnd();\r\n }\r\n };\r\n\r\n base.init();\r\n };\r\n\r\n $.resizeend.defaultOptions = {\r\n onDragEnd: function () { },\r\n runOnStart: true\r\n };\r\n\r\n $.fn.resizeend = function (options) {\r\n return this.each(function () {\r\n (new $.resizeend(this, options));\r\n });\r\n };\r\n $.fn.disable = function () {\r\n return this.each(function () {\r\n if (typeof this.disabled !== \"undefined\") this.disabled = true;\r\n });\r\n }\r\n\r\n $.fn.enable = function () {\r\n return this.each(function () {\r\n if (typeof this.disabled !== \"undefined\") this.disabled = false;\r\n });\r\n }\r\n})(jQuery);\r\n\r\n$.fn.animateRotate = function (startAngle, endAngle, duration, easing, complete) {\r\n return this.each(function () {\r\n var elem = $(this);\r\n\r\n $({ deg: startAngle }).animate({ deg: endAngle }, {\r\n duration: duration,\r\n easing: easing,\r\n step: function (now) {\r\n elem.css({\r\n '-moz-transform': 'rotate(' + now + 'deg)',\r\n '-webkit-transform': 'rotate(' + now + 'deg)',\r\n '-o-transform': 'rotate(' + now + 'deg)',\r\n '-ms-transform': 'rotate(' + now + 'deg)',\r\n 'transform': 'rotate(' + now + 'deg)'\r\n });\r\n },\r\n complete: complete || $.noop\r\n });\r\n });\r\n};\r\njQuery.fn.rotate = function (degrees) {\r\n $(this).css({ 'transform': 'rotate(' + degrees + 'deg)' });\r\n return $(this);\r\n};\r\n\r\nvar screen_sm = 750; // 767\r\nvar chat_scroll_offset = 50 + 2 + 2;// + 82;\r\nvar message_list_offset = 50 + 2 + 22; // navbar height + borders\r\nvar bottom_padding = 0;\r\nvar current_screen_w;\r\nvar current_screen_h;\r\nvar nameinit = [];\r\nvar window_active = false;\r\nvar is_mobile_native = false;\r\n\r\nnameinit = LoadData(\"nameinit\");\r\nif (typeof (nameinit) === \"undefined\" || nameinit === null) {\r\n nameinit = [];\r\n}\r\n\r\n$(window).focus(function () {\r\n window_active = true;\r\n});\r\n\r\n$(window).blur(function () {\r\n window_active = false;\r\n});\r\n(function () {\r\n var hidden = \"hidden\";\r\n\r\n // Standards:\r\n if (hidden in document)\r\n document.addEventListener(\"visibilitychange\", onchange);\r\n else if ((hidden = \"mozHidden\") in document)\r\n document.addEventListener(\"mozvisibilitychange\", onchange);\r\n else if ((hidden = \"webkitHidden\") in document)\r\n document.addEventListener(\"webkitvisibilitychange\", onchange);\r\n else if ((hidden = \"msHidden\") in document)\r\n document.addEventListener(\"msvisibilitychange\", onchange);\r\n // IE 9 and lower:\r\n else if (\"onfocusin\" in document)\r\n document.onfocusin = document.onfocusout = onchange;\r\n // All others:\r\n else\r\n window.onpageshow = window.onpagehide\r\n = window.onfocus = window.onblur = onchange;\r\n\r\n function onchange(evt) {\r\n var v = \"visible\", h = \"hidden\",\r\n evtMap = {\r\n focus: v, focusin: v, pageshow: v, blur: h, focusout: h, pagehide: h\r\n };\r\n\r\n evt = evt || window.event;\r\n if (evt.type in evtMap) {\r\n window_active = evtMap[evt.type] === \"visible\";\r\n } else {\r\n window_active = this[hidden] ? false : true;\r\n }\r\n }\r\n\r\n // set the initial state (but only if browser supports the Page Visibility API)\r\n if (document[hidden] !== undefined)\r\n onchange({ type: document[hidden] ? \"blur\" : \"focus\" });\r\n})();\r\n\r\n\r\n\r\n\r\n$(document).ready(function () {\r\n\r\n ApplyFormValidationClasses();\r\n\r\n $(\".navbar-collapse\").collapse({ 'toggle': false });\r\n $('.navbar-brand').click(function (e) {\r\n // e.preventDefault();\r\n });\r\n $('.convo-list a').click(function (e) {\r\n $('.convo-list a').removeClass('active');\r\n $(this).addClass('active');\r\n });\r\n\r\n\r\n $('body').on('click', function (e) {\r\n $('.navbar-collapse').each(function () {\r\n if (!$(this).is(e.target) && $(this).has(e.target).length === 0 && $('.navbar-collapse').has(e.target).length === 0) {\r\n $(\".navbar-collapse\").collapse('hide');\r\n }\r\n });\r\n });\r\n\r\n $('.goback').click(function (e) {\r\n // e.preventDefault();\r\n //if ($(this).hasClass('tomessages')) {\r\n // document.location.href = 'messages.html';\r\n //} else {\r\n // window.history.back();\r\n //}\r\n });\r\n toastr.options = {\r\n \"closeButton\": true,\r\n \"debug\": false,\r\n \"newestOnTop\": true,\r\n \"progressBar\": true,\r\n \"positionClass\": \"toast-top-center\",\r\n \"preventDuplicates\": false,\r\n \"onclick\": null,\r\n \"showDuration\": \"500\",\r\n \"hideDuration\": \"1000\",\r\n \"timeOut\": \"7000\",\r\n \"extendedTimeOut\": \"3000\",\r\n \"showEasing\": \"swing\",\r\n \"hideEasing\": \"linear\",\r\n \"showMethod\": \"fadeIn\",\r\n \"hideMethod\": \"fadeOut\"\r\n };\r\n\r\n if (detectMobileDevice()) {\r\n toastr.options.positionClass = 'toast-bottom-center';\r\n }\r\n\r\n if (IsMobileNative()) {\r\n $(\".hide-on-mobile-native\").addClass(\"hidden\");\r\n }\r\n\r\n //$('[title]').tooltip({ container: 'body' });\r\n current_screen_w = $(window).width();\r\n current_screen_h = $(window).height();\r\n ResizeWindow();\r\n ApplyUIDatePickerComponents();\r\n\r\n \r\n});\r\n\r\n$(document).ajaxComplete(function () {\r\n ApplyFormValidationClasses();\r\n});\r\n\r\n\r\n$(window).resizeend(\r\n {\r\n onDragEnd: function () {\r\n current_screen_w = $(window).width();\r\n current_screen_h = $(window).height();\r\n ResizeWindow();\r\n $(window).trigger(\"resizedone\");\r\n },\r\n runOnStart: true\r\n }\r\n);\r\nfunction IsMobileNative() {\r\n is_mobile_native = Cookies.get(\"IsMobileNative\");\r\n if (typeof (is_mobile_native) === 'undefined' || is_mobile_native === null) {\r\n return false;\r\n } else {\r\n return is_mobile_native;\r\n }\r\n}\r\nfunction ResizeWindow() {\r\n //return true;\r\n\r\n // Since removing the chat title this might no longer be needed:\r\n // resizeNavBar();\r\n\r\n if (typeof ScrollToBottom === 'function') {\r\n ScrollToBottom();\r\n }\r\n\r\n}\r\nfunction stackTrace() {\r\n var err = new Error();\r\n return err.stack;\r\n}\r\nfunction isOnBottom(elem) {\r\n if (elem.length > 0 && elem[0].scrollHeight - elem.scrollTop() < elem.outerHeight() + 75) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n}\r\n\r\n\r\nfunction resizeNavBar() {\r\n var nav_width = $('.navbar-brand').parent().parent().width();\r\n if ($('.md_screen').is(\":visible\")) {\r\n if (nav_width / 2 - 30 > 20) {\r\n $('.navbar-brand').width(nav_width / 2 - 30);\r\n } else {\r\n $('.navbar-brand').width(100);\r\n }\r\n } else if ($('.sm_screen').is(\":visible\")) {\r\n if (nav_width / 2 - 30 > 20) {\r\n $('.navbar-brand').width(nav_width / 3 - 30);\r\n } else {\r\n $('.navbar-brand').width(100);\r\n }\r\n } else {\r\n if (nav_width - 130 > 20) {\r\n $('.navbar-brand').width(nav_width - 130);\r\n } else {\r\n $('.navbar-brand').width(20);\r\n }\r\n }\r\n}\r\nfunction getUrlVars() {\r\n var vars = [], hash;\r\n var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');\r\n for (var i = 0; i < hashes.length; i++) {\r\n hash = hashes[i].split('=');\r\n vars.push(hash[0]);\r\n vars[hash[0]] = hash[1];\r\n }\r\n return vars;\r\n}\r\nfunction getHashVars() {\r\n var vars = [], hash;\r\n var currenthash = window.location.hash;\r\n if (currenthash.indexOf('#') === 0) {\r\n currenthash = currenthash.slice(1);\r\n }\r\n var hashes = currenthash.split('&');\r\n for (var i = 0; i < hashes.length; i++) {\r\n if (hashes[i].length > 0) {\r\n hash = hashes[i].split('=');\r\n if (hash.length > 1) {\r\n vars.push({ name: hash[0], value: hash[1] });\r\n } else {\r\n vars.push({ name: hash[0], value: null });\r\n }\r\n }\r\n }\r\n return vars;\r\n}\r\nfunction getHashVar(name) {\r\n var hashArray = getHashVars();\r\n var index = findWithAttr(hashArray, \"name\", name);\r\n if (index > -1) {\r\n return hashArray[index];\r\n } else {\r\n return null;\r\n }\r\n}\r\nfunction setHashVars(hashArray) {\r\n var hash = '';\r\n if (hashArray.length > 0) {\r\n for (var i = 0; i < hashArray.length; i++) {\r\n if (i !== 0) {\r\n hash += \"&\";\r\n }\r\n if (hashArray[i].value !== null) {\r\n hash += hashArray[i].name + \"=\" + hashArray[i].value;\r\n } else {\r\n hash += hashArray[i].name;\r\n }\r\n }\r\n }\r\n window.location.hash = hash;\r\n}\r\nfunction addHashVar(name, value) {\r\n var hashArray = getHashVars();\r\n hashArray.push({ name: name, value: value });\r\n setHashVars(hashArray);\r\n}\r\nfunction removeHashVar(name) {\r\n var hashArray = getHashVars();\r\n var index = findWithAttr(hashArray, \"name\", name);\r\n if (index > -1) {\r\n hashArray.splice(index, 1);\r\n setHashVars(hashArray);\r\n }\r\n}\r\nfunction urlWOQueryString(url) {\r\n return url.split(\"?\")[0];\r\n}\r\nfunction iOSversion() {\r\n if (/iP(hone|od|ad)/.test(navigator.platform)) {\r\n // supports iOS 2.0 and later: \r\n var v = (navigator.appVersion).match(/OS (\\d+)_(\\d+)_?(\\d+)?/);\r\n return [parseInt(v[1], 10), parseInt(v[2], 10), parseInt(v[3] || 0, 10)];\r\n }\r\n}\r\nfunction detectIE() {\r\n var ua = window.navigator.userAgent;\r\n var msie = ua.indexOf('MSIE ');\r\n var trident = ua.indexOf('Trident/');\r\n\r\n if (msie > 0) {\r\n // IE 10 or older => return version number\r\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\r\n }\r\n\r\n if (trident > 0) {\r\n // IE 11 (or newer) => return version number\r\n var rv = ua.indexOf('rv:');\r\n return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\r\n }\r\n\r\n // other browser\r\n return false;\r\n}\r\nfunction postIdleRefresh() {\r\n console.log(\"postIdleRefresh called.\");\r\n if (typeof postIdleRefreshAjax === 'function') {\r\n postIdleRefreshAjax();\r\n } else {\r\n window.location.reload(false);\r\n }\r\n}\r\nfunction detectMobileDevice() {\r\n var check = false;\r\n (function (a) { if (/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(a) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(a.substr(0, 4))) check = true; })(navigator.userAgent || navigator.vendor || window.opera);\r\n return check;\r\n}\r\nfunction SaveData(name, obj) {\r\n if (localStorage) {\r\n localStorage.setItem(name, JSON.stringify(obj));\r\n }\r\n else {\r\n console.log('Local Storage is not supported on this browser.');\r\n }\r\n}\r\nfunction LoadData(name) {\r\n var data;\r\n if (localStorage) {\r\n data = JSON.parse(localStorage.getItem(name));\r\n }\r\n else {\r\n console.log('Local Storage is not supported on this browser.');\r\n }\r\n return data;\r\n}\r\n\r\nfunction GetCachedData(name, dafault_data) {\r\n var data = LoadData(name);\r\n if (data === null || typeof (data) === \"undefined\") {\r\n return dafault_data;\r\n } else {\r\n return data;\r\n }\r\n}\r\nfunction CacheData(name, obj) {\r\n SaveData(name, obj);\r\n}\r\n\r\nfunction LoadDataFromCookie(name, dafault_data) {\r\n var data;\r\n data = LoadFromCookie(name);\r\n if (data === null || typeof (data) === \"undefined\") {\r\n return dafault_data;\r\n } else {\r\n return JSON.parse(data);\r\n }\r\n}\r\nfunction SaveDataToCookie(name, obj, secureOnly) {\r\n SaveToCookie(name, JSON.stringify(obj), secureOnly);\r\n}\r\n\r\nfunction LoadFromCookie(name) {\r\n var data;\r\n if (Cookies) {\r\n return Cookies.get(name);\r\n }\r\n else {\r\n console.log('Cookies are not supported on this browser.');\r\n }\r\n return data;\r\n}\r\nfunction SaveToCookie(name, data, secureOnly) {\r\n if (typeof (secureOnly) === \"undefined\" || secureOnly === null) {\r\n secureOnly = false;\r\n }\r\n if (Cookies) {\r\n Cookies.set(name, data, { secure: true, sameSite: 'strict' });\r\n }\r\n else {\r\n console.log('Cookies are not supported on this browser.');\r\n }\r\n}\r\nfunction LoadDataSafe(name, dafault_data) {\r\n var data;\r\n if (localStorage) {\r\n data = JSON.parse(localStorage.getItem(name));\r\n if (data === null || typeof (data) === \"undefined\") {\r\n return dafault_data;\r\n }\r\n }\r\n else {\r\n console.log('Local Storage is not supported on this browser.');\r\n }\r\n return data;\r\n}\r\nfunction stringToColour(str) {\r\n var hash = 0;\r\n for (var i = 0; i < str.length; i++) {\r\n hash = str.charCodeAt(i) + ((hash << 5) - hash);\r\n }\r\n var colour = '#';\r\n for (var j = 0; j < 3; j++) {\r\n var value = (hash >> (j * 8)) & 0xFF;\r\n colour += ('00' + value.toString(16)).substr(-2);\r\n }\r\n return colour;\r\n}\r\nfunction shadeBlendConvert(p, from, to) {\r\n if (typeof (p) !== \"number\" || p < -1 || p > 1 || typeof (from) !== \"string\" || (from[0] !== 'r' && from[0] !== '#') || (typeof (to) !== \"string\" && typeof (to) !== \"undefined\")) return null; //ErrorCheck\r\n if (!this.sbcRip) this.sbcRip = function (d) {\r\n var l = d.length, RGB = new Object();\r\n if (l > 9) {\r\n d = d.split(\",\");\r\n if (d.length < 3 || d.length > 4) return null;//ErrorCheck\r\n RGB[0] = i(d[0].slice(4)), RGB[1] = i(d[1]), RGB[2] = i(d[2]), RGB[3] = d[3] ? parseFloat(d[3]) : -1;\r\n } else {\r\n if (l === 8 || l === 6 || l < 4) return null; //ErrorCheck\r\n if (l < 6) d = \"#\" + d[1] + d[1] + d[2] + d[2] + d[3] + d[3] + (l > 4 ? d[4] + \"\" + d[4] : \"\"); //3 digit\r\n d = i(d.slice(1), 16), RGB[0] = d >> 16 & 255, RGB[1] = d >> 8 & 255, RGB[2] = d & 255, RGB[3] = l === 9 || l === 5 ? r(((d >> 24 & 255) / 255) * 10000) / 10000 : -1;\r\n }\r\n return RGB;\r\n }\r\n h = typeof (to) === \"string\" ? to.length > 9 ? true : to === \"c\" ? !h : false : h;\r\n to = to && to !== \"c\" ? to : b ? \"#000000\" : \"#FFFFFF\";\r\n p = b ? p * -1 : p;\r\n var i = parseInt, r = Math.round, h = from.length > 9,\r\n b = p < 0,\r\n f = sbcRip(from), t = sbcRip(to);\r\n\r\n if (!f || !t) return null; //ErrorCheck\r\n if (h) return \"rgb(\" + r((t[0] - f[0]) * p + f[0]) + \",\" + r((t[1] - f[1]) * p + f[1]) + \",\" + r((t[2] - f[2]) * p + f[2]) + (f[3] < 0 && t[3] < 0 ? \")\" : \",\" + (f[3] > -1 && t[3] > -1 ? r(((t[3] - f[3]) * p + f[3]) * 10000) / 10000 : t[3] < 0 ? f[3] : t[3]) + \")\");\r\n else return \"#\" + (0x100000000 + (f[3] > -1 && t[3] > -1 ? r(((t[3] - f[3]) * p + f[3]) * 255) : t[3] > -1 ? r(t[3] * 255) : f[3] > -1 ? r(f[3] * 255) : 255) * 0x1000000 + r((t[0] - f[0]) * p + f[0]) * 0x10000 + r((t[1] - f[1]) * p + f[1]) * 0x100 + r((t[2] - f[2]) * p + f[2])).toString(16).slice(f[3] > -1 || t[3] > -1 ? 1 : 3);\r\n}\r\nfunction setTimezoneCookie() {\r\n\r\n var timezone_cookie = \"timezoneoffset\";\r\n\r\n // if the timezone cookie not exists create one.\r\n if (!Cookies.get(timezone_cookie)) {\r\n\r\n // check if the browser supports cookie\r\n var test_cookie = 'test_cookie';\r\n SaveToCookie(test_cookie, true, false);\r\n\r\n // browser supports cookie\r\n if (Cookies.get(test_cookie)) {\r\n\r\n // delete the test cookie\r\n SaveToCookie(test_cookie, null, false);\r\n\r\n // create a new cookie \r\n SaveToCookie(timezone_cookie, new Date().getTimezoneOffset(), false);\r\n\r\n // re-load the page\r\n location.reload();\r\n }\r\n }\r\n // if the current timezone and the one stored in cookie are different\r\n // then store the new timezone in the cookie and refresh the page.\r\n else {\r\n\r\n var storedOffset = parseInt(Cookies.get(timezone_cookie));\r\n var currentOffset = new Date().getTimezoneOffset();\r\n\r\n // user may have changed the timezone\r\n if (storedOffset !== currentOffset) {\r\n SaveToCookie(timezone_cookie, new Date().getTimezoneOffset(), false);\r\n location.reload();\r\n }\r\n }\r\n}\r\nfunction findWithAttr(array, attr, value) {\r\n for (var i = 0; i < array.length; i += 1) {\r\n if (array[i][attr] === value) {\r\n return i;\r\n }\r\n }\r\n return -1;\r\n}\r\nfunction findWithDualAttr(array, attr1, value1, attr2, value2) {\r\n for (var i = 0; i < array.length; i += 1) {\r\n if (array[i][attr1] === value1 && array[i][attr2] === value2) {\r\n return i;\r\n }\r\n }\r\n return -1;\r\n}\r\nfunction LocalDate(date) {\r\n date = new Date(date);\r\n return date.toString().replace('/','-');\r\n}\r\nfunction arrayMerge(array1, array2, compare) {\r\n var result = array1.filter(compare);\r\n result = [].concat(result, array2);\r\n return result;\r\n}\r\nfunction RelativeDate(dateo) {\r\n var date = new Date(dateo);\r\n var now = new Date();\r\n var yesterday = new Date();\r\n yesterday.setHours(0, 0, 0, 0);\r\n var hourago = new Date();\r\n hourago.setHours(hourago.getHours() - 1)\r\n var result = \"\";\r\n if (date < yesterday) {\r\n result = (date.getMonth() + 1) + \"-\" + date.getDate() + \"-\" + date.getFullYear();// date.AddMinutes(-1*clientTZoffset).ToString(\"M-dd-yyyy\");\r\n }\r\n else if (date > yesterday && date < hourago) {\r\n var hours = date.getHours();\r\n var minutes = date.getMinutes();\r\n var ampm = hours >= 12 ? 'pm' : 'am';\r\n hours = hours % 12;\r\n hours = hours ? hours : 12; // the hour '0' should be '12'\r\n minutes = minutes < 10 ? '0' + minutes : minutes;\r\n result = hours + ':' + minutes + ' ' + ampm;\r\n // result = date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds();// date.AddMinutes(-1 * clientTZoffset).ToString(\"h:mm:ss tt\");\r\n }\r\n else {\r\n var diff = Math.abs(now - date);\r\n var diffminutes = Math.floor(diff / 60000);\r\n if (diffminutes === 1) {\r\n result = diffminutes + \" min\";\r\n }\r\n else if (diffminutes > 1) {\r\n result = diffminutes + \" mins\";\r\n }\r\n else {\r\n result = \"Just now\";\r\n }\r\n }\r\n return result;\r\n}\r\nfunction ApplyUIDatePickerComponents() {\r\n var DateFormat = 'MM/DD/YYYY';\r\n $('.datepicker').datetimepicker({\r\n format: DateFormat,\r\n });\r\n $('.timepicker').datetimepicker({\r\n format: 'hh:mm A',\r\n //pick12HourFormat: false, // enables the 12-hour format time picker\r\n //pickSeconds: true\r\n });\r\n $('.datetimepicker').datetimepicker({\r\n format: DateFormat + ' hh:mm A',\r\n //pick12HourFormat: false, // enables the 12-hour format time picker\r\n //pickSeconds: true\r\n });\r\n $('.datetimepickertoggle').datetimepicker({\r\n format: DateFormat + ' hh:mm A',\r\n allowInputToggle: true\r\n //pick12HourFormat: false, // enables the 12-hour format time picker\r\n //pickSeconds: true\r\n });\r\n $('.bdatepicker').datetimepicker({ // this is now used in the ExtentionHelper.cs\r\n format: DateFormat,\r\n maxDate: 'now',\r\n });\r\n}\r\nfunction ApplyFormValidationClasses() {\r\n $(\"span.field-validation-valid, span.field-validation-error\").addClass('help-block');\r\n $(\"div.form-group\").has(\"span.field-validation-error\").addClass('has-error');\r\n $(\"div.validation-summary-errors\").has(\"li:visible\").addClass(\"alert alert-block alert-danger\");\r\n}\r\nfunction addUrlParam(search, key, val) {\r\n var newParam = key + '=' + val,\r\n params = '?' + newParam;\r\n\r\n // If the \"search\" string exists, then build params from it\r\n if (search) {\r\n // Try to replace an existance instance\r\n params = search.replace(new RegExp('([?&])' + key + '[^&]*'), '$1' + newParam);\r\n\r\n // If nothing was replaced, then add the new param to the end\r\n if (params === search) {\r\n params += '&' + newParam;\r\n }\r\n }\r\n window.location.hash = params;\r\n return params;\r\n}\r\nfunction LoadImagePreview(input, destination_selector, height, width, current_image_selector) {\r\n if (input.files && input.files[0]) {\r\n var reader = new FileReader();\r\n reader.onload = function (e) {\r\n $(destination_selector).empty();\r\n var content = $('
').addClass('content');\r\n if (mimetypes.indexOf(input.files[0].type) > -1) {\r\n var preview = $('

');\r\n preview.text('Uploaded Image Preview');\r\n preview.appendTo(content);\r\n var img = $('');\r\n img.attr('src', e.target.result);\r\n img.css('max-height', height);\r\n img.css('max-width', width);\r\n img.appendTo(content);\r\n var cancel = $('').text(\"Cancel\").addClass('btn btn-danger btn-xs');\r\n cancel.css('margin', '10px');\r\n cancel.click(function (e) {\r\n e.preventDefault();\r\n $(destination_selector).empty();\r\n $(input).val('');\r\n if (typeof (current_image_selector) !== 'undefined' && current_image_selector.length > 0) {\r\n $(current_image_selector).show();\r\n }\r\n })\r\n cancel.appendTo(content);\r\n }\r\n else {\r\n var link = $('');\r\n link.text(input.files[0].name + \" is not a valid image.\");\r\n link.appendTo(content);\r\n }\r\n content.appendTo(destination_selector);\r\n if (typeof (current_image_selector) !== 'undefined' && current_image_selector.length > 0) {\r\n $(current_image_selector).hide();\r\n }\r\n }\r\n reader.readAsDataURL(input.files[0]);\r\n }\r\n}\r\nfunction DismissAlert(dismiss_url, alert_id) {\r\n ExecuteAjaxGet(dismiss_url + '?alert_id=' + alert_id, \"The alert could not be dismissed.\", function (data) {\r\n console.log(data);\r\n });\r\n}\r\nvar alerted_ids = [];\r\nfunction LoadAlerts(ajaxUrl, dismiss_url) {\r\n ExecuteAjaxGet(ajaxUrl, \"The alerts could not be loaded.\", function (data) {\r\n if (data.Data.length > 0) {\r\n var alerts = data.Data.reverse();\r\n for (var i = 0; i < alerts.length; i++) {\r\n var item = alerts[i];\r\n var index = alerted_ids.indexOf(item.SystemAlertId)\r\n if (index === -1) {\r\n alerted_ids.push(item.SystemAlertId);\r\n var tsettings = { \"timeOut\": 0, \"closeButton\": true, \"tapToDismiss\": false, \"onclick\": null, \"extendedTimeOut\": 0, \"preventDuplicates\": true, \"positionClass\": \"toast-top-full-width\", \"alert_id\": item.SystemAlertId };\r\n tsettings.onHidden = function () {\r\n DismissAlert(dismiss_url, this.alert_id);\r\n var index = alerted_ids.indexOf(this.alert_id)\r\n if (index > -1) {\r\n alerted_ids.splice(index, 1);\r\n }\r\n }\r\n var tstr = null;\r\n switch (item.AlertType) {\r\n case 0:\r\n tstr = toastr.info(item.Message, null, tsettings);\r\n break;\r\n case 1:\r\n tstr = toastr.success(item.Message, null, tsettings);\r\n break;\r\n case 2:\r\n tstr = toastr.warning(item.Message, null, tsettings);\r\n break;\r\n case 3:\r\n tstr = toastr.error(item.Message, null, tsettings);\r\n break;\r\n default:\r\n }\r\n }\r\n\r\n }\r\n }\r\n });\r\n}\r\nfunction IsNotNull(obj) {\r\n return obj !== null;\r\n}\r\nfunction IsNull(obj) {\r\n return obj === null;\r\n}\r\nfunction IsNotEmpty(obj) {\r\n return IsNotNull(obj) && obj.length > 0;\r\n}\r\nfunction IsUndefined(obj) {\r\n return typeof obj === 'undefined';\r\n}\r\nfunction ExecuteAjaxGet(url, failedMessage, doneFunction, supress_error) {\r\n $.ajax({\r\n url: url,\r\n success: function (data) {\r\n if (data) {\r\n if (typeof doneFunction === \"function\") {\r\n doneFunction(data);\r\n }\r\n } else {\r\n if (!supress_error) {\r\n toastr.error(IsNotEmpty(failedMessage) ? failedMessage : \"Error occurred during background function call.\");\r\n }\r\n }\r\n },\r\n statusCode: {\r\n 404: function () {\r\n if (!supress_error) {\r\n toastr.error(IsNotEmpty(failedMessage) ? failedMessage : \"Error occurred during background function call. (404)\");\r\n }\r\n },\r\n 500: function () {\r\n if (!supress_error) {\r\n toastr.error(IsNotEmpty(failedMessage) ? failedMessage : \"Error occurred during a background function call. (500)\");\r\n }\r\n }\r\n }\r\n });\r\n}\r\nfunction ExecuteAjaxGetPlain(url, doneFunction, failFunction) {\r\n $.ajax({\r\n url: url,\r\n success: function (data, textStatus, request) {\r\n if (data) {\r\n if (typeof doneFunction === \"function\") {\r\n doneFunction(data);\r\n }\r\n } else {\r\n failFunction(textStatus,request);\r\n }\r\n },\r\n error: function (request, textStatus, errorThrown) {\r\n failFunction(textStatus, request, errorThrown);\r\n }\r\n });\r\n}\r\nfunction ExecuteAjaxPost(url, payload, failedMessage, doneFunction, failFunction) {\r\n $.ajax({\r\n url: url,\r\n type: \"POST\",\r\n data: payload,\r\n //data: JSON.stringify(payload),\r\n //contentType: \"application/json; charset=utf-8\",\r\n //dataType: \"json\",\r\n success: function (data) {\r\n if (data) {\r\n if (typeof doneFunction === \"function\") {\r\n doneFunction(data);\r\n }\r\n } else {\r\n toastr.error(IsNotEmpty(failedMessage) ? failedMessage : \"Error occurred during background function call.\");\r\n }\r\n },\r\n error: function (request, textStatus, errorThrown) {\r\n if (typeof failFunction === \"function\") {\r\n failFunction(request, textStatus, errorThrown);\r\n } else {\r\n if (request.status === 404) {\r\n toastr.error(IsNotEmpty(failedMessage) ? failedMessage : \"Error occurred during background function call. (404)\");\r\n } else if (request.status === 500) {\r\n toastr.error(IsNotEmpty(failedMessage) ? failedMessage : \"Error occurred during a background function call. (500)\");\r\n }\r\n }\r\n }\r\n //,\r\n //statusCode: {\r\n // 404: function (data, data2, data3, data4) {\r\n // toastr.error(IsNotEmpty(failedMessage) ? failedMessage : \"Error occurred during background function call. (404)\");\r\n // },\r\n // 500: function (data, data2, data3, data4) {\r\n // toastr.error(IsNotEmpty(failedMessage) ? failedMessage : \"Error occurred during a background function call. (500)\");\r\n // }\r\n //}\r\n });\r\n}\r\n\r\nfunction NavigateToUrl(url) {\r\n var queryIndicator = \"\";\r\n if (url.indexOf(\"#\") > 0) {\r\n queryIndicator = \"#\"\r\n } else if (url.indexOf(\"&\") > 0) {\r\n queryIndicator = \"&\"\r\n }\r\n var rawOriginal = window.location.toString().toLowerCase();\r\n var rawUrl = url.toString().toLowerCase();\r\n window.location.href = url;\r\n if (queryIndicator !== \"\") {\r\n if (rawOriginal.indexOf(queryIndicator) >= 0) {\r\n rawOriginal = rawOriginal.slice(0, rawOriginal.indexOf(queryIndicator));\r\n }\r\n if (rawUrl.indexOf(queryIndicator) >= 0) {\r\n rawUrl = rawUrl.slice(0, rawUrl.indexOf(queryIndicator))\r\n }\r\n if (rawOriginal === rawUrl) {\r\n window.location.reload();\r\n }\r\n }\r\n\r\n\r\n console.log(\"Clicked to navigate to: \" + url);\r\n}\r\n"],"names":["Array","prototype","find","Object","defineProperty","value","predicate","this","TypeError","o","len","length","thisArg","arguments","k","kValue","call","configurable","writable","String","startsWith","searchString","position","indexOf","fromCodePoint","codeUnits","index","result","codePoint","Number","isFinite","floor","RangeError","push","stringFromCharCode","apply","object","$defineProperty","error","console","log","fromCharCode","Math","map","callback","T","A","mappedValue","O","jQuery","validator","setDefaults","highlight","element","errorClass","validClass","type","findByName","name","addClass","removeClass","$","closest","unhighlight","unobtrusive","adapters","add","options","prefix","fieldName","substr","lastIndexOf","other","params","fullOtherName","replace","form","rules","message","messages","addMethod","otherValue","val","escape","fn","style","text","CSSStyleDeclaration","getPropertyValue","a","getAttribute","setProperty","styleName","priority","rule","setAttribute","RegExp","cssText","removeProperty","removeAttribute","getPropertyPriority","test","get","setTimezoneCookie","resizeend","el","base","$el","data","rtime","Date","timeout","delta","init","extend","defaultOptions","runOnStart","onDragEnd","resize","setTimeout","each","disable","disabled","enable","animateRotate","startAngle","endAngle","duration","easing","complete","elem","deg","animate","step","now","css","-moz-transform","-webkit-transform","-o-transform","-ms-transform","transform","noop","rotate","degrees","current_screen_w","current_screen_h","screen_sm","chat_scroll_offset","message_list_offset","bottom_padding","nameinit","window_active","is_mobile_native","IsMobileNative","Cookies","ResizeWindow","ScrollToBottom","stackTrace","Error","stack","isOnBottom","scrollHeight","scrollTop","outerHeight","resizeNavBar","nav_width","parent","width","is","getUrlVars","hash","vars","hashes","window","location","href","slice","split","i","getHashVars","currenthash","getHashVar","hashArray","findWithAttr","setHashVars","addHashVar","removeHashVar","splice","urlWOQueryString","url","iOSversion","v","navigator","platform","match","parseInt","detectIE","ua","userAgent","msie","trident","substring","rv","postIdleRefresh","postIdleRefreshAjax","reload","detectMobileDevice","check","vendor","opera","SaveData","obj","localStorage","setItem","JSON","stringify","LoadData","parse","getItem","GetCachedData","dafault_data","CacheData","LoadDataFromCookie","LoadFromCookie","SaveDataToCookie","secureOnly","SaveToCookie","set","secure","sameSite","LoadDataSafe","stringToColour","str","charCodeAt","colour","j","toString","shadeBlendConvert","p","from","to","sbcRip","d","l","RGB","parseFloat","r","h","b","round","f","t","test_cookie","timezone_cookie","getTimezoneOffset","array","attr","findWithDualAttr","attr1","value1","attr2","value2","LocalDate","date","arrayMerge","array1","array2","compare","filter","concat","RelativeDate","dateo","yesterday","hourago","setHours","getHours","getMonth","getDate","getFullYear","ampm","hours","minutes","getMinutes","diff","abs","diffminutes","ApplyUIDatePickerComponents","DateFormat","datetimepicker","format","allowInputToggle","maxDate","ApplyFormValidationClasses","has","addUrlParam","search","key","newParam","LoadImagePreview","input","destination_selector","height","current_image_selector","reader","files","FileReader","onload","e","empty","link","content","mimetypes","preview","appendTo","img","target","cancel","click","preventDefault","show","hide","readAsDataURL","DismissAlert","dismiss_url","alert_id","ExecuteAjaxGet","focus","blur","hidden","onchange","evt","evtMap","focusin","pageshow","focusout","pagehide","event","document","addEventListener","onfocusin","onfocusout","onpageshow","onpagehide","onfocus","onblur","undefined","ready","collapse","toggle","on","toastr","closeButton","debug","newestOnTop","progressBar","positionClass","preventDuplicates","onclick","showDuration","hideDuration","timeOut","extendedTimeOut","showEasing","hideEasing","showMethod","hideMethod","ajaxComplete","trigger","alerted_ids","LoadAlerts","ajaxUrl","Data","alerts","reverse","item","SystemAlertId","tsettings","tapToDismiss","onHidden","AlertType","info","Message","success","warning","IsNotNull","IsNull","IsNotEmpty","IsUndefined","failedMessage","doneFunction","supress_error","ajax","statusCode","404","500","ExecuteAjaxGetPlain","failFunction","textStatus","request","errorThrown","ExecuteAjaxPost","payload","status","NavigateToUrl","queryIndicator","rawOriginal","toLowerCase","rawUrl"],"mappings":"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"}