{"version":3,"file":"site.min.js","sources":["site.js"],"sourcesContent":["// Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification\r\n// for details on configuring this project to bundle and minify static web assets.\r\n\r\n// Write your JavaScript code.\r\n\r\n// Cookies - For Keeping User Preference\r\n\r\nvar isMobile = false;\r\nvar isTablet = false;\r\n\r\nvar currentWidth = 0;\r\nvar currentHeight = 0;\r\n\r\ncheckIfMobile = function () {\r\n // get browser width\r\n currentWidth = window.innerWidth || document.documentElement.clientWidth;\r\n currentHeight = window.innerHeight || document.documentElement.clientHeight;\r\n\r\n var md = new MobileDetect(navigator.userAgent)\r\n\r\n isMobile = (md.phone() != null);\r\n isTablet = (md.tablet() != null);\r\n\r\n //detect known mobile/tablet usage\r\n //if ((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) || (navigator.userAgent.match(/Android/i)) || (navigator.userAgent.match(/Blackberry/i)) || (navigator.userAgent.match(/Windows Phone/i))) {\r\n // isMobile = true;\r\n //}else if (navigator.userAgent.match(/iPad/i)) {\r\n // isTablet = true;\r\n //}\r\n};\r\n\r\nfunction setCookie(cname, cvalue, exdays) {\r\n\tvar d = new Date();\r\n\td.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\r\n\tvar expires = \"expires=\" + d.toUTCString();\r\n\tdocument.cookie = cname + \"=\" + cvalue + \";\" + expires + \";path=/\";\r\n}\r\n\r\nfunction getCookie(cname) {\r\n\tvar name = cname + \"=\";\r\n\tvar ca = document.cookie.split(';');\r\n\tfor (var i = 0; i < ca.length; i++) {\r\n\t\tvar c = ca[i];\r\n\t\twhile (c.charAt(0) === ' ') {\r\n\t\t\tc = c.substring(1);\r\n\t\t}\r\n\t\tif (c.indexOf(name) === 0) {\r\n\t\t\treturn c.substring(name.length, c.length);\r\n\t\t}\r\n\t}\r\n\treturn \"\";\r\n}\r\n\r\nfunction setMode(sMode) {\r\n\r\n $(\"body\").removeClass(\"light-mode\")\r\n .removeClass(\"dark-mode\")\r\n .removeClass(\"blue\")\r\n .removeClass(\"purple\");\r\n\r\n $(\"body\").addClass(sMode);\r\n\r\n setCookie(\"site-mode\", sMode, 365);\r\n}\r\n\r\nformatLocalDateTime = function (iUnixTimeStamp, sformat) {\r\n\r\n if (sformat === undefined) {\r\n sformat = \"d/m/y h:m:s\"\r\n }\r\n\r\n return formatLocalTime(iUnixTimeStamp, sformat)\r\n};\r\n\r\nformatLocalTime = function (iUnixTimeStamp, sformat) {\r\n if (sformat === undefined) {\r\n sformat = \"h:m\"\r\n }\r\n if (iUnixTimeStamp == null) {\r\n iUnixTimeStamp = 0;\r\n }\r\n if (iUnixTimeStamp == 0) {\r\n return \"--:--\";\r\n } else {\r\n var d = new Date(iUnixTimeStamp);\r\n\r\n return formatDateTime(d, sformat);\r\n }\r\n};\r\n\r\ndownloadExport = function (obj) {\r\n var $this = $(obj);\r\n\r\n if (!$this.hasClass(\"disabled\")) {\r\n $this.addClass(\"disabled\");\r\n\r\n var sContent = \"
\"\r\n + \"
\"\r\n + \" \"\r\n + \"
\"\r\n + \"

Processing Please Wait

\"\r\n + \"
\";\r\n\r\n loadLocalContent(\"overlay-content\", sContent, true, \"md\", \"Exporting Data\");\r\n\r\n $.ajax({\r\n type: \"GET\",\r\n url: $this.attr(\"href\"),\r\n cache: false,\r\n xhr: function () {\r\n var xhr = new XMLHttpRequest();\r\n xhr.responseType = 'blob'\r\n return xhr;\r\n },\r\n success: function (data, textStatus, xhr) {\r\n //debugger;\r\n $this.removeClass(\"disabled\", false);\r\n\r\n if (textStatus.indexOf(\"error\") > -1) {\r\n loadLocalContent(\"overlay-content\", \"

Error exporting data - please try again.

\", true, \"md\", \"Exporting Data Error\");\r\n } else {\r\n //var blob = new Blob([data], { type: \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\" });\r\n //var blob = new Blob([data], { type: \"application/octet-stream\" });\r\n var blob = data;\r\n var filename = \"\";\r\n var disposition = xhr.getResponseHeader('Content-Disposition');\r\n\r\n if (disposition && disposition.indexOf('attachment') !== -1) {\r\n var filenameRegex = /filename[^;=\\n]*=((['\"]).*?\\2|[^;\\n]*)/;\r\n var matches = filenameRegex.exec(disposition);\r\n if (matches != null && matches[1]) {\r\n filename = matches[1].replace(/['\"]/g, '');\r\n }\r\n }\r\n\r\n //Check the Browser type and download the File.\r\n var isIE = false || !!document.documentMode;\r\n\r\n if (isIE) {\r\n window.navigator.msSaveBlob(blob, filename);\r\n } else {\r\n var url = window.URL || window.webkitURL;\r\n\r\n try {\r\n link = url.createObjectURL(blob);\r\n } catch (e) {\r\n link = url.createObjectURL(new Blob([data], { type: \"application/octet-stream\" }));\r\n }\r\n\r\n var sDownloadContent = \"
\"\r\n + \"
\"\r\n + \" \"\r\n + \"
\"\r\n + \"

Export Complete

\"\r\n + \"

If your file doesn't automatically download .

\"\r\n + \"

\";\r\n\r\n loadLocalContent(\"overlay-content\", sDownloadContent, true, \"md\", \"Export Data\");\r\n\r\n var a = $(\"click here\");\r\n a.attr(\"download\", filename);\r\n a.attr(\"href\", link);\r\n\r\n $(\"#download-link\").append(a);\r\n a[0].click();\r\n }\r\n }\r\n },\r\n failure: function (response) {\r\n $this.removeClass(\"disabled\", false);\r\n\r\n if (response.indexOf(\"error\") > -1) {\r\n loadLocalContent(\"overlay-content\", \"

Error exporting data - please try again.

\", true, \"md\", \"Exporting Data Error\");\r\n }\r\n },\r\n error: function (response) {\r\n $this.removeClass(\"disabled\", false);\r\n\r\n if (response.indexOf(\"error\") > -1) {\r\n loadLocalContent(\"overlay-content\", \"

Error exporting data - please try again.

\", true, \"md\", \"Exporting Data Error\");\r\n }\r\n }\r\n });\r\n\r\n return false;\r\n }\r\n};\r\n\r\nbindControls = function ($obj) {\r\n $obj.find('[data-mask]').each(function (idx, obj) {\r\n //$(obj).inputmask()\r\n });\r\n\r\n $obj.find('.wysiwyg').each(function (idx, obj) {\r\n $(obj).summernote({\r\n styleTags: [\r\n 'p',\r\n { title: 'Small Text', tag: 'p', className: 'small-text', value: 'p' },\r\n 'pre', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6'\r\n ]});\r\n });\r\n\r\n $obj.find('.seachableDDL').each(function (idx, obj) {\r\n $(obj).select2();\r\n });\r\n\r\n\r\n $obj.find('.colourPickerUI').each(function (idx, obj) {\r\n //color picker with addon\r\n $(obj).colorpicker()\r\n\r\n $(obj).find('.input-group-append').on(\"click\", function () {\r\n $(obj).find(\"input\").focus();\r\n });\r\n\r\n\r\n $(obj).on('colorpickerChange', function (event) {\r\n $(obj).find('.fa-square').css('color', event.color.toString());\r\n });\r\n });\r\n\r\n $obj.find('.datePickerUI').each(function (idx, obj) {\r\n $(obj).datetimepicker({\r\n format: 'DD MMM yyyy',\r\n allowInputToggle: true,\r\n keepOpen: false,\r\n debug: true,\r\n buttons: {\r\n showToday: true,\r\n showClear: true,\r\n showClose: true\r\n },\r\n icons: {\r\n time: \"far fa-clock\",\r\n date: \"far fa-calendar-alt\",\r\n up: \"fa fa-arrow-up\",\r\n down: \"fa fa-arrow-down\",\r\n clear: \"far fa-calendar-times\",\r\n close: \"far fa-times-circle\",\r\n today: 'far fa-calendar-check'\r\n }\r\n });\r\n });\r\n\r\n $obj.find('.datetimePickerUI').each(function (idx, obj) {\r\n $(obj).datetimepicker({\r\n format: 'DD MMM yyyy HH:mm',\r\n allowInputToggle: true,\r\n keepOpen: false,\r\n buttons: {\r\n showToday: true,\r\n showClear: true,\r\n showClose: true\r\n },\r\n icons: {\r\n time: \"far fa-clock\",\r\n date: \"far fa-calendar-alt\",\r\n up: \"fa fa-arrow-up\",\r\n down: \"fa fa-arrow-down\",\r\n clear: \"far fa-calendar-times\",\r\n close: \"far fa-times-circle\",\r\n today: 'far fa-calendar-check'\r\n }\r\n });\r\n });\r\n\r\n $obj.find('.timePickerUI').each(function (idx, obj) {\r\n $(obj).datetimepicker({\r\n format: 'HH:mm',\r\n allowInputToggle: true,\r\n keepOpen: false\r\n });\r\n });\r\n\r\n $obj.find(\"input[type=file]\").each(function (idx, obj) {\r\n $(obj).on(\"change\", function () {\r\n var fileName = $(this).val();\r\n\r\n if (fileName !== \"\") {\r\n if (fileName.indexOf(\"\\\\\") > 0) {\r\n aPathParts = fileName.split(\"\\\\\");\r\n\r\n if (aPathParts.length > 0) {\r\n fileName = aPathParts[aPathParts.length - 1];\r\n }\r\n }\r\n } else {\r\n fileName = \"Choose file\";\r\n }\r\n\r\n\r\n $(this).next('.custom-file-label').html(fileName);\r\n });\r\n });\r\n\r\n $obj.find('.pass_show').each(function (idx, obj) {\r\n //debugger;\r\n var $inp = $(this).find(\"input[type=password]\");\r\n\r\n var $showPass = $('
');\r\n\r\n $(obj).prepend($showPass);\r\n\r\n $showPass.on(\"click\", function () {\r\n if ($inp.attr(\"type\") == \"password\") {\r\n $inp.attr(\"type\", \"text\");\r\n $(this).html(\"\");\r\n } else {\r\n $inp.attr(\"type\", \"password\");\r\n $(this).html(\"\");\r\n }\r\n });\r\n });\r\n\r\n $obj.find('input[type=\"password\"][data-toggle=popover]').on('keyup', function () {\r\n //minimum 8 characters\r\n var bad = /(?=.{8,}).*/;\r\n\r\n //Alpha Numeric plus minimum 8\r\n var good = /^(?=\\S*?[a-z])(?=\\S*?[0-9])\\S{8,}$/;\r\n\r\n //Must contain at least one upper case letter, one lower case letter and (one number OR one special char).\r\n var better = /^(?=\\S*?[A-Z])(?=\\S*?[a-z])((?=\\S*?[0-9])|(?=\\S*?[^\\w\\*]))\\S{8,}$/;\r\n\r\n //Must contain at least one upper case letter, one lower case letter and (one number AND one special char).\r\n var best = /^(?=\\S*?[A-Z])(?=\\S*?[a-z])(?=\\S*?[0-9])(?=\\S*?[^\\w\\*])\\S{8,}$/;\r\n\r\n var password = $(this);\r\n var pass = password.val();\r\n var passLabel = $('[for=\"password\"]');\r\n\r\n var stength = 'Weak';\r\n var pclass = 'danger';\r\n\r\n if (best.test(pass) == true) {\r\n stength = 'Very Strong';\r\n pclass = 'success';\r\n } else if (better.test(pass) == true) {\r\n stength = 'Strong (Try adding a number or a symbol or a Uppercase)';\r\n pclass = 'warning';\r\n } else if (good.test(pass) == true) {\r\n stength = 'Almost Strong (At least 1 number, At least 1 symbol, At least 1 Uppercase)';\r\n pclass = 'warning';\r\n } else if (bad.test(pass) == true) {\r\n stength = 'Weak (At least 1 number, At least 1 symbol)';\r\n } else {\r\n stength = 'Very Weak (Must be 8 or more characters, At least 1 number, At least 1 symbol, At least 1 Uppercase)';\r\n }\r\n\r\n var popover = password.attr('data-content', stength).data('bs.popover');\r\n\r\n popover.setContent();\r\n\r\n var $tip = $(popover.tip);\r\n\r\n $tip.removeClass('danger success info warning primary').addClass(pclass);\r\n\r\n });\r\n\r\n $obj.find('input[data-toggle=\"popover\"]').popover({\r\n placement: 'top',\r\n trigger: 'focus'\r\n });\r\n\r\n $obj.find('i[data-toggle=\"popover\"]').popover({\r\n placement: 'left',\r\n trigger: 'hover'\r\n });\r\n}\r\n\r\n$(window).ready(function () {\r\n checkIfMobile();\r\n\r\n\tvar nav_cookie = getCookie(\"setNav\"),\r\n\t\tbody = $(\"body\");\r\n\r\n\tif (nav_cookie === \"full-menu\") {\r\n\t\tbody.removeClass(\"sidebar-collapse\");\r\n\t}\r\n\tif (nav_cookie === \"mini-menu\") {\r\n\t\tbody.addClass(\"sidebar-collapse\");\r\n\t}\r\n\r\n\tvar menutogglers = $(\"a[data-widget='pushmenu']\");\r\n\r\n menutogglers.each(function (idx, obj) {\r\n $(obj).on(\"click\", function () {\r\n if (body.hasClass(\"sidebar-collapse\")) {\r\n setCookie(\"setNav\", \"full-menu\", 1);\r\n //console.log(\"cookie: setNav = \" + nav_cookie);\r\n } else {\r\n setCookie(\"setNav\", \"mini-menu\", 1);\r\n //console.log(\"cookie: setNav = \" + nav_cookie);\r\n }\r\n });\r\n });\r\n\r\n bindControls($(this));\r\n\r\n $(\".alert-dismissible\").each(function (idx, obj) {\r\n var $obj = $(obj);\r\n\r\n if ($obj.data(\"autohide\") === true) {\r\n var iTimout = $obj.data(\"autohidedelay\");\r\n\r\n setTimeout(function () {\r\n $obj.slideUp(500);\r\n }, iTimout);\r\n }\r\n });\r\n});\r\n\r\n//if ('serviceWorker' in navigator) {\r\n// window.addEventListener(\"load\", () => {\r\n// navigator.serviceWorker.register(\"/js/ServiceWorker.js\");\r\n// });\r\n//}"],"names":["isMobile","isTablet","currentWidth","currentHeight","setCookie","cname","cvalue","exdays","d","Date","setTime","getTime","expires","toUTCString","document","cookie","getCookie","name","ca","split","i","length","c","charAt","substring","indexOf","setMode","sMode","$","removeClass","addClass","checkIfMobile","window","innerWidth","documentElement","clientWidth","innerHeight","clientHeight","md","MobileDetect","navigator","userAgent","phone","tablet","formatLocalDateTime","iUnixTimeStamp","sformat","undefined","formatLocalTime","formatDateTime","downloadExport","obj","$this","hasClass","loadLocalContent","ajax","type","url","attr","cache","xhr","XMLHttpRequest","responseType","success","data","textStatus","blob","filename","disposition","getResponseHeader","matches","exec","replace","documentMode","msSaveBlob","URL","webkitURL","link","createObjectURL","e","Blob","a","append","click","failure","response","error","bindControls","$obj","find","each","idx","summernote","styleTags","title","tag","className","value","select2","colorpicker","on","focus","event","css","color","toString","datetimepicker","format","allowInputToggle","keepOpen","debug","buttons","showToday","showClear","showClose","icons","time","date","up","down","clear","close","today","fileName","this","val","aPathParts","next","html","$inp","$showPass","prepend","password","pass","stength","pclass","test","popover","setContent","tip","placement","trigger","ready","nav_cookie","body","iTimout","setTimeout","slideUp"],"mappings":"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"}