var sScriptUrl = 'http://bisformat.nazwa.pl/www/stats.format.wroc.pl/public/'; var sCurUrl = window.location.href; var sCsrfToken = 'IlPPbqv9WaW9Z81OaHQ6Agm6p58w0suRO0q6Ri9D'; function smEvent(event, h) { try { var g = faReadCookie("fauuid"); // if (!g) { // g = generateUUID(); // faCreateCookie("fauuid", g, 365 * 10); // } var data = { '_token': sCsrfToken, 'uid': g, 'url': sCurUrl, 'event_n': 'sm_event', 'event_v': event, }; callAjax.get(sScriptUrl + 'save-user-id', data, function(data){ }); } catch (i) { if (h && (typeof h == "function")) { h() } } } function getUrlVars() { var c = [], a; var d = getUrlParams().split("&"); for (var b = 0; b < d.length; b++) { a = d[b].split("="); c.push(a[0]); c[a[0]] = a[1] } return c } function getUrlParams() { var a = window.location.href; return a.indexOf("?") != -1 ? a.slice(a.indexOf("?") + 1) : "" } function faReadCookie(b) { var e = b + "="; var a = document.cookie.split(";"); for (var d = 0; d < a.length; d++) { var f = a[d]; while (f.charAt(0) == " ") { f = f.substring(1, f.length) } if (f.indexOf(e) == 0) { return f.substring(e.length, f.length) } } return null } function faCreateCookie(c, d, e) { var a = ""; if (e) { var b = new Date(); b.setTime(b.getTime() + (e * 24 * 60 * 60 * 1000)); a = "; expires=" + b.toGMTString() } document.cookie = c + "=" + d + a + "; path=/; domain=" + getDomain(document.domain) } function generateUUID() { var a = function () { return (((1 + Math.random()) * 65536) | 0).toString(16).substring(1) }; var b = (new Date()).getTime().toString(16); return (b + "-" + a() + a() + a() + "-" + a() + a() + "-" + a() + a() + "-" + a() + a() + "-" + a() + a() + a()) } function getDomain(a) { if (a.indexOf("www.") == 0) { return a.replace("www.", "") } return a } var callAjax = {}; callAjax.x = function () { if (typeof XMLHttpRequest !== 'undefined') { return new XMLHttpRequest(); } var versions = [ "MSXML2.XmlHttp.6.0", "MSXML2.XmlHttp.5.0", "MSXML2.XmlHttp.4.0", "MSXML2.XmlHttp.3.0", "MSXML2.XmlHttp.2.0", "Microsoft.XmlHttp" ]; var xhr; for (var i = 0; i < versions.length; i++) { try { xhr = new ActiveXObject(versions[i]); break; } catch (e) { } } return xhr; }; callAjax.send = function (url, callback, method, data, async) { if (async === undefined) { async = true; } var x = callAjax.x(); x.open(method, url, async); x.onreadystatechange = function () { if (x.readyState == 4) { callback(x.responseText) } }; if (method == 'POST') { x.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); } // console.log(typeof(data.withCredentials)); if ( typeof(data.withCredentials) != 'undefined' ){ x.withCredentials = true; } x.send(data) }; callAjax.get = function (url, data, callback, async) { var query = []; for (var key in data) { query.push(encodeURIComponent(key) + '=' + encodeURIComponent(data[key])); } callAjax.send(url + (query.length ? '?' + query.join('&') : ''), callback, 'GET', data, async) }; callAjax.post = function (url, data, callback, async) { var query = []; for (var key in data) { query.push(encodeURIComponent(key) + '=' + encodeURIComponent(data[key])); } callAjax.send(url, callback, 'POST', query.join('&'), async) }; //var data = { // '_token': sCsrfToken, // 'withCredentials': true, //}; //callAjax.get(sScriptUrl + 'save-fauid', data, function(data){ // g = data; //}); var g = faReadCookie("fauuid"); if (!g) { // g = generateUUID(); var data = { '_token': sCsrfToken, 'withCredentials': true, 'origin': sCurUrl, }; callAjax.get(sScriptUrl + 'save-fauid', data, function(data){ g = data; faCreateCookie("fauuid", data, 365 * 10); var data = { '_token': sCsrfToken, 'uid': g, 'url': sCurUrl, 'event_n': 'first_visit', 'event_v': 'first_visit', }; callAjax.get(sScriptUrl + 'save-user-id', data, function(data){ find_blocks(); }); }); // faCreateCookie("fauuid", g, 365 * 10); } else { var data = { '_token': sCsrfToken, 'uid': g, 'url': sCurUrl, 'event_n': 'visit', 'event_v': 'page', }; callAjax.get(sScriptUrl + 'save-user-id', data, function(data){ find_blocks(); }); } function IsJsonString(str) { try { JSON.parse(str); } catch (e) { return false; } return true; } function find_blocks(){ blocks = document.getElementsByClassName('fa_block'); for (var i=0;i