// Externe JavaScripts 160708

// Konstante
redirectScript="go.php";
dirDiv="/";
redirectDiv="/";
redirectUrl=dirDiv+redirectScript+redirectDiv;

// ============================ Basis-Bibliothek ============================

function rc(text,chars,subs,insensitive) { if(chars) { var i, work, result="", start=0; subs=(subs)?subs:""; if(insensitive) { work=text.toLowerCase(); chars=chars.toLowerCase(); } else { work=text; } i=work.indexOf(chars,start); while(i>=0) { result+=text.substring(start,i)+subs; start=i+chars.length; i=work.indexOf(chars,start); if(!i) { break; } } result+=text.substring(start,text.length); return result; } else { return text; } }

// =========================== System-Bibliothek ============================

function getNearestId(obj) {
 result="";
 if(!obj.id && obj.parentNode) {
  result=getNearestId(obj.parentNode);
 } else {
  result=obj.id;
 }
 return result;
}

// --------------------------------------------------------------------------

// Anti-Spam-E-Mail decodieren 050816
// mailto.php?user:example.org
// <span gid="email">user&part;example.org</span>
function decodeMailto(ext,server) {
 var i, url, email, user, userid, userstart, userend, server, serverid, serverstart, serverend;
 ext=(ext)?("."+ext):".php";

 // MailTo-Links
 for(i=0;i<document.links.length;i++) {
  url=(document.getElementById)?document.links[i].getAttribute("href"):document.links[i].href;
  if(url.indexOf("mailto"+ext+"?")>=0) {
   email=rc(url.substring(url.indexOf("?")+1),":","@");
   email=rc(email,"aldaron","ALDARON");
   document.links[i].href="mailto:"+email;
   if(document.getElementById && encodeURI(document.links[i].innerHTML).indexOf("2%88%82")>0) {
    document.links[i].innerHTML=email;
   }
  }
 }

 // E-Mail-Adressen
 if(document.getElementsByTagName) {
  spanColl=document.getElementsByTagName("span");
  for(i=0;i<spanColl.length;i++) {
   if(spanColl[i].getAttribute("gid")=="email") {
    email=encodeURI(spanColl[i].innerHTML).replace(/%e2%88%82/i,"@").replace(/&part;/i,"@");
    spanColl[i].innerHTML=decodeURI(email);
   }
  }
 }
}

// ========================== Programm-Bibliothek ===========================

/* Umlenker-URLs durch Real-URLs ersetzen (und benoetigte Methoden erzeugen) 280208 */
function beautifyLinks() {
 var i, aObj, pos, realUrl;

 // Nur starten, wenn ueberhaupt Links existieren
 if(document.links) {

  // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  // Definition von beautifyLinks.setCaller() (Real-URL -> Umlenker-URL)
  beautifyLinks.setCaller=function() {
   // Urspruenglichen (kurzen) HREF sichern
   this.orghref=this.href;
   // Umlenker-URL in den HREF schreiben
   this.href=redirectUrl+escape(this.href.replace("http://",""));
   // Link kurz nach dem Click wiederherstellen
   setTimeout("beautifyLinks.restore('"+this.id+"')",5000);
  }

  // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  // Definition von beautifyLinks.restore() (Umlenker-URL -> Real-URL)
  beautifyLinks.restore=function(linkId) {
   if(document.getElementById && document.getElementById(linkId)) {
    var aObj=document.getElementById(linkId);
    if(aObj.orghref) { aObj.href=aObj.orghref; }
   }
  }

  // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  // Alle Links durchgehen ...
  for(i=0;i<document.links.length;i++) {
   aObj=document.links[i];
   // ... und Position des Umlenkerscripts im HREF merken
   pos=aObj.href.indexOf(redirectUrl);
   // Wenn es ein Umlenker-HREF ist ...
   if(pos>0) {
    // ... eigentlichen URL ermitteln ...
    realUrl="http://"+aObj.href.substr(pos+redirectUrl.length);
    // ... und als HREF setzen
    aObj.href=realUrl;
    // Bei DOM-Browsern die Angebots-ID ermitteln
    if(aObj.parentNode) {
     ancestorId=getNearestId(aObj);
     // Link mit eigener ID versehen (xxxa oder xxxb)
     aObj.id=ancestorId+((!document.getElementById(ancestorId+"a"))?"a":"b");
    }
    // Click-Eventhandler installieren
    aObj.onclick=aObj.oncontextmenu=beautifyLinks.setCaller;
   }
  }

 }
}

// =============================== MagicHTML ================================

function magicGO() {
}

function magicB4() {
}

function magicL8() {
 beautifyLinks();
 decodeMailto();
}

function magicOK() {
}

function magicXL() {
}

function magicKO() {
}

// =============================== Direkt-Code ===============================

xJS=true; // Externes JavaScript geladen!