lib.tracking.cssInline = COA

# Google Optimize Page-Hiding Snippet
lib.tracking.cssInline.10 = TEXT
lib.tracking.cssInline.10.value (
.async-hide {opacity: 0 !important}
)

lib.tracking.jsInline = COA

#Init usercentricsVar
lib.tracking.jsInline.5 = TEXT
lib.tracking.jsInline.5.value (
  let allowGA = 0;
  let allowFB = 0;
  let allowPiwik = 0;
  let allowMatelso = 0;
  let acceptallconsents = 0;
)

# Google Optimize Page-Hiding Snippet
lib.tracking.jsInline.10 = COA

lib.tracking.jsInline.10.10 = TEXT
lib.tracking.jsInline.10.10.value (
if (allowGA) {
  /* Google Optimize Page-Hiding Snippet */
  if(navigator.userAgent.indexOf("Speed Insights") === -1) {
    (function(a,s,y,n,c,h,i,d,e){s.className+=' '+y;h.start=1*new Date;
    h.end=i=function(){s.className=s.className.replace(RegExp(' ?'+y),'')};
    (a[n]=a[n]||[]).hide=h;setTimeout(function(){i();h.end=null},c);h.timeout=c;
    })(window,document.documentElement,'async-hide','dataLayer',4000,

)
lib.tracking.jsInline.10.20 = TEXT
lib.tracking.jsInline.10.20.value = {$bgm_theme.tracking.googleOptimize}
lib.tracking.jsInline.10.20.wrap = {'|':true});}}

# Google Analytics Snippet with analytics.js and Google Optimize
lib.tracking.jsInline.20 = COA
lib.tracking.jsInline.20.5 = TEXT
lib.tracking.jsInline.20.5.value = {$bgm_theme.tracking.googleAnalytics}
lib.tracking.jsInline.20.5.wrap = var gaProperty = '|';
lib.tracking.jsInline.20.10 = TEXT
lib.tracking.jsInline.20.10.value (
;includeGACode = function() {
  if (allowGA) {
    /* Google Analytics Snippet with analytics.js and Google Optimize */
    if(navigator.userAgent.indexOf("Speed Insights") === -1) {
      /* Include analytics.js */
      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
      })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

      /* Initialize */
      ga('create', gaProperty, 'auto');
      ga('set', 'anonymizeIp', true);
      if (typeof ga !== 'undefined') {
          ga(function(tracker) {
            var clientId = tracker.get('clientId');
            $('#powermail_field_clientid').val(clientId);

            var gclid = tracker.get('gclid');
            $('#powermail_field_gclid').val(gclid);
        });
      }

      if (typeof gtag !== 'undefined') {
       gtag('get', gaProperty, 'clientid', function(clientId) {
            $('#powermail_field_clientid').val(clientId);
       });
       gtag('get', gaProperty, 'gclid', function(gclid) {
            $('#powermail_field_gclid').val(gclid);
       });
      }


/*


*/


)
lib.tracking.jsInline.20.20 = TEXT
lib.tracking.jsInline.20.20.value = {$bgm_theme.tracking.googleOptimize}
lib.tracking.jsInline.20.20.wrap = ga('require', '|');
lib.tracking.jsInline.20.30 = TEXT
lib.tracking.jsInline.20.30.value (
      /* Track */
      ga('send', 'pageview');
    }
  }
}
includeGACode();
)
# Piwik Snippet
lib.tracking.jsInline.30 = COA
lib.tracking.jsInline.30.10 = TEXT
lib.tracking.jsInline.30.10.value (
    /* Piwik/Matomo Snippet */
    if(navigator.userAgent.indexOf("Chrome-Lighthouse") === -1) {
      var _paq = _paq || [];
      _paq.push(['trackPageView']);
      _paq.push(['enableLinkTracking']);
      (function() {
        var u="https://piwik.vsa.de/";
        _paq.push(['setTrackerUrl','https://piwik.vsa.de/piwik.php']);

)
lib.tracking.jsInline.30.20 = TEXT
lib.tracking.jsInline.30.20.value = {$bgm_theme.tracking.piwikSiteId}
lib.tracking.jsInline.30.20.wrap = _paq.push(['setSiteId', |]);
lib.tracking.jsInline.30.30 = TEXT
lib.tracking.jsInline.30.30.value (
       var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.type='text/javascript'; g.async=true; g.defer=true;
       g.src='https://piwik.vsa.de/piwik.js'; s.parentNode.insertBefore(g,s); })();
    }
)

