/* * Piwik - Web Analytics * * JavaScript tracking client * * @link http://piwik.org * @source http://dev.piwik.org/trac/browser/trunk/js/piwik.js * @license http://www.opensource.org/licenses/bsd-license.php Simplified BSD */ if(!this.JSON2){this.JSON2={}}(function(){function d(f){return f<10?"0"+f:f}function l(n,m){var f=Object.prototype.toString.apply(n);if(f==="[object Date]"){return isFinite(n.valueOf())?n.getUTCFullYear()+"-"+d(n.getUTCMonth()+1)+"-"+d(n.getUTCDate())+"T"+d(n.getUTCHours())+":"+d(n.getUTCMinutes())+":"+d(n.getUTCSeconds())+"Z":null}if(f==="[object String]"||f==="[object Number]"||f==="[object Boolean]"){return n.valueOf()}if(f!=="[object Array]"&&typeof n.toJSON==="function"){return n.toJSON(m)}return n}var c=new RegExp("[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]","g"),e='\\\\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]',i=new RegExp("["+e,"g"),j,b,k={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},h; function a(f){i.lastIndex=0;return i.test(f)?'"'+f.replace(i,function(m){var n=k[m];return typeof n==="string"?n:"\\u"+("0000"+m.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+f+'"'}function g(s,p){var n,m,t,f,q=j,o,r=p[s];if(r&&typeof r==="object"){r=l(r,s)}if(typeof h==="function"){r=h.call(p,s,r)}switch(typeof r){case"string":return a(r);case"number":return isFinite(r)?String(r):"null";case"boolean":case"null":return String(r);case"object":if(!r){return"null"}j+=b;o=[];if(Object.prototype.toString.apply(r)==="[object Array]"){f=r.length;for(n=0;n>>(32-i))},ac=function(ai){var ah="",ag,W;for(ag=7;ag>=0;ag--){W=(ai>>>(ag*4))&15;ah+=W.toString(16)}return ah},Q,ae,ad,M=[],U=1732584193,S=4023233417,R=2562383102,P=271733878,O=3285377520,aa,Z,Y,X,V,af,L,T=[];ab=m(ab);L=ab.length;for(ae=0;ae>>29);T.push((L<<3)&4294967295);for(Q=0;Q=0){bg=bg.slice(0,bf)}if((bf=bg.lastIndexOf("/"))!==bg.length-1){bg=bg.slice(0,bf+1)}return bg+be}function aH(bh){var bf,be,bg;for(bf=0;bf0)&&(bh.slice(bg)===be)){return true}}}return false}function bd(be){var bf=new Image(1,1);bf.onload=function(){};bf.src=N+(N.indexOf("?")<0?"?":"&")+be }function aT(be){try{var bg=w.XMLHttpRequest?new w.XMLHttpRequest():w.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):null;bg.open("POST",N,true);bg.onreadystatechange=function(){if(this.readyState===4&&this.status!==200){bd(be)}};bg.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");bg.send(be)}catch(bf){bd(be)}}function aq(bg,bf){var be=new Date();if(!a4){if(aI==="POST"){aT(bg)}else{bd(bg)}e=be.getTime()+bf}}function aR(be){return a9+be+"."+a1+"."+aM}function P(){if(V){return"0"}if(!p(c.cookieEnabled)){var be=aR("testcookie");aS(be,"1");return ab(be)==="1"?"1":"0"}return c.cookieEnabled?"1":"0"}function aC(){aM=ao((X||aX)+(ba||"/")).slice(0,4)}function Z(){var bf=aR("cvar"),be=ab(bf);if(be.length){be=JSON2.parse(be);if(y(be)){return be}}return{}}function M(){if(Q===false){Q=Z()}}function a0(){var be=new Date();aJ=be.getTime()}function W(bi,bf,be,bh,bg,bj){aS(aR("id"),bi+"."+bf+"."+be+"."+bh+"."+bg+"."+bj,ac,ba,X,aa)}function L(){var bf=new Date(),be=Math.round(bf.getTime()/1000),bh=ab(aR("id")),bg; if(bh){bg=bh.split(".");bg.unshift("0")}else{if(!at){at=ao((c.userAgent||"")+(c.platform||"")+JSON2.stringify(a2)+be).slice(0,16)}bg=["1",at,be,0,be,"",""]}return bg}function i(){var be=ab(aR("ref"));if(be.length){try{be=JSON2.parse(be);if(y(be)){return be}}catch(bf){}}return["","",0,""]}function am(bg,bF,bG,bi){var bD,bf=new Date(),bo=Math.round(bf.getTime()/1000),bI,bE,bk,bw,bA,bn,by,bl,bC,bj=1024,bJ,br,bz=Q,bu=aR("id"),bp=aR("ses"),bq=aR("ref"),bK=aR("cvar"),bx=L(),bt=ab(bp),bB=i(),bH=av||bb,bm,be;if(V){V=false;aS(bu,"",-86400,ba,X);aS(bp,"",-86400,ba,X);aS(bK,"",-86400,ba,X);aS(bq,"",-86400,ba,X);V=true}if(a4){return""}bI=bx[0];bE=bx[1];bw=bx[2];bk=bx[3];bA=bx[4];bn=bx[5];if(!p(bx[6])){bx[6]=""}by=bx[6];if(!p(bi)){bi=""}var bs=document.characterSet||document.charset;if(!bs||bs.toLowerCase()==="utf-8"){bs=null}bm=bB[0];be=bB[1];bl=bB[2];bC=bB[3];if(!bt){bk++;bn=bA;if(!au||!bm.length){for(bD in ap){if(Object.prototype.hasOwnProperty.call(ap,bD)){bm=x(bH,ap[bD]);if(bm.length){break}}}for(bD in ak){if(Object.prototype.hasOwnProperty.call(ak,bD)){be=x(bH,ak[bD]); if(be.length){break}}}}bJ=b(aK);br=bC.length?b(bC):"";if(bJ.length&&!aH(bJ)&&(!au||!br.length||aH(br))){bC=aK}if(bC.length||bm.length){bl=bo;bB=[bm,be,bl,a6(bC.slice(0,bj))];aS(bq,JSON2.stringify(bB),aw,ba,X,aa)}}bg+="&idsite="+a1+"&rec=1&r="+String(Math.random()).slice(2,8)+"&h="+bf.getHours()+"&m="+bf.getMinutes()+"&s="+bf.getSeconds()+"&url="+g(a6(bH))+(aK.length?"&urlref="+g(a6(aK)):"")+"&_id="+bE+"&_idts="+bw+"&_idvc="+bk+"&_idn="+bI+(bm.length?"&_rcn="+g(bm):"")+(be.length?"&_rck="+g(be):"")+"&_refts="+bl+"&_viewts="+bn+(String(by).length?"&_ects="+by:"")+(String(bC).length?"&_ref="+g(a6(bC.slice(0,bj))):"")+(bs?"&cs="+g(bs):"");var bh=JSON2.stringify(aA);if(bh.length>2){bg+="&cvar="+g(bh)}for(bD in a2){if(Object.prototype.hasOwnProperty.call(a2,bD)){bg+="&"+bD+"="+a2[bD]}}if(bF){bg+="&data="+g(JSON2.stringify(bF))}else{if(U){bg+="&data="+g(JSON2.stringify(U))}}if(Q){var bv=JSON2.stringify(Q);if(bv.length>2){bg+="&_cvar="+g(bv)}for(bD in bz){if(Object.prototype.hasOwnProperty.call(bz,bD)){if(Q[bD][0]===""||Q[bD][1]===""){delete Q[bD] }}}aS(bK,JSON2.stringify(Q),ad,ba,X,aa)}W(bE,bw,bk,bo,bn,p(bi)&&String(bi).length?bi:by);aS(bp,"*",ad,ba,X,aa);bg+=E(bG);return bg}function aV(bh,bg,bl,bi,be,bo){var bj="idgoal=0",bk,bf=new Date(),bm=[],bn;if(String(bh).length){bj+="&ec_id="+g(bh);bk=Math.round(bf.getTime()/1000)}bj+="&revenue="+bg;if(String(bl).length){bj+="&ec_st="+bl}if(String(bi).length){bj+="&ec_tx="+bi}if(String(be).length){bj+="&ec_sh="+be}if(String(bo).length){bj+="&ec_dt="+bo}if(aQ){for(bn in aQ){if(Object.prototype.hasOwnProperty.call(aQ,bn)){if(!p(aQ[bn][1])){aQ[bn][1]=""}if(!p(aQ[bn][2])){aQ[bn][2]=""}if(!p(aQ[bn][3])||String(aQ[bn][3]).length===0){aQ[bn][3]=0}if(!p(aQ[bn][4])||String(aQ[bn][4]).length===0){aQ[bn][4]=1}bm.push(aQ[bn])}}bj+="&ec_items="+g(JSON2.stringify(bm))}bj=am(bj,U,"ecommerce",bk);aq(bj,aF)}function aU(be,bi,bh,bg,bf,bj){if(String(be).length&&p(bi)){aV(be,bi,bh,bg,bf,bj)}}function a8(be){if(p(be)){aV("",be,"","","","")}}function ay(bh,bi){var be=new Date(),bg=am("action_name="+g(K(bh||al)),bi,"log"); aq(bg,aF);if(S&&ag&&!aL){aL=true;J(n,"click",a0);J(n,"mouseup",a0);J(n,"mousedown",a0);J(n,"mousemove",a0);J(n,"mousewheel",a0);J(w,"DOMMouseScroll",a0);J(w,"scroll",a0);J(n,"keypress",a0);J(n,"keydown",a0);J(n,"keyup",a0);J(w,"resize",a0);J(w,"focus",a0);J(w,"blur",a0);aJ=be.getTime();setTimeout(function bf(){var bj=new Date(),bk;if((aJ+ag)>bj.getTime()){if(S0){be=p(be)&&!h(be)?String(be):be;bi=p(bi)&&!h(bi)?String(bi):bi;bh=[be.slice(0,a5),bi.slice(0,a5)];if(bg==="visit"||bg===2){M();Q[bf]=bh}else{if(bg==="page"||bg===3){aA[bf]=bh}}}},getCustomVariable:function(bf,bg){var be;if(!p(bg)){bg="visit"}if(bg==="page"||bg===3){be=aA[bf]}else{if(bg==="visit"||bg===2){M();be=Q[bf] }}if(!p(be)||(be&&be[0]==="")){return false}return be},deleteCustomVariable:function(be,bf){if(this.getCustomVariable(be,bf)){this.setCustomVariable(be,"","",bf)}},setLinkTrackingTimer:function(be){aF=be},setDownloadExtensions:function(be){an=be},addDownloadExtensions:function(be){an+="|"+be},setDomains:function(be){aG=h(be)?[be]:be;aG.push(aX)},setIgnoreClasses:function(be){R=h(be)?[be]:be},setRequestMethod:function(be){aI=be||"GET"},setReferrerUrl:function(be){aK=be},setCustomUrl:function(be){av=aW(bb,be)},setDocumentTitle:function(be){al=be},setDownloadClasses:function(be){az=h(be)?[be]:be},setLinkClasses:function(be){ae=h(be)?[be]:be},setCampaignNameKey:function(be){ap=h(be)?[be]:be},setCampaignKeywordKey:function(be){ak=h(be)?[be]:be},discardHashTag:function(be){T=be},setCookieNamePrefix:function(be){a9=be;Q=Z()},setCookieDomain:function(be){X=r(be);aC()},setCookiePath:function(be){ba=be;aC()},setVisitorCookieTimeout:function(be){ac=be*1000},setSessionCookieTimeout:function(be){ad=be*1000 },setReferralCookieTimeout:function(be){aw=be*1000},setConversionAttributionFirstReferrer:function(be){au=be},disableCookies:function(){V=true;a2.cookie="0"},setDoNotTrack:function(bf){var be=c.doNotTrack||c.msDoNotTrack;a4=bf&&(be==="yes"||be==="1");if(a4){this.disableCookies()}},addListener:function(bf,be){aO(bf,be)},enableLinkTracking:function(be){if(k){ax(be)}else{u.push(function(){ax(be)})}},setHeartBeatTimer:function(bg,bf){var be=new Date();S=be.getTime()+bg*1000;ag=bf*1000},killFrame:function(){if(w.location!==w.top.location){w.top.location=w.location}},redirectFile:function(be){if(w.location.protocol==="file:"){w.location=be}},setCountPreRendered:function(be){ar=be},trackGoal:function(be,bg,bf){ai(function(){aD(be,bg,bf)})},trackLink:function(bf,be,bg){ai(function(){aZ(bf,be,bg)})},trackPageView:function(be,bf){if(s(N,a1)){ai(function(){B(N,a1)})}else{ai(function(){ay(be,bf)})}},trackSiteSearch:function(be,bg,bf){ai(function(){aj(be,bg,bf)})},setEcommerceView:function(bh,be,bg,bf){if(!p(bg)||!bg.length){bg="" }else{if(bg instanceof Array){bg=JSON2.stringify(bg)}}aA[5]=["_pkc",bg];if(p(bf)&&String(bf).length){aA[2]=["_pkp",bf]}if((!p(bh)||!bh.length)&&(!p(be)||!be.length)){return}if(p(bh)&&bh.length){aA[3]=["_pks",bh]}if(!p(be)||!be.length){be=""}aA[4]=["_pkn",be]},addEcommerceItem:function(bi,be,bg,bf,bh){if(bi.length){aQ[bi]=[bi,be,bg,bf,bh]}},trackEcommerceOrder:function(be,bi,bh,bg,bf,bj){aU(be,bi,bh,bg,bf,bj)},trackEcommerceCartUpdate:function(be){a8(be)}}}function o(){return{push:G}}J(w,"beforeunload",H,false);j();Date.prototype.getTimeAlias=Date.prototype.getTime;A=new t();for(D=0;D<_paq.length;D++){G(_paq[D])}_paq=new o();return{addPlugin:function(i,L){a[i]=L},getTracker:function(i,L){return new t(i,L)},getAsyncTracker:function(){return A}}}()),piwik_track,piwik_log=function(b,f,d,g){function a(h){try{return eval("piwik_"+h)}catch(i){}return}var c,e=Piwik.getTracker(d,f);e.setDocumentTitle(b);e.setCustomData(g);c=a("tracker_pause");if(c){e.setLinkTrackingTimer(c)}c=a("download_extensions"); if(c){e.setDownloadExtensions(c)}c=a("hosts_alias");if(c){e.setDomains(c)}c=a("ignore_classes");if(c){e.setIgnoreClasses(c)}e.trackPageView();if(a("install_tracker")){piwik_track=function(i,k,j,h){e.setSiteId(k);e.setTrackerUrl(j);e.trackLink(i,h)};e.enableLinkTracking()}};