From 3e654669bd972a2ab8579a2e79c4f5cca13ad1cb Mon Sep 17 00:00:00 2001 From: Thomas Steur Date: Wed, 29 Jan 2014 22:49:05 +1300 Subject: Fixes #4598 Better UUID to avoid visitor collision on same second + same configs --- piwik.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'piwik.js') diff --git a/piwik.js b/piwik.js index a11658f8e2..6d1452e52d 100644 --- a/piwik.js +++ b/piwik.js @@ -17,8 +17,8 @@ break;case 3:ah=ae.charCodeAt(O-3)<<24|ae.charCodeAt(O-2)<<16|ae.charCodeAt(O-1) }O=B(O,"u");Q=b(O)}else{if(Q==="cc.bingj.com"||Q==="webcache.googleusercontent.com"||Q.slice(0,5)==="74.6."){O=q.links[0].href;Q=b(O)}}return[Q,O,P]}function u(P){var O=P.length;if(P.charAt(--O)==="."){P=P.slice(0,O)}if(P.slice(0,2)==="*."){P=P.slice(1)}return P}function N(P){P=P&&P.text?P.text:P;if(!k(P)){var O=q.getElementsByTagName("title");if(O&&s(O[0])){P=O[0].text}}return P}function w(O,P){if(P){return P}if(O.slice(-9)==="piwik.php"){O=O.slice(0,O.length-9)}return O}function v(S){var O="Piwik_Overlay";var V=new RegExp("index\\.php\\?module=Overlay&action=startOverlaySession&idsite=([0-9]+)&period=([^&]+)&date=([^&]+)$");var Q=V.exec(q.referrer);if(Q){var R=Q[1];if(R!==String(S)){return false}var U=Q[2],P=Q[3];A.name=O+"###"+U+"###"+P}var T=A.name.split("###");return T.length===3&&T[0]===O}function F(P,U,R){var T=A.name.split("###"),S=T[1],O=T[2],Q=w(P,U);g(Q+"plugins/Overlay/client/client.js?v=1",function(){Piwik_Overlay_Client.initialize(Q,R,S,O)})}function x(am,aN){var U=G(q.domain,A.location.href,t()),a7=u(U[0]),bm=U[1],aU=U[2],aS="GET",S=am||"",aj="",aP="",bc=aN||"",aE,au=q.title,aw="7z|aac|apk|ar[cj]|as[fx]|avi|bin|csv|deb|dmg|docx?|exe|flv|gif|gz|gzip|hqx|jar|jpe?g|js|mp(2|3|4|e?g)|mov(ie)?|ms[ip]|od[bfgpst]|og[gv]|pdf|phps|png|pptx?|qtm?|ra[mr]?|rpm|sea|sit|tar|t?bz2?|tgz|torrent|txt|wav|wm[av]|wpd||xlsx?|xml|z|zip",aQ=[a7],X=[],aI=[],al=[],aO=500,Y,an,Z,ab,ay=["pk_campaign","piwik_campaign","utm_campaign","utm_source","utm_medium"],at=["pk_kwd","piwik_kwd","utm_term"],bk="_pk_",ae,bl,ac=false,bf,aA,aD,ai=63072000000,ak=1800000,aF=15768000000,aB=true,ap=0,W=false,aJ={},T={},bg=200,a0={},bd={},aX=false,aV=false,aT,aK,af,ax=L,aW,aC; function a2(bv,bs,br,bu,bq,bt){if(ac){return}var bp;if(br){bp=new Date();bp.setTime(bp.getTime()+br)}q.cookie=bv+"="+j(bs)+(br?";expires="+bp.toGMTString():"")+";path="+(bu||"/")+(bq?";domain="+bq:"")+(bt?";secure":"")}function ah(br){if(ac){return 0}var bp=new RegExp("(^|;)[ ]*"+br+"=([^;]*)"),bq=bp.exec(q.cookie);return bq?z(bq[2]):0}function bh(bp){var bq;if(Z){bq=new RegExp("#.*");return bp.replace(bq,"")}return bp}function a6(br,bp){var bs=i(bp),bq;if(bs){return bp}if(bp.slice(0,1)==="/"){return i(br)+"://"+b(br)+bp}br=bh(br);bq=br.indexOf("?");if(bq>=0){br=br.slice(0,bq)}bq=br.lastIndexOf("/");if(bq!==br.length-1){br=br.slice(0,bq+1)}return br+bp}function aR(bs){var bq,bp,br;for(bq=0;bq0)&&(bs.slice(br)===bp)){return true}}}return false}function bo(bp){var bq=new Image(1,1);bq.onload=function(){p=0};bq.src=S+(S.indexOf("?")<0?"?":"&")+bp }function a3(bp){try{var br=A.XMLHttpRequest?new A.XMLHttpRequest():A.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;br.open("POST",S,true);br.onreadystatechange=function(){if(this.readyState===4&&this.status!==200){bo(bp)}};br.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");br.send(bp)}catch(bq){bo(bp)}}function az(br,bq){var bp=new Date();if(!bf){if(aS==="POST"){a3(br)}else{bo(br)}h=bp.getTime()+bq}}function a1(bp){return bk+bp+"."+bc+"."+aW}function V(){if(ac){return"0"}if(!s(d.cookieEnabled)){var bp=a1("testcookie");a2(bp,"1");return ah(bp)==="1"?"1":"0"}return d.cookieEnabled?"1":"0"}function aL(){aW=ax((ae||a7)+(bl||"/")).slice(0,4)}function ag(){var bq=a1("cvar"),bp=ah(bq);if(bp.length){bp=JSON2.parse(bp);if(C(bp)){return bp}}return{}}function R(){if(W===false){W=ag()}}function bb(){var bp=new Date();aT=bp.getTime()}function ad(bt,bq,bp,bs,br,bu){a2(a1("id"),bt+"."+bq+"."+bp+"."+bs+"."+br+"."+bu,ai,bl,ae)}function Q(){var bq=new Date(),bp=Math.round(bq.getTime()/1000),bs=ah(a1("id")),br; -if(bs){br=bs.split(".");br.unshift("0")}else{if(!aC){aC=ax((d.userAgent||"")+(d.platform||"")+JSON2.stringify(bd)+bp).slice(0,16)}br=["1",aC,bp,0,bp,"",""]}return br}function O(){var bp=ah(a1("ref"));if(bp.length){try{bp=JSON2.parse(bp);if(C(bp)){return bp}}catch(bq){}}return["","",0,""]}function P(){var bp=ac;ac=false;a2(a1("id"),"",-86400,bl,ae);a2(a1("ses"),"",-86400,bl,ae);a2(a1("cvar"),"",-86400,bl,ae);a2(a1("ref"),"",-86400,bl,ae);ac=bp}function ba(bt){if(!bt||!C(bt)){return}var bs=[];var br;for(br in bt){if(Object.prototype.hasOwnProperty.call(bt,br)){bs.push(br)}}var bu={};bs.sort();var bp=bs.length;var bq;for(bq=0;bqbR){bu++;by=bK}if(!aD||!bw.length){for(bN in ay){if(Object.prototype.hasOwnProperty.call(ay,bN)){bw=B(bS,ay[bN]);if(bw.length){break}}}for(bN in at){if(Object.prototype.hasOwnProperty.call(at,bN)){bp=B(bS,at[bN]);if(bp.length){break}}}}bV=b(aU);bC=bM.length?b(bM):"";if(bV.length&&!aR(bV)&&(!aD||!bC.length||aR(bC))){bM=aU}if(bM.length||bw.length){bv=bz;bL=[bw,bp,bv,bh(bM.slice(0,bt))];a2(bB,JSON2.stringify(bL),aF,bl,ae)}}br+="&idsite="+bc+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+bq.getHours()+"&m="+bq.getMinutes()+"&s="+bq.getSeconds()+"&url="+j(bh(bS))+(aU.length?"&urlref="+j(bh(aU)):"")+"&_id="+bO+"&_idts="+bF+"&_idvc="+bu+"&_idn="+bT+(bw.length?"&_rcn="+j(bw):"")+(bp.length?"&_rck="+j(bp):"")+"&_refts="+bv+"&_viewts="+by+(String(bI).length?"&_ects="+bI:"")+(String(bM).length?"&_ref="+j(bh(bM.slice(0,bt))):"")+(bD?"&cs="+j(bD):""); +if(bs){br=bs.split(".");br.unshift("0")}else{if(!aC){aC=ax((d.userAgent||"")+(d.platform||"")+JSON2.stringify(bd)+bq.getTime()+Math.random()).slice(0,16)}br=["1",aC,bp,0,bp,"",""]}return br}function O(){var bp=ah(a1("ref"));if(bp.length){try{bp=JSON2.parse(bp);if(C(bp)){return bp}}catch(bq){}}return["","",0,""]}function P(){var bp=ac;ac=false;a2(a1("id"),"",-86400,bl,ae);a2(a1("ses"),"",-86400,bl,ae);a2(a1("cvar"),"",-86400,bl,ae);a2(a1("ref"),"",-86400,bl,ae);ac=bp}function ba(bt){if(!bt||!C(bt)){return}var bs=[];var br;for(br in bt){if(Object.prototype.hasOwnProperty.call(bt,br)){bs.push(br)}}var bu={};bs.sort();var bp=bs.length;var bq;for(bq=0;bqbR){bu++;by=bK}if(!aD||!bw.length){for(bN in ay){if(Object.prototype.hasOwnProperty.call(ay,bN)){bw=B(bS,ay[bN]);if(bw.length){break}}}for(bN in at){if(Object.prototype.hasOwnProperty.call(at,bN)){bp=B(bS,at[bN]);if(bp.length){break}}}}bV=b(aU);bC=bM.length?b(bM):"";if(bV.length&&!aR(bV)&&(!aD||!bC.length||aR(bC))){bM=aU}if(bM.length||bw.length){bv=bz;bL=[bw,bp,bv,bh(bM.slice(0,bt))];a2(bB,JSON2.stringify(bL),aF,bl,ae)}}br+="&idsite="+bc+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+bq.getHours()+"&m="+bq.getMinutes()+"&s="+bq.getSeconds()+"&url="+j(bh(bS))+(aU.length?"&urlref="+j(bh(aU)):"")+"&_id="+bO+"&_idts="+bF+"&_idvc="+bu+"&_idn="+bT+(bw.length?"&_rcn="+j(bw):"")+(bp.length?"&_rck="+j(bp):"")+"&_refts="+bv+"&_viewts="+by+(String(bI).length?"&_ects="+bI:"")+(String(bM).length?"&_ref="+j(bh(bM.slice(0,bt))):"")+(bD?"&cs="+j(bD):""); for(bN in bd){if(Object.prototype.hasOwnProperty.call(bd,bN)){br+="&"+bN+"="+bd[bN]}}if(bP){br+="&data="+j(JSON2.stringify(bP))}else{if(ab){br+="&data="+j(JSON2.stringify(ab))}}function bx(bX,bY){var bZ=JSON2.stringify(bX);if(bZ.length>2){return"&"+bY+"="+j(bZ)}return""}var bU=ba(aJ);var bH=ba(T);br+=bx(bU,"cvar");br+=bx(bH,"e_cvar");if(W){br+=bx(W,"_cvar");for(bN in bJ){if(Object.prototype.hasOwnProperty.call(bJ,bN)){if(W[bN][0]===""||W[bN][1]===""){delete W[bN]}}}a2(bW,JSON2.stringify(W),ak,bl,ae)}if(aB){if(ap){br+=">_ms="+ap}else{if(e&&e.timing&&e.timing.requestStart&&e.timing.responseEnd){br+=">_ms="+(e.timing.responseEnd-e.timing.requestStart)}}}ad(bO,bF,bu,bz,by,s(bs)&&String(bs).length?bs:bI);a2(bA,"*",ak,bl,ae);br+=H(bQ);if(aP.length){br+="&"+aP}return br}function a5(bs,br,bw,bt,bp,bz){var bu="idgoal=0",bv,bq=new Date(),bx=[],by;if(String(bs).length){bu+="&ec_id="+j(bs);bv=Math.round(bq.getTime()/1000)}bu+="&revenue="+br;if(String(bw).length){bu+="&ec_st="+bw}if(String(bt).length){bu+="&ec_tx="+bt }if(String(bp).length){bu+="&ec_sh="+bp}if(String(bz).length){bu+="&ec_dt="+bz}if(a0){for(by in a0){if(Object.prototype.hasOwnProperty.call(a0,by)){if(!s(a0[by][1])){a0[by][1]=""}if(!s(a0[by][2])){a0[by][2]=""}if(!s(a0[by][3])||String(a0[by][3]).length===0){a0[by][3]=0}if(!s(a0[by][4])||String(a0[by][4]).length===0){a0[by][4]=1}bx.push(a0[by])}}bu+="&ec_items="+j(JSON2.stringify(bx))}bu=av(bu,ab,"ecommerce",bv);az(bu,aO)}function a4(bp,bt,bs,br,bq,bu){if(String(bp).length&&s(bt)){a5(bp,bt,bs,br,bq,bu)}}function bj(bp){if(s(bp)){a5("",bp,"","","","")}}function aH(bs,bt){var bp=new Date(),br=av("action_name="+j(N(bs||au)),bt,"log");az(br,aO);if(Y&&an&&!aV){aV=true;M(q,"click",bb);M(q,"mouseup",bb);M(q,"mousedown",bb);M(q,"mousemove",bb);M(q,"mousewheel",bb);M(A,"DOMMouseScroll",bb);M(A,"scroll",bb);M(q,"keypress",bb);M(q,"keydown",bb);M(q,"keyup",bb);M(A,"resize",bb);M(A,"focus",bb);M(A,"blur",bb);aT=bp.getTime();setTimeout(function bq(){var bu;bp=new Date();if((aT+an)>bp.getTime()){if(Y