if (typeof window !== 'undefined' && typeof window.define === 'function' && window.define.amd) { require([], function () { AvantMetricsFunction(); }); } else { AvantMetricsFunction(); } var _AvantMetrics = _AvantMetrics || []; var AvantMetrics; function AvantMetricsFunction() { window.AvantMetrics = (function () { var configTrackerUrl = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.avmws.com/1018521/', documentAlias = document, windowAlias = window, escapeWrapper = windowAlias.encodeURIComponent || escape, unescapeWrapper = windowAlias.decodeURIComponent || unescape, stringify = function (value) { var escapable = new RegExp('[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]', 'g'), meta = { '\b': '\\b', '\t': '\\t', '\n': '\\n', '\f': '\\f', '\r': '\\r', '"': '\\"', '\\': '\\\\' }; function quote(string) { escapable.lastIndex = 0; return escapable.test(string) ? '"' + string.replace(escapable, function (a) { var c = meta[a]; return typeof c === 'string' ? c : '\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4); }) + '"' : '"' + string + '"'; } function f(n) { return n < 10 ? '0' + n : n; } function str(key, holder) { var i, k, v, partial, value = holder[key]; if (value === null) { return 'null'; } switch (typeof value) { case 'string': return quote(value); case 'number': return isFinite(value) ? String(value) : 'null'; case 'boolean': return String(value); case 'object': partial = []; if (value instanceof Array) { for (i = 0; i < value.length; i++) { partial[i] = str(i, value) || 'null'; } v = partial.length === 0 ? '[]' : '[' + partial.join(',') + ']'; return v; } if (value instanceof Date) { return quote(value.getUTCFullYear() + '-' + f(value.getUTCMonth() + 1) + '-' + f(value.getUTCDate()) + 'T' + f(value.getUTCHours()) + ':' + f(value.getUTCMinutes()) + ':' + f(value.getUTCSeconds()) + 'Z'); } for (k in value) { v = str(k, value); if (v) { partial[partial.length] = quote(k) + ':' + v; } } v = partial.length === 0 ? '{}' : '{' + partial.join(',') + '}'; return v; } } return str('', { '': value }); }, doTrackOrder = false; function isDefined(property) { return typeof property !== 'undefined'; } function getCookie(cookieName) { let storagePattern = new RegExp('(^|;)[ ]*' + cookieName + '=([^;]*)') , expirationPattern = new RegExp('(^|;)[ ]*expires=([^;]*)') , storageMatch = null; if (localStorage.getItem(cookieName) && expirationPattern.exec(localStorage.getItem(cookieName))[2] >= new Date().toGMTString()) { localStorage.removeItem(cookieName); } else if (localStorage.getItem(cookieName)) { storageMatch = storagePattern.exec(localStorage.getItem(cookieName)); } if (!storageMatch) { storageMatch = storagePattern.exec(documentAlias.cookie); } return storageMatch ? unescapeWrapper(storageMatch[2]) : '0'; } function getScript(url) { var avm = document.createElement('script'); avm.type = 'text/javascript'; avm.async = true; avm.src = url; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(avm, s); } function getReferrer() { var referrer = ''; try { referrer = top.document.referrer; } catch (e) { if (parent) { try { referrer = parent.document.referrer; } catch (e2) { referrer = ''; } } } if (referrer === '') { referrer = documentAlias.referrer; } return referrer; } function logPageView(customData) { var request; request = configTrackerUrl + '?url=' + escapeWrapper(documentAlias.location.href) + '&ref=' + escapeWrapper(getReferrer()) + '&name=' + escapeWrapper(documentAlias.title) + '&avmws=' + escapeWrapper(getCookie('avmws')) + '&rand=' + Math.random() + '&lib=1'; if (isDefined(customData)) { request += '&data=' + escapeWrapper(stringify(customData)); } if (window.requestIdleCallback) { requestIdleCallback(function () { getScript(request); }) } else { setTimeout(function () { getScript(request); }, 500) } } try { if (new RegExp('avad').exec(document.location.href)) { logPageView(window._AvantMetrics); } else { for (var i in window._AvantMetrics) { if (window._AvantMetrics[i][0] == 'order') { logPageView(window._AvantMetrics); } } } } catch (err) { } })(); }