From 663160909c865c42f082101c9fc4159f9cf333f9 Mon Sep 17 00:00:00 2001 From: Tim-Hinnerk Heuer Date: Fri, 17 Sep 2021 03:38:10 +1200 Subject: cover $typeReferrer 'false' or '0' to filter (#18016) * cover $typeReferrer 'false' or '0' to filter fixes #15892 * rebuilt piwik.js Co-authored-by: geekdenz --- js/piwik.min.js | 32 ++++++++++++++++---------------- matomo.js | 32 ++++++++++++++++---------------- piwik.js | 32 ++++++++++++++++---------------- plugins/Referrers/API.php | 4 +++- 4 files changed, 51 insertions(+), 49 deletions(-) diff --git a/js/piwik.min.js b/js/piwik.min.js index 67dc3a2832..0cede038fe 100644 --- a/js/piwik.min.js +++ b/js/piwik.min.js @@ -54,21 +54,21 @@ this.requests=[];if(dq.length===1){bL(dq[0],bP)}else{dl(dq,bP)}},canQueue:functi };this.setTrackerUrl=function(dq){aI=dq};this.getTrackerUrl=function(){return aI};this.getMatomoUrl=function(){return aa(this.getTrackerUrl(),bN)};this.getPiwikUrl=function(){return this.getMatomoUrl()};this.addTracker=function(ds,dr){if(!M(ds)||null===ds){ds=this.getTrackerUrl()}var dq=new T(ds,dr);L.push(dq);u.trigger("TrackerAdded",[this]);return dq};this.getSiteId=function(){return cb};this.setSiteId=function(dq){b8(dq)};this.resetUserId=function(){bE=""};this.setUserId=function(dq){if(ac(dq)){bE=dq}};this.setVisitorId=function(dr){var dq=/[0-9A-Fa-f]{16}/g;if(x(dr)&&dq.test(dr)){bT=dr}else{ao("Invalid visitorId set"+dr)}};this.getUserId=function(){return bE};this.setCustomData=function(dq,dr){if(Z(dq)){at=dq}else{if(!at){at={}}at[dq]=dr}};this.getCustomData=function(){return at};this.setCustomRequestProcessing=function(dq){cg=dq};this.appendToTrackingUrl=function(dq){c6=dq};this.getRequest=function(dq){return cw(dq)};this.addPlugin=function(dq,dr){b[dq]=dr};this.setCustomDimension=function(dq,dr){dq=parseInt(dq,10); if(dq>0){if(!M(dr)){dr=""}if(!x(dr)){dr=String(dr)}bs[dq]=dr}};this.getCustomDimension=function(dq){dq=parseInt(dq,10);if(dq>0&&Object.prototype.hasOwnProperty.call(bs,dq)){return bs[dq]}};this.deleteCustomDimension=function(dq){dq=parseInt(dq,10);if(dq>0){delete bs[dq]}};this.setCustomVariable=function(dr,dq,du,ds){var dt;if(!M(ds)){ds="visit"}if(!M(dq)){return}if(!M(du)){du=""}if(dr>0){dq=!x(dq)?String(dq):dq;du=!x(du)?String(du):du;dt=[dq.slice(0,bz),du.slice(0,bz)];if(ds==="visit"||ds===2){cL();aV[dr]=dt}else{if(ds==="page"||ds===3){b1[dr]=dt}else{if(ds==="event"){cq[dr]=dt}}}}};this.getCustomVariable=function(dr,ds){var dq;if(!M(ds)){ds="visit"}if(ds==="page"||ds===3){dq=b1[dr]}else{if(ds==="event"){dq=cq[dr]}else{if(ds==="visit"||ds===2){cL();dq=aV[dr]}}}if(!M(dq)||(dq&&dq[0]==="")){return false}return dq};this.deleteCustomVariable=function(dq,dr){if(this.getCustomVariable(dq,dr)){this.setCustomVariable(dq,"","",dr)}};this.deleteCustomVariables=function(dq){if(dq==="page"||dq===3){b1={} }else{if(dq==="event"){cq={}}else{if(dq==="visit"||dq===2){aV={}}}}};this.storeCustomVariablesInCookie=function(){bV=true};this.setLinkTrackingTimer=function(dq){bP=dq};this.getLinkTrackingTimer=function(){return bP};this.setDownloadExtensions=function(dq){if(x(dq)){dq=dq.split("|")}dd=dq};this.addDownloadExtensions=function(dr){var dq;if(x(dr)){dr=dr.split("|")}for(dq=0;dq1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming"];function ah(av,au){var at=new T(av,au); -L.push(at);_paq=c(_paq,E);for(H=0;H<_paq.length;H++){if(_paq[H]){aj(_paq[H])}}_paq=new K();u.trigger("TrackerAdded",[at]);return at}ar(W,"beforeunload",am,false);ar(W,"online",function(){if(M(g.serviceWorker)){g.serviceWorker.ready.then(function(at){if(at&&at.sync){return at.sync.register("matomoSync")}},function(){})}},false);ar(W,"message",function(ay){if(!ay||!ay.origin){return}var aA,aw,au;var aB=d(ay.origin);var ax=u.getAsyncTrackers();for(aw=0;aw1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming"];function ah(av,au){var at=new T(av,au);L.push(at);_paq=c(_paq,E);for(H=0;H<_paq.length;H++){if(_paq[H]){aj(_paq[H]) +}}_paq=new K();u.trigger("TrackerAdded",[at]);return at}ar(W,"beforeunload",am,false);ar(W,"online",function(){if(M(g.serviceWorker)){g.serviceWorker.ready.then(function(at){if(at&&at.sync){return at.sync.register("matomoSync")}},function(){})}},false);ar(W,"message",function(ay){if(!ay||!ay.origin){return}var aA,aw,au;var aB=d(ay.origin);var ax=u.getAsyncTrackers();for(aw=0;aw0){if(!M(dr)){dr=""}if(!x(dr)){dr=String(dr)}bs[dq]=dr}};this.getCustomDimension=function(dq){dq=parseInt(dq,10);if(dq>0&&Object.prototype.hasOwnProperty.call(bs,dq)){return bs[dq]}};this.deleteCustomDimension=function(dq){dq=parseInt(dq,10);if(dq>0){delete bs[dq]}};this.setCustomVariable=function(dr,dq,du,ds){var dt;if(!M(ds)){ds="visit"}if(!M(dq)){return}if(!M(du)){du=""}if(dr>0){dq=!x(dq)?String(dq):dq;du=!x(du)?String(du):du;dt=[dq.slice(0,bz),du.slice(0,bz)];if(ds==="visit"||ds===2){cL();aV[dr]=dt}else{if(ds==="page"||ds===3){b1[dr]=dt}else{if(ds==="event"){cq[dr]=dt}}}}};this.getCustomVariable=function(dr,ds){var dq;if(!M(ds)){ds="visit"}if(ds==="page"||ds===3){dq=b1[dr]}else{if(ds==="event"){dq=cq[dr]}else{if(ds==="visit"||ds===2){cL();dq=aV[dr]}}}if(!M(dq)||(dq&&dq[0]==="")){return false}return dq};this.deleteCustomVariable=function(dq,dr){if(this.getCustomVariable(dq,dr)){this.setCustomVariable(dq,"","",dr)}};this.deleteCustomVariables=function(dq){if(dq==="page"||dq===3){b1={} }else{if(dq==="event"){cq={}}else{if(dq==="visit"||dq===2){aV={}}}}};this.storeCustomVariablesInCookie=function(){bV=true};this.setLinkTrackingTimer=function(dq){bP=dq};this.getLinkTrackingTimer=function(){return bP};this.setDownloadExtensions=function(dq){if(x(dq)){dq=dq.split("|")}dd=dq};this.addDownloadExtensions=function(dr){var dq;if(x(dr)){dr=dr.split("|")}for(dq=0;dq1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming"];function ah(av,au){var at=new T(av,au); -L.push(at);_paq=c(_paq,E);for(H=0;H<_paq.length;H++){if(_paq[H]){aj(_paq[H])}}_paq=new K();u.trigger("TrackerAdded",[at]);return at}ar(W,"beforeunload",am,false);ar(W,"online",function(){if(M(g.serviceWorker)){g.serviceWorker.ready.then(function(at){if(at&&at.sync){return at.sync.register("matomoSync")}},function(){})}},false);ar(W,"message",function(ay){if(!ay||!ay.origin){return}var aA,aw,au;var aB=d(ay.origin);var ax=u.getAsyncTrackers();for(aw=0;aw1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming"];function ah(av,au){var at=new T(av,au);L.push(at);_paq=c(_paq,E);for(H=0;H<_paq.length;H++){if(_paq[H]){aj(_paq[H]) +}}_paq=new K();u.trigger("TrackerAdded",[at]);return at}ar(W,"beforeunload",am,false);ar(W,"online",function(){if(M(g.serviceWorker)){g.serviceWorker.ready.then(function(at){if(at&&at.sync){return at.sync.register("matomoSync")}},function(){})}},false);ar(W,"message",function(ay){if(!ay||!ay.origin){return}var aA,aw,au;var aB=d(ay.origin);var ax=u.getAsyncTrackers();for(aw=0;aw0){if(!M(dr)){dr=""}if(!x(dr)){dr=String(dr)}bs[dq]=dr}};this.getCustomDimension=function(dq){dq=parseInt(dq,10);if(dq>0&&Object.prototype.hasOwnProperty.call(bs,dq)){return bs[dq]}};this.deleteCustomDimension=function(dq){dq=parseInt(dq,10);if(dq>0){delete bs[dq]}};this.setCustomVariable=function(dr,dq,du,ds){var dt;if(!M(ds)){ds="visit"}if(!M(dq)){return}if(!M(du)){du=""}if(dr>0){dq=!x(dq)?String(dq):dq;du=!x(du)?String(du):du;dt=[dq.slice(0,bz),du.slice(0,bz)];if(ds==="visit"||ds===2){cL();aV[dr]=dt}else{if(ds==="page"||ds===3){b1[dr]=dt}else{if(ds==="event"){cq[dr]=dt}}}}};this.getCustomVariable=function(dr,ds){var dq;if(!M(ds)){ds="visit"}if(ds==="page"||ds===3){dq=b1[dr]}else{if(ds==="event"){dq=cq[dr]}else{if(ds==="visit"||ds===2){cL();dq=aV[dr]}}}if(!M(dq)||(dq&&dq[0]==="")){return false}return dq};this.deleteCustomVariable=function(dq,dr){if(this.getCustomVariable(dq,dr)){this.setCustomVariable(dq,"","",dr)}};this.deleteCustomVariables=function(dq){if(dq==="page"||dq===3){b1={} }else{if(dq==="event"){cq={}}else{if(dq==="visit"||dq===2){aV={}}}}};this.storeCustomVariablesInCookie=function(){bV=true};this.setLinkTrackingTimer=function(dq){bP=dq};this.getLinkTrackingTimer=function(){return bP};this.setDownloadExtensions=function(dq){if(x(dq)){dq=dq.split("|")}dd=dq};this.addDownloadExtensions=function(dr){var dq;if(x(dr)){dr=dr.split("|")}for(dq=0;dq1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming"];function ah(av,au){var at=new T(av,au); -L.push(at);_paq=c(_paq,E);for(H=0;H<_paq.length;H++){if(_paq[H]){aj(_paq[H])}}_paq=new K();u.trigger("TrackerAdded",[at]);return at}ar(W,"beforeunload",am,false);ar(W,"online",function(){if(M(g.serviceWorker)){g.serviceWorker.ready.then(function(at){if(at&&at.sync){return at.sync.register("matomoSync")}},function(){})}},false);ar(W,"message",function(ay){if(!ay||!ay.origin){return}var aA,aw,au;var aB=d(ay.origin);var ax=u.getAsyncTrackers();for(aw=0;aw1&&au!=="addTracker"&&au!=="enableLinkTracking"){ao("The method "+au+' is registered more than once in "_paq" variable. Only the last call has an effect. Please have a look at the multiple Matomo trackers documentation: https://developer.matomo.org/guides/tracking-javascript-guide#multiple-piwik-trackers')}az[au]++}}}}return ay}var E=["addTracker","forgetCookieConsentGiven","requireCookieConsent","disableCookies","setTrackerUrl","setAPIUrl","enableCrossDomainLinking","setCrossDomainLinkingTimeout","setSessionCookieTimeout","setVisitorCookieTimeout","setCookieNamePrefix","setCookieSameSite","setSecureCookie","setCookiePath","setCookieDomain","setDomains","setUserId","setVisitorId","setSiteId","alwaysUseSendBeacon","enableLinkTracking","setCookieConsentGiven","requireConsent","setConsentGiven","disablePerformanceTracking","setPagePerformanceTiming"];function ah(av,au){var at=new T(av,au);L.push(at);_paq=c(_paq,E);for(H=0;H<_paq.length;H++){if(_paq[H]){aj(_paq[H]) +}}_paq=new K();u.trigger("TrackerAdded",[at]);return at}ar(W,"beforeunload",am,false);ar(W,"online",function(){if(M(g.serviceWorker)){g.serviceWorker.ready.then(function(at){if(at&&at.sync){return at.sync.register("matomoSync")}},function(){})}},false);ar(W,"message",function(ay){if(!ay||!ay.origin){return}var aA,aw,au;var aB=d(ay.origin);var ax=u.getAsyncTrackers();for(aw=0;awgetDataTable(Archiver::REFERRER_TYPE_RECORD_NAME, $idSite, $period, $date, $segment); - if ($typeReferrer !== false) // filter for a specific referrer type + // checks for && $typeReferrer !== 'false' && $typeReferrer !== '0' added to cover intention when + // it is passed as a string in a GET or POST parameter + if ($typeReferrer !== false && $typeReferrer !== 'false' && $typeReferrer !== '0') // filter for a specific referrer type { $dataTable->filter('Pattern', array('label', $typeReferrer)); } -- cgit v1.2.3