PageSourceSearch

https://www.ruhrescape.de/wp-content/cache/min/1/wp-content/mu-plu…/re-ads-tracking-browser.js?ver=1789216420

js ruhrescape.de collected 2026-10-06 07:32:03 UTC 16,043 bytes, 80 lines download raw bytes

1(function(){'use strict';var config=window.REAdsTrackingConfig||{};var key='re_ads_attr',consentKey='re_ads_consent',sessionKey='re_ads_session_id';var memorySessionId='',site=String(config.site||''),ajaxUrl=String(config.ajaxUrl||'');var ownedHosts=Array.isArray(config.ownedHosts)?config.ownedHosts:[];var active=!1,observerStarted=!1,attachTimer=0,pageViewSent=!1,lastConsentJson='',wpConsentDecisionObserved=!1;var fields=['tracking_id','source_site','source_host','channel','referrer_host','landing_page','gclid','gbraid','wbraid','gad_source','utm_source','utm_medium','utm_campaign','utm_id','campaign_id','ad_group_id','ad_id','utm_term','utm_content','first_seen_at','last_seen_at'];var clickFields=['gclid','gbraid','wbraid'];var sharedFields=['v','tracking_id','session_id','channel','gclid','gbraid','wbraid','gad_source','utm_source','utm_medium','utm_campaign','utm_id','campaign_id','ad_group_id','ad_id','utm_term','utm_content','first_seen_at','last_seen_at'];window.dataLayer=window.dataLayer||[];window.gtag=window.gtag||function(){window.dataLayer.push(arguments)};function now(){return new Date().toISOString()}
2function normalizedHost(value){return String(value||'').toLowerCase().replace(/^www\./,'')}
3function host(value){try{return normalizedHost(new URL(value,window.location.href).hostname)}catch(error){return''}}
4function ownedHost(value){return ownedHosts.map(normalizedHost).indexOf(normalizedHost(value))!==-1}
5function owned(value){return ownedHost(host(value))}
6function sessionId(preferred){if(memorySessionId){return memorySessionId}
7try{memorySessionId=window.sessionStorage?sessionStorage.getItem(sessionKey)||'':''}catch(error){}
8if(!memorySessionId&&/^sess_[a-z0-9]+$/i.test(String(preferred||''))){memorySessionId=String(preferred);try{if(window.sessionStorage){sessionStorage.setItem(sessionKey,memorySessionId)}}catch(error){}}
9if(!memorySessionId){memorySessionId='sess_'+Date.now().toString(16)+Math.random().toString(16).slice(2);try{if(window.sessionStorage){sessionStorage.setItem(sessionKey,memorySessionId)}}catch(error){}}
10return memorySessionId}
11function classify(params,refHost){var source=String(params.get('utm_source')||'').toLowerCase(),medium=String(params.get('utm_medium')||'').toLowerCase();if(clickFields.some(function(name){return!!params.get(name)})||params.get('gad_source')){return'google_ads'}
12if(medium==='email'||medium==='newsletter'||/mail|newsletter/.test(source)){return'email'}
13if(/^(cpc|ppc|paid|paid_search|paidsearch|paid_social|display)$/.test(medium)){return/google|adwords/.test(source)?'google_ads':'paid'}
14if(/instagram|facebook|meta|linkedin|tiktok|pinterest/.test(source+' '+refHost)){return'social'}
15if(/google\./.test(refHost)){return'google_organic'}
16if(refHost&&ownedHost(refHost)){return refHost===normalizedHost(location.hostname)?'direct':'internal_cross_domain'}
17return refHost?'referral':'direct'}
18function cookieValue(name){var match=(document.cookie||'').match(new RegExp('(?:^|; )'+name.replace(/[.*+?^${}()|[\]\\]/g,'\\$&')+'=([^;]*)'));return match?decodeURIComponent(match[1]):''}
19function decisionKnown(){var cookies=document.cookie||'';if(/(?:^|; )cmplz_(?:banner-status|marketing|statistics)=/.test(cookies)){return!0}
20if(/(?:^|; )(?:viewed_cookie_policy=yes|CookieLawInfoConsent=)/.test(cookies)){return!0}
21if(typeof window.cmplz_get_banner_status==='function'){var status=window.cmplz_get_banner_status();return status==='dismissed'||status==='1'||status===1||status===!0}
22if(window.consent_api&&typeof window.consent_api.cookie_prefix==='string'&&cookieValue(window.consent_api.cookie_prefix+'_marketing')!==''){return!0}
23return wpConsentDecisionObserved}
24function consentState(){var marketing='unknown';var analytics='unknown';try{if(typeof window.cmplz_has_consent==='function'&&decisionKnown()){marketing=window.cmplz_has_consent('marketing')?'granted':'denied';analytics=window.cmplz_has_consent('statistics')?'granted':'denied'}else if(cookieValue('cmplz_marketing')!==''){marketing=cookieValue('cmplz_marketing')==='allow'?'granted':'denied';analytics=cookieValue('cmplz_statistics')==='allow'?'granted':'denied'}else if(/(?:^|; )(?:viewed_cookie_policy=yes|CookieLawInfoConsent=)/.test(document.cookie||'')){marketing=cookieValue('cookielawinfo-checkbox-advertisement')==='yes'?'granted':'denied';analytics=cookieValue('cookielawinfo-checkbox-analytics')==='yes'?'granted':'denied'}else if(typeof window.wp_has_consent==='function'&&decisionKnown()){marketing=window.wp_has_consent('marketing')?'granted':'denied';analytics=window.wp_has_consent('statistics')?'granted':'denied'}}catch(error){}
25return{ad_storage:marketing,analytics_storage:analytics,ad_user_data:marketing,ad_personalization:marketing}}
26function gtagConsent(state){var values={};Object.keys(state).forEach(function(name){values[name]=state[name]==='granted'?'granted':'denied'});window.gtag('consent','update',values)}
27function clearTracking(){document.cookie=key+'=; Path=/; Max-Age=0; SameSite=Lax'+(location.protocol==='https:'?'; Secure':'');try{if(window.localStorage){localStorage.removeItem(key)}}catch(error){}
28try{if(window.sessionStorage){sessionStorage.removeItem(sessionKey)}}catch(error){}
29memorySessionId='';document.querySelectorAll('input[name="re_ads_attribution"]').forEach(function(input){input.remove()});document.querySelectorAll('a[href*="_re_ads_attr"]').forEach(function(link){try{var url=new URL(link.href);
29url.searchParams.delete('_re_ads_attr');link.href=url.toString()}catch(error){}})}
30function writeConsentGrant(){document.cookie=consentKey+'=granted; Path=/; Max-Age=7200; SameSite=Lax'+(location.protocol==='https:'?'; Secure':'')}
31function parse(raw){try{var value=JSON.parse(raw||'');return value&&typeof value==='object'?value:{}}catch(error){return{}}}
32function cookieBundle(){return parse(cookieValue(key))}
33function legacyBundle(){var stored={};try{stored=parse(window.localStorage?localStorage.getItem(key):'');localStorage.removeItem(key)}catch(error){}
34return stored}
35function timestamp(data){var value=Date.parse(data.last_seen_at||data.first_seen_at||'');return isNaN(value)?0:value}
36function readBundle(){var cookie=cookieBundle();var legacy=legacyBundle();return timestamp(legacy)>timestamp(cookie)?legacy:cookie}
37function clean(data,state){var out={v:2};fields.forEach(function(name){if(data[name]==null||data[name]===''){return}
38var max=name==='landing_page'?700:255;out[name]=String(data[name]).slice(0,max)});out.source_site=site;out.source_host=window.location.hostname.toLowerCase();out.consent_ad_storage=state.ad_storage;out.consent_analytics_storage=state.analytics_storage;out.consent_ad_user_data=state.ad_user_data;out.consent_ad_personalization=state.ad_personalization;return out}
39function writeBundle(data,state){data=clean(data,state);var json=JSON.stringify(data);if(encodeURIComponent(json).length>3000){['landing_page','utm_term','utm_content','ad_group_id','ad_id'].forEach(function(name){delete data[name]});json=JSON.stringify(data)}
40document.cookie=key+'='+encodeURIComponent(json)+'; Path=/; Max-Age='+(90*86400)+'; SameSite=Lax'+(location.protocol==='https:'?'; Secure':'');return data}
41function trackingId(){if(window.crypto&&typeof window.crypto.randomUUID==='function'){return'ads_'+window.crypto.randomUUID()}
42return'ads_'+Date.now().toString(16)+Math.random().toString(16).slice(2)}
43function decodeShared(raw){try{raw=String(raw||'').replace(/-/g,'+').replace(/_/g,'/');while(raw.length%4){raw+='='}
44var decoded=parse(decodeURIComponent(escape(window.atob(raw)))),shared={};sharedFields.forEach(function(name){if(decoded[name]!=null&&decoded[name]!==''){shared[name]=decoded[name]}});return shared}catch(error){return{}}}
45function encodeShared(data){var shared={};sharedFields.forEach(function(name){if(data[name]!=null&&data[name]!==''){shared[name]=data[name]}});try{return window.btoa(unescape(encodeURIComponent(JSON.stringify(shared)))).replace(/\+/g,'-').replace(/\//g,'_').replace(/=+$/,'')}catch(error){return''}}
46function removeSharedParam(){try{var url=new URL(window.location.href);if(!url.searchParams.has('_re_ads_attr')){return}
47url.searchParams.delete('_re_ads_attr');history.replaceState(history.state,'',url.toString())}catch(error){}}
48function capture(){var state=consentState();if(state.ad_user_data!=='granted'){return window.REInternalTracking.getAttribution(state)}
49writeConsentGrant();var params=new URLSearchParams(window.location.search||'');var data=readBundle(),referral=window.REOrderReferral?window.REOrderReferral.getAttribution(state):{};if(['','unknown','direct','direct_or_unknown'].indexOf(String(data.channel||''))!==-1&&referral.channel){data=Object.assign({},data,referral)}
50var shared=decodeShared(params.get('_re_ads_attr'));if(timestamp(shared)>timestamp(data)){data=shared}
51var currentHost=normalizedHost(location.hostname),storedRefHost=normalizedHost(data.referrer_host);if(storedRefHost&&ownedHost(storedRefHost)){if(storedRefHost===currentHost){delete data.referrer_host}
52if(data.channel==='referral'){data.channel=storedRefHost===currentHost?'direct':'internal_cross_domain'}}
53var hasNewClick=clickFields.some(function(name){var value=params.get(name);return!!value&&value!==data[name]});if(hasNewClick){data={v:2,tracking_id:trackingId(),first_seen_at:now()}}
54var previousChannel=String(data.channel||''),explicitChannel=classify(params,''),preservePaid=['google_ads','paid'].indexOf(previousChannel)!==-1&&['google_ads','paid'].indexOf(explicitChannel)===-1;if(!preservePaid){['gclid','gbraid','wbraid','gad_source','utm_source','utm_medium','utm_campaign','utm_id','campaign_id','ad_group_id','ad_id','utm_term','utm_content'].forEach(function(name){var value=params.get(name);if(value){data[name]=value.slice(0,255)}});[['campaignid','campaign_id'],['adgroupid','ad_group_id'],['creative','ad_id']].forEac
54h(function(alias){var value=params.get(alias[0]);if(value&&!params.get(alias[1])){data[alias[1]]=value.slice(0,255)}})}
55if(!data.tracking_id){data.tracking_id=trackingId()}
56if(!data.first_seen_at){data.first_seen_at=now()}
57data.last_seen_at=now();if(!data.landing_page){data.landing_page=window.location.origin+window.location.pathname}
58var referrer=document.referrer||'';var refHost=host(referrer);var channel=classify(params,refHost);var paymentReferrer=normalizedHost(refHost)==='paypal.com'||/\.paypal\.com$/.test(normalizedHost(refHost));if(paymentReferrer){channel=previousChannel||'direct'}else if(preservePaid){channel=previousChannel}else if((channel==='direct'||channel==='internal_cross_domain')&&previousChannel&&['direct','internal_cross_domain'].indexOf(previousChannel)===-1){channel=previousChannel}
59if(!preservePaid&&refHost&&refHost!==currentHost&&!ownedHost(refHost)&&!paymentReferrer){data.referrer_host=refHost}
60data.channel=channel;data=writeBundle(data,state);data.session_id=sessionId(shared.session_id||window.REInternalTracking.getAttribution(state).session_id);data.page_url=window.location.origin+window.location.pathname;removeSharedParam();return data}
61function attributionJson(){var data=capture();if(Object.keys(data).length){return JSON.stringify(data)}var state=consentState();return JSON.stringify({consent_ad_storage:state.ad_storage,consent_analytics_storage:state.analytics_storage,consent_ad_user_data:state.ad_user_data,consent_ad_personalization:state.ad_personalization})}
62function sendEvent(type,context){var state=consentState(),parking=window.REAdsClickParking;if(!ajaxUrl||(state.ad_user_data==='granted'&&parking&&typeof parking.runWhenReady==='function'&&!parking.runWhenReady(function(){sendEvent(type,context)}))){return}
63var data=capture();if(!data.tracking_id){return}
64var body=new URLSearchParams({action:'re_ads_tracking_event',event_type:type,event_uid:'evt_'+type+'_'+data.tracking_id+'_'+Date.now().toString(16),occurred_at:now(),attribution:JSON.stringify(data),context:JSON.stringify(context||{})}).toString();try{if(navigator.sendBeacon&&navigator.sendBeacon(ajaxUrl,new Blob([body],{type:'application/x-www-form-urlencoded;charset=UTF-8'}))){return}}catch(error){}
65try{fetch(ajaxUrl,{method:'POST',headers:{'Content-Type':'application/x-www-form-urlencoded;charset=UTF-8'},body:body,keepalive:!0,credentials:'same-origin'}).catch(function(){})}catch(error){}}
66function decorate(link,data){try{var url=new URL(link.href,window.location.href);if(url.hostname===window.location.hostname||!owned(url.href)){return}
67var encoded=encodeShared(data);if(encoded){url.searchParams.set('_re_ads_attr',encoded);link.href=url.toString()}}catch(error){}}
68function attach(root){if(consentState().ad_user_data!=='granted'&&!window.REOrderReferral){return}
69var data=capture();(root||document).querySelectorAll('form').forEach(function(form){if(!form.closest('.wpcf7')){var input=form.querySelector('input[name="re_ads_attribution"]');
69if(!input){input=document.createElement('input');input.type='hidden';input.name='re_ads_attribution';form.appendChild(input)}
70input.value=JSON.stringify(data)}
71if(form.dataset.reAdsAttached){return}form.dataset.reAdsAttached='1';form.addEventListener('submit',function(){var checkout=/checkout|kasse/i.test(location.pathname);if(checkout&&window.REAdsCheckoutStarted){return}
72if(checkout){window.REAdsCheckoutStarted=!0}
73sendEvent(checkout?'begin_checkout':'form_submit',{form_id:form.id||'',form_action:form.action||''})})});(root||document).querySelectorAll('a[href]').forEach(function(link){if(link.dataset.reAdsAttached){return}link.dataset.reAdsAttached='1';var updateLink=function(){if(consentState().ad_user_data==='granted'){decorate(link,capture())}};link.addEventListener('pointerdown',updateLink,!0);link.addEventListener('click',updateLink,!0)})}
74function syncConsent(){var state=consentState();document.cookie=consentKey+'='+state.ad_user_data+'; Path=/; Max-Age=7200; SameSite=Lax'+(location.protocol==='https:'?'; Secure':'');gtagConsent(state);var stateJson=JSON.stringify(state);if(stateJson!==lastConsentJson){lastConsentJson=stateJson;try{document.dispatchEvent(new CustomEvent('re_ads_consent_change',{detail:state}))}catch(error){}}
75if(state.ad_user_data!=='granted'){clearTracking();if(state.ad_user_data==='denied'){document.cookie=consentKey+'=denied; Path=/; Max-Age=7200; SameSite=Lax'+(location.protocol==='https:'?'; Secure':'')}}else{writeConsentGrant();var parking=window.REAdsClickParking;if(parking&&typeof parking.runWhenReady==='function'&&!parking.runWhenReady(syncConsent)){return}}
76active=!0;attach(document);if(!observerStarted){new MutationObserver(function(){clearTimeout(attachTimer);attachTimer=setTimeout(function(){if(active){attach(document)}},100)}).observe(document.documentElement,{childList:!0,subtree:!0});observerStarted=!0}
77if(!pageViewSent){pageViewSent=!0;sendEvent('page_view',{path:location.pathname})}}
78window.REAdsTracking={getAttribution:capture,getAttributionJson:attributionJson,getConsent:consentState,attach:attach,sendEvent:sendEvent};['cmplz_status_change','cmplz_fire_categories'].forEach(function(name){document.addEventListener(name,syncConsent)});document.addEventListener('click',function(event){if(event.target&&event.target.closest&&event.target.closest('.cli_action_button,.cli_setting_save_button')){setTimeout(syncConsent,0)}
79var addButton=event.target&&event.target.closest?event.target.closest('[name="add-to-cart"],.add_to_cart_button,.single_add_to_cart_button'):null;if(addButton){var form=addButton.closest('form');var quantity=form&&form.querySelector('[name="quantity"]');var context=Object.assign({path:location.pathname},config.commerce||{},{product_id:addButton.value||addButton.dataset.product_id||'',quantity:quantity?quantity.value:'1'});sendEvent('add_to_cart',context)}},!0);document.addEventListener('wp_listen_for_consent_change',function(event){var detail=event&&event.detail;if(!detail||!Object.prototype.hasOwnProperty.call(detail,'marketing')){return}wpConsentDecisionObserved=!0;syncConsent()});if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',syncConsent)}else{syncConsent()}
80window.addEventListener('focus',syncConsent)}())

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.