# Matelso Calltracking Snippet
lib.tracking.jsInline.40 = COA
lib.tracking.jsInline.40.10 = TEXT
lib.tracking.jsInline.40.10.value (

;includeMatelso = function () {
    if (allowGA && allowMatelso) {
/* Matelso Calltracking Snippet*/
      // matelso Calltracking
      (function(m,a,t,e,l,s,o){m["CallTrackingObject"]=l;m[l]=m[l]||function(){
        (m[l].q=m[l].q||[]).push(arguments)};s=a.createElement(t);
        o=a.getElementsByTagName(t)[0];s.async=1;s.src=e;o.parentNode.insertBefore(s,o)
      })(window,document,"script","//rns.matelso.de/webtracking/4/","mtls");
    }
}
includeMatelso();
)

lib.tracking.includeJSFooterlibs = COA

# Facebook tracking
lib.tracking.includeJSFooterlibs.10 = EXT:bgm_theme_azh/Resources/Public/Js/facebook.js

page {
  cssInline {
    85577 < lib.tracking.cssInline
  }

  jsInline {
    85577 < lib.tracking.jsInline
  }

  includeJSFooterlibs {
    facebook < lib.tracking.includeJSFooterlibs.10
  }

  includeJSFooter {
    # Google Eventtracking (Do not deactivate this in another theme extension!)
    googleanalyticsevents = EXT:bgm_theme_azh/Resources/Public/Js/GoogleAnalyticsEvents.js
    plpevents = EXT:bgm_theme_azh/Resources/Public/Js/PlpEvents.js
  }
}

#azh.de
#[PIDinRootline = 1]
[1 in tree.rootLineIds]
  lib.tracking.includeJSFooterlibs.10 >

  page.jsInline.85577.1000 = TEXT
  page.jsInline.85577.1000.value (
    const target = document.head;
    const reloadPage = 0;
    // config object
    const obsconfig = {
      attributes: true,
      attributeOldValue: true,
      childList: true,
      subtree: true
    };
    // subscriber function
    function subscriber(mutations) {
      mutations.forEach((mutation) => {
        if (mutation.target.id === 'fb-tracking'){
          if (mutation.oldValue === 'text/javascript' && mutation.target.type ==='text/plain') {
            //console.log(mutation.target.id+' deactivated');
            allowFB = 0;
            reloadPage = 1;
          }
        }
        if (mutation.target.id === 'ga-tracking'){
          if (mutation.oldValue === 'text/javascript' && mutation.target.type ==='text/plain') {
            allowGA = 0;
            reloadPage = 1;
          }
        }
        if (mutation.target.id === 'matelso-tracking'){
          if (mutation.oldValue === 'text/javascript' && mutation.target.type ==='text/plain') {
            allowMatelso = 0;
            reloadPage = 1;
          }
        }
      });
    }

    const observer = new MutationObserver(subscriber);

    observer.observe(target, obsconfig);
    if (reloadPage) {
      location.reload();
    }
  )


  page.jsInline.85577.30 >
  page.jsInline.85577.30 = TEXT
  page.jsInline.85577.30.value (
  ;var _paq = window._paq || [];
  /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
  _paq.push(["setCookieDomain", "*.www.azh.de"]);
  _paq.push(['trackPageView']);
  _paq.push(['enableLinkTracking']);
  (function() {
    var u="https://piwik.vsa.de/";
    _paq.push(['setTrackerUrl', u+'matomo.php']);
    _paq.push(['setSiteId', '2']);
    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
    g.type='text/javascript'; g.async=true; g.defer=true; g.src='https://piwik.vsa.de/matomo.js'; s.parentNode.insertBefore(g,s);
  })();
  )
  page.includeJSFooterlibs.facebook >
  page.includeJSFooterlibs.facebook = EXT:bgm_theme_azh/Resources/Public/Js/uc/uc_facebook.js
  lib.tracking.jsInline.20.10.value (
;includeGACode = function() {
  if (allowGA) {
    /* Google Analytics Snippet with analytics.js and Google Optimize */
    if(navigator.userAgent.indexOf("Speed Insights") === -1) {
      /* Include analytics.js */
      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
      })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

      /* Initialize */
      ga('create', gaProperty, 'auto');
      ga('set', 'anonymizeIp', true);
  )
[global]

# No tracking if BE-Login or Google Page Speed
[getTSFE().beUserLogin || request.getNormalizedParams().getHttpHost() == '*Chrome-Lighthouse*']
  page.cssInline.85577 >
  #page.jsInline.85577 >
  page.includeJSFooterlibs.facebook >
  page.headerData.108 >
[global]
