if (window.addEventListener) {
  window.addEventListener("load", checkLogo, false);
} else if (window.attachEvent) {
  window.attachEvent("onload", checkLogo);
}

var currentScriptUrlLogo = document.currentScript.getAttribute("src")

function checkLogo() {

  var cntMatch = currentScriptUrlLogo.match(/[?&]cnt=(\d+)/);
  if (!cntMatch) {
    return;
  }
  var cnt = cntMatch[1];

  var scriptUrl = new URL(currentScriptUrlLogo, window.location.origin);
  var pathname = (scriptUrl.pathname || '').replace(/\/+$/, '');
  pathname = pathname.replace(/\/get-farm-logo-code$/i, '');

  var pathSegments = pathname.split('/').filter(function (segment) {
    return segment !== '';
  });

  var languageCode = (pathSegments.length > 0 ? pathSegments[0] : (document.documentElement.lang || 'de').toLowerCase().split('-')[0]);

  // Lightweight TYPO3 page (typeNum 427596) — avoids full search-page bootstrap and filter cookies.
  var url = scriptUrl.origin + '/?type=427596'
    + '&tx_zeppelinsbbmitglieder_sbbmitglieder[action]=logowidget'
    + '&tx_zeppelinsbbmitglieder_sbbmitglieder[controller]=Mitglieder';

  var xhr = new XMLHttpRequest();
  url += '&tx_zeppelinsbbmitglieder_sbbmitglieder[cnt]=' + cnt;
  url += '&tx_zeppelinsbbmitglieder_sbbmitglieder[lang]=' + encodeURIComponent(languageCode);

  xhr.open('GET', url, true);

  xhr.onreadystatechange = function () {
    if (xhr.readyState === 4 && xhr.status === 200) {
      response = JSON.parse(xhr.responseText);
      if (response.showLogo) {
        loadLogo(response);
      }
    }
  };

  xhr.send();

}

function loadLogo(response) {

  var scriptUrl = new URL(currentScriptUrlLogo, window.location.origin);
  var logoUrl = scriptUrl.origin
    + '/typo3conf/ext/zeppelin_default_template/Resources/Public/Assets/img/main/logo.png';

  var bLinkExists = (document.getElementById("rhLogoCont").getElementsByTagName("a").length > 0);
  var sLogoHTML = "<img src='" + logoUrl + "' alt='Roter Hahn' width='70' height='70' />";
  if (bLinkExists) {
    var cont = document.getElementById("rhLogoCont").getElementsByTagName("a")[0];
    cont.innerHTML = sLogoHTML;
  } else {
    var cont = document.getElementById("rhLogoCont");
    cont.innerHTML = "<a href='" + response.hoflink + "' target='_blank' title='Roter Hahn'>" + sLogoHTML + "</a>";
  }
}