{"version":3,"sources":["lps_core.js"],"names":["PeopleMedia","Net","Oid","handleException","CP","apply","arguments","ex","createCookie","name","value","days","serialize","cookieDomain","cookieValue","expires","getDomainName","toLowerCase","date","Date","setTime","getTime","toGMTString","length","serializeKeyValues","document","cookie","oid","method","hostname","host","window","location","arr","split","arrLen","test","readCookie","raw","nameEQ","ca","i","c","charAt","substring","indexOf","val","parseKeyValueString","eraseCookie","hash","pieces","pair","key","decodeURIComponent","str","pairs","hasOwnProperty","push","encodeURIComponent","join","getQueryString","queryString","qs","search","parseQueryString","keyVals","count","equalPos","createQueryString","keyValues","excludeKeys","keyFound","currentKeyValuePair","currentKey","currentKeyLower","currentValue","newQS","Array","isArray","excludeIndex","excludeCount","getQueryStringValue","keyLower","createKeyValues","dict","addQueryStringValue","url","newUrl","nameValue","getUrlWithoutQueryString","qIndex","getQueryStringFromUrl","getQueryStringKeys","result","getQueryStringKeyValue","persistCookies","response","Cookies","supportsWebStorage","sessionStorage","setItem","readTest","getItem","removeItem","e","loadState","state","JSON","parse","saveState","serializedValue","stringify","clearState"],"mappings":"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","file":"../lps_core.js","sourcesContent":["var PeopleMedia = PeopleMedia || {};\r\nPeopleMedia.Net = (function () {\r\n \"use strict\";\r\n var Oid = \"PeopleMedia.Net\";\r\n\r\n var handleException = function () {\r\n try {\r\n if (typeof (PeopleMedia.CP.handleException) === \"function\") {\r\n PeopleMedia.CP.handleException.apply(null, arguments);\r\n }\r\n } catch (ex) {\r\n }\r\n };\r\n\r\n var createCookie = function(name, value, days, serialize) {\r\n var cookieDomain = null;\r\n try {\r\n var expires = \"\";\r\n var cookieValue;\r\n cookieDomain = (getDomainName()).toLowerCase();\r\n if (days) {\r\n var date = new Date();\r\n date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\r\n expires = \"; expires=\" + date.toGMTString();\r\n }\r\n cookieValue = (arguments.length > 3 && serialize) ? serializeKeyValues(value) : value;\r\n document.cookie = name + \"=\" + cookieValue + expires + \"; path=/; domain=\" + cookieDomain + \";secure\";\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"createCookie\", cookieDomain: cookieDomain });\r\n }\r\n };\r\n\r\n var getDomainName = function(hostname) {\r\n var host;\r\n try {\r\n host = hostname || window.location.hostname;\r\n var arr = host.split('.');\r\n var arrLen = arr.length;\r\n if (arrLen === 3) {\r\n return arr[1] + '.' + arr[2];\r\n }\r\n if (arrLen === 4) {\r\n var ip = /^(?:[0-9]{1,3}\\.){3}[0-9]{1,3}$/g;\r\n if (ip.test(host)) {\r\n return host;\r\n }\r\n }\r\n if (arrLen > 3) {\r\n return arr[arrLen - 2] + '.' + arr[arrLen - 1];\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"getDomainName\" });\r\n }\r\n return host;\r\n };\r\n\r\n var readCookie = function(name, raw) {\r\n try {\r\n var nameEQ = name + \"=\";\r\n var ca = document.cookie.split(';');\r\n for (var i = 0; i < ca.length; i++) {\r\n var c = ca[i];\r\n while (c.charAt(0) === ' ') {\r\n c = c.substring(1, c.length);\r\n }\r\n if (c.indexOf(nameEQ) === 0) {\r\n var val = c.substring(nameEQ.length, c.length);\r\n if (!raw && (val.indexOf('&') >= 0 || val.indexOf('=') >= 0)) {\r\n return parseKeyValueString(val);\r\n } else {\r\n return val;\r\n }\r\n }\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"readCookie\", name: name });\r\n }\r\n return null;\r\n };\r\n\r\n var eraseCookie = function(name) {\r\n try {\r\n createCookie(name, \"\", -1);\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"eraseCookie\", name: name });\r\n }\r\n };\r\n\r\n var parseKeyValueString = function(val) {\r\n var hash = [];\r\n try {\r\n var pieces = val.split('&');\r\n for (var i = 0; i < pieces.length; i++) {\r\n var pair = pieces[i].split('=');\r\n if (pair.length > 0) {\r\n var key = decodeURIComponent(pair[0]);\r\n var str = decodeURIComponent(pair[1]);\r\n hash[key] = str;\r\n }\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"parseKeyValueString\" });\r\n }\r\n return hash;\r\n };\r\n\r\n var serializeKeyValues = function(hash) {\r\n try {\r\n if (typeof(hash) !== \"undefined\" && hash !== null) {\r\n var pairs = [];\r\n for (var key in hash) {\r\n if (hash.hasOwnProperty(key)) {\r\n pairs.push(encodeURIComponent(key) + '=' + encodeURIComponent(hash[key]));\r\n }\r\n }\r\n return pairs.join('&');\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"serializeKeyValues\" });\r\n }\r\n return null;\r\n };\r\n\r\n var getQueryString = function(queryString) {\r\n try {\r\n var qs = (typeof (queryString) === 'undefined' || queryString === null)\r\n ? window.location.search\r\n : queryString;\r\n return parseQueryString(qs);\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"getQueryString\" });\r\n return [];\r\n }\r\n };\r\n\r\n var parseQueryString = function(queryString) {\r\n try {\r\n var keyVals = [];\r\n var raw;\r\n if (typeof (queryString) === 'undefined' || queryString === null || queryString.length < 1) {\r\n raw = '';\r\n } else if (queryString.substring(0, 1) === '?') {\r\n raw = queryString.substring(1);\r\n } else {\r\n raw = queryString;\r\n }\r\n var pairs = raw.split(\"&\");\r\n for (var i = 0, count = pairs.length; i < count; i++) {\r\n var key = \"\";\r\n var val = \"\";\r\n var equalPos = pairs[i].indexOf(\"=\");\r\n\r\n if (equalPos < 0) {\r\n key = pairs[i];\r\n val = null;\r\n } else {\r\n if (equalPos >= 1) {\r\n key = pairs[i].substring(0, equalPos);\r\n }\r\n if (equalPos < pairs[i].length - 1) {\r\n val = pairs[i].substring(equalPos + 1, pairs[i].length);\r\n }\r\n }\r\n if (key.length > 0) {\r\n keyVals.push({ \"key\": key, \"value\": val });\r\n }\r\n }\r\n return keyVals;\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"parseQueryString\" });\r\n return [];\r\n }\r\n };\r\n\r\n var createQueryString = function(keyValues, excludeKeys) {\r\n try {\r\n var newQS = \"\";\r\n var keyFound;\r\n var currentKeyValuePair;\r\n var currentKey;\r\n var currentKeyLower;\r\n var currentValue;\r\n if (typeof (excludeKeys) === 'undefined' || excludeKeys === null || excludeKeys.length <= 0) {\r\n excludeKeys = [];\r\n }\r\n if (Array.isArray(keyValues)) {\r\n for (var i = 0, count = keyValues.length; i < count; i++) {\r\n currentKeyValuePair = keyValues[i];\r\n if (typeof (currentKeyValuePair) !== 'undefined' && currentKeyValuePair !== null && currentKeyValuePair.hasOwnProperty(\"key\") && currentKeyValuePair.hasOwnProperty(\"value\")) {\r\n currentKey = currentKeyValuePair.key;\r\n currentKeyLower = (typeof (currentKey) !== 'undefined' && currentKey !== null) ? currentKey.toLowerCase() : currentKey;\r\n currentValue = currentKeyValuePair.value;\r\n keyFound = false;\r\n for (var excludeIndex = 0, excludeCount = excludeKeys.length; excludeIndex < excludeCount; excludeIndex++) {\r\n if (excludeKeys[excludeIndex] && excludeKeys[excludeIndex].toLowerCase() === currentKeyLower) {\r\n keyFound = true;\r\n break;\r\n }\r\n }\r\n if (!keyFound) {\r\n if (newQS.length > 0) {\r\n newQS += \"&\";\r\n }\r\n newQS += currentKey + ((typeof (currentValue) !== 'undefined' && currentValue !== null) ? (\"=\" + currentValue) : '');\r\n }\r\n }\r\n }\r\n }\r\n if (newQS.length > 0) {\r\n newQS = \"?\" + newQS;\r\n }\r\n return newQS;\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"createQueryString\" });\r\n return [];\r\n }\r\n };\r\n\r\n var getQueryStringValue = function(keyValues, key) {\r\n try {\r\n var currentKeyValuePair;\r\n var currentKey;\r\n var currentKeyLower;\r\n var keyLower;\r\n if (typeof (keyValues) !== 'undefined' && keyValues !== null && typeof (key) !== 'undefined' && key !== null) {\r\n if (Array.isArray(keyValues)) {\r\n keyLower = key.toLowerCase();\r\n for (var i = 0, count = keyValues.length; i < count; i++) {\r\n currentKeyValuePair = keyValues[i];\r\n if (typeof (currentKeyValuePair) !== 'undefined' && currentKeyValuePair !== null && currentKeyValuePair.hasOwnProperty(\"key\") && currentKeyValuePair.hasOwnProperty(\"value\")) {\r\n currentKey = currentKeyValuePair.key;\r\n currentKeyLower = (typeof (currentKey) !== 'undefined' && currentKey !== null) ? currentKey.toLowerCase() : currentKey;\r\n if (currentKeyLower === keyLower) {\r\n return currentKeyValuePair.value;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"getQueryStringValue\" });\r\n }\r\n return null;\r\n };\r\n\r\n var createKeyValues = function(dict) {\r\n try {\r\n var keyVals = [];\r\n var val;\r\n for (var key in dict) {\r\n if (dict.hasOwnProperty(key) && typeof (key) !== 'undefined' && key !== null && key.length > 0) {\r\n val = dict[key];\r\n keyVals.push({ \"key\": key, \"value\": val });\r\n }\r\n }\r\n return keyVals;\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"createKeyValues\" });\r\n }\r\n return [];\r\n };\r\n\r\n var addQueryStringValue = function(url, name, val) {\r\n try {\r\n var newUrl = (typeof (url) !== 'undefined' && url !== null) ? url : '';\r\n var nameValue = ((typeof (name) !== 'undefined' && name !== null) ? name : '') + ((typeof (val) !== 'undefined' && val !== null) ? (\"=\" + val) : '');\r\n if (nameValue.length > 0) {\r\n return newUrl + ((newUrl.indexOf(\"?\") < 0) ? '?' : '&') + nameValue;\r\n } else {\r\n return newUrl;\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"addQueryStringValue\" });\r\n return [];\r\n }\r\n };\r\n\r\n var getUrlWithoutQueryString = function(url) {\r\n try {\r\n if (typeof (url) === 'undefined' || url === null) {\r\n return '';\r\n }\r\n var qIndex = url.indexOf(\"?\");\r\n if (qIndex < 0) {\r\n return url;\r\n } else {\r\n return url.substring(0, qIndex);\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"getUrlWithoutQueryString\" });\r\n return [];\r\n }\r\n };\r\n\r\n var getQueryStringFromUrl = function(url) {\r\n try {\r\n if (typeof (url) === 'undefined' || url === null) {\r\n return '';\r\n }\r\n var qIndex = url.indexOf(\"?\");\r\n if (qIndex > 0) {\r\n return url.substring(qIndex + 1);\r\n } else {\r\n return '';\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"getQueryStringFromUrl\" });\r\n return [];\r\n }\r\n };\r\n\r\n var getQueryStringKeys = function(keyValues) {\r\n var result = [];\r\n try {\r\n var currentKeyValuePair;\r\n var currentKey;\r\n if (typeof (keyValues) !== 'undefined' && keyValues !== null) {\r\n if (Array.isArray(keyValues)) {\r\n for (var i = 0, count = keyValues.length; i < count; i++) {\r\n currentKeyValuePair = keyValues[i];\r\n if (typeof (currentKeyValuePair) !== 'undefined' && currentKeyValuePair !== null && currentKeyValuePair.hasOwnProperty(\"key\") && currentKeyValuePair.hasOwnProperty(\"value\")) {\r\n currentKey = currentKeyValuePair.key;\r\n if (typeof (currentKey) !== 'undefined' && currentKey !== null) {\r\n result.push(currentKey);\r\n }\r\n }\r\n }\r\n }\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"getQueryStringKeys\" });\r\n }\r\n return result;\r\n };\r\n\r\n var getQueryStringKeyValue = function (key) {\r\n try {\r\n var qs = PeopleMedia.Net.getQueryString();\r\n return PeopleMedia.Net.getQueryStringValue(qs, key); \r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"getQueryStringKeyValue\", key: key });\r\n return null;\r\n }\r\n };\r\n\r\n var persistCookies = function (response) {\r\n if (response.Cookies) {\r\n for (var key in response.Cookies) {\r\n if (response.Cookies.hasOwnProperty(key)) {\r\n PeopleMedia.Net.createCookie(key, response.Cookies[key], 30);\r\n }\r\n }\r\n }\r\n };\r\n\r\n var supportsWebStorage = function() {\r\n try {\r\n window.sessionStorage.setItem('Lps.State.Test', '1');\r\n var readTest = window.sessionStorage.getItem('Lps.State.Test');\r\n window.sessionStorage.removeItem('Lps.State.Test');\r\n return (readTest === '1');\r\n } catch (e) {\r\n return false;\r\n }\r\n };\r\n\r\n var loadState = function(name) {\r\n var state = {};\r\n name = name || \"Lps.State\";\r\n if (supportsWebStorage()) {\r\n state = window.sessionStorage.getItem(name);\r\n } else {\r\n state = readCookie(name, true);\r\n }\r\n try {\r\n state = JSON.parse(state);\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"loadState\", name: name });\r\n state = null;\r\n }\r\n return state || {};\r\n };\r\n\r\n var saveState = function(name, value) {\r\n try {\r\n name = name || \"Lps.State\";\r\n var serializedValue = JSON.stringify(value);\r\n if (supportsWebStorage()) {\r\n window.sessionStorage.setItem(name, serializedValue);\r\n } else {\r\n createCookie(name, serializedValue);\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"saveState\", name: name });\r\n }\r\n };\r\n\r\n var clearState = function(name) {\r\n try {\r\n name = name || \"Lps.State\";\r\n if (supportsWebStorage()) {\r\n window.sessionStorage.removeItem(name);\r\n } else {\r\n eraseCookie(name);\r\n }\r\n } catch (ex) {\r\n handleException(ex, { oid: Oid, method: \"clearState\", name: name });\r\n }\r\n };\r\n\r\n return {\r\n createCookie: createCookie,\r\n getDomainName: getDomainName,\r\n readCookie: readCookie,\r\n eraseCookie: eraseCookie,\r\n persistCookies: persistCookies,\r\n getQueryString: getQueryString,\r\n parseQueryString: parseQueryString,\r\n createQueryString: createQueryString,\r\n getQueryStringValue: getQueryStringValue,\r\n addQueryStringValue: addQueryStringValue,\r\n getUrlWithoutQueryString: getUrlWithoutQueryString,\r\n getQueryStringFromUrl: getQueryStringFromUrl,\r\n getQueryStringKeys: getQueryStringKeys,\r\n getQueryStringKeyValue: getQueryStringKeyValue,\r\n parseKeyValueString: parseKeyValueString,\r\n createKeyValues: createKeyValues,\r\n supportsWebStorage: supportsWebStorage,\r\n loadState: loadState,\r\n saveState: saveState,\r\n clearState: clearState\r\n };\r\n})();\r\n"]}