var ua = navigator.userAgent.toLowerCase();

var isMac   = (ua.indexOf('mac')>-1)?1:0;
var isWin   = (ua.indexOf('win')>-1)?1:0;

var isGecko   = (ua.indexOf('gecko')>-1)?1:0;
var isSafari   = (ua.indexOf('safari')>-1)?1:0;

var isOpera = (ua.indexOf('opera')>-1)?1:0;

var isIE    = (ua.indexOf('msie')>-1 && !isOpera)?1:0;

var isIEWin = (isIE && isWin && !isOpera)?1:0;
var isIEMac = (isIE && isMac && !isOpera)?1:0;
var isIEWinCE  = (isIE && ua.indexOf('windows ce')>-1)?1:0;

var isWPrint   = (window.print)?1:0;

var isDOM   = (document.getElementById)?1:0;
var isIE4   = (isIE && !isDOM)?1:0;
var isNS4   = (document.layers)?1:0;
var restore = "";

/**
 * initialisieren
 */
function doInit(){
  if(isDOM && !isIEMac) {
    setLinkAttributes();
  }
} // doInit


function printIt(isPrintable){
  if(isDOM){

    var statusDIV = document.getElementById("ulPcTopDrucken");
    var statusDIVLink = statusDIV.getElementsByTagName("a")[0];
    var statusText = statusDIVLink.innerHTML;
    //DruckUrl einblenden
    var druckDiv = document.getElementById("pcDruckUrl");
    var druckText = stringToMultiLine("URL: " + document.URL,65);

    if(statusText == "Seite drucken"){
      restore = document.getElementsByTagName("body")[0].innerHTML;
    }

    if(statusText == "Seite drucken"){

      //var pcStart = document.getElementById("ardAll");
      //pcStart.style.width = "100em";

      //PC-Navigation ausblenden
      var pcNavi = document.getElementById("pcNavi");
      //pcNavi.innerHTML = "";


      //ard-Navigation ausblenden
      var ardmasternav = document.getElementById("ardmasternav");
      ardmasternav.innerHTML = "";

      //ard-Fuss ausblenden
      var footer = document.getElementById("footer");
      footer.innerHTML = "";

      //ard-rechteSpalte ausblenden
      var pcRechts = document.getElementById("pcRechts");
      pcRechts.innerHTML = "";

      druckDiv.innerHTML = druckText;

      var linklisten = document.getElementsByTagName("ul");
      for(i=0; i < linklisten.length; i++){
        var eintraege = linklisten[i].getElementsByTagName("li");

        if(eintraege.length){
          for(b=0; b < eintraege.length; b++){
            var eintrag = eintraege[b];
            var eintragHTML = eintraege[b].innerHTML;


            if(eintragHTML.match(/pcLinklistImage/)){
              var linkObj = eintrag.getElementsByTagName("a")[0];
              var linkUrl = linkObj.getAttribute("href");
              var linkText = linkObj.innerHTML;
              //alert(linkText);
              if(!linkUrl.match(/http/)){
                linkUrl = "http://www.wdr.de" + linkUrl;
              }

              linkUrl = stringToMultiLine(linkUrl, 55);
              linkObj.innerHTML = linkText + "<br />" + linkUrl;
            }
          }
        }
      }//for(i=0,...)
      statusDIVLink.innerHTML = "Seite zurücksetzen";
      window.print();
    }//if(statusText....)

    if(statusText == "Seite zurücksetzen"){
      document.getElementsByTagName("body")[0].innerHTML = restore;
      druckDiv.innerHTML = "";
    }
  }

}

/**
 * popup-Fenster öffnen
 * Achtung! BA PopUps müssen scrollbar, resizable sein und ein Menubar haben
 *
 */
function popup(url, breite, hoehe){

  var winname = "popup" + (new Date()).getTime();
  var winarg = "";
  var x = 0;
  var y = 0;

  windowisopen = false;
  eval("if(window." + winname + " && window." + winname + ".closed==false) { windowisopen = true\; }");

  if(!windowisopen) {
    if(screen.width > 640) {
      x = (screen.availWidth  - breite) / 2;
      y = (screen.availHeight - hoehe) / 2;
    }
    winarg  = 'width=' + breite + ',height=' + hoehe + ',top=' + y + ',left='+ x;
    winarg += ',resizable,menubar,scrollbars';
  }

  eval("" + winname + " = window.open( url, winname, winarg)\;");
  eval("" + winname + ".focus()\;");
  eval("if (" + winname + ".opener == null) " + winname + ".opener = self\;");

  return false;
} // popup


/**
 * Link-Collection an setLinkAttrCollection übergeben
 */
function setLinkAttributes(){
  var urls   = document.getElementsByTagName("a");
  setLinkAttrCollection(urls);

  var areaurls   = document.getElementsByTagName("area");
  setLinkAttrCollection(areaurls);
} // setLinkAttributes


/**
 * Link-Attribute title/target setzen
 * in Abhängigkeit vom rel-Attribute
 */
function setLinkAttrCollection(urls){
  var zText  = "Link öffnet in neuem Fenster";

  for (i=0; i<urls.length; i++){
    var target = null;
    var rel = urls[i].getAttribute("rel");
    var tgt = urls[i].getAttribute("target");

    if (rel){
      if (rel.indexOf("@")>-1){
        fall   = rel.substring(0,rel.indexOf("@"));
        target = rel.substring(rel.indexOf("@")+1);
      } else {
        fall = rel;
      }

      switch (fall){
	case 'audio':
	case 'video':
	case 'gaestebuch':
	  if(!target){ target = null; }
	  break;

        case 'blank':
        case 'ard':
	case 'wdr':
	case 'www':
	case 'forum':
	case 'mediabox':
	case 'stichwort':
	case 'kurzmeldungen':
	case 'mediabox_av':
	case 'mediabox_b':
	case 'mediabox_vb':
        case 'eventbox':
	case 'ticker':
	case 'popup':
	  if(!target){ target = "_blank"; }
	  break;

        default:
	  if(!target){ target = null; }
      }

      if(target){
        appendToTitleText(urls[i], zText);
        setLinkTarget(urls[i], target);
      }
    } else if(tgt) {
      appendToTitleText(urls[i], zText);
    }
  } // for
} // setLinkAttrCollection

function openstat (url, obj)
{
  open(url,'stat','toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=no,resizable=yes,copyhistory=no,screenX=280,screenY=120,width=380,height=390');

  if(obj != ""){
    obj.target = "stat";
  }
}

function stringToMultiLine(str,c){
   snip = '';
   for(i=0;i<str.length;) {
      n = str.substring(i,i+c).lastIndexOf("http://otti.wdr.de:10000/");
      m = str.substring(i,i+c).lastIndexOf("?");
      o = str.substring(i,i+c).lastIndexOf("&");
      p = Math.max(o,Math.max(n,m));
      if(p < 0){ p = c; }
      if(str.substring(i).length > c) { snip += str.substring(i,i+=(p+1)); snip += "<br />"; }
      else { snip += str.substring(i); i+=str.substring(i).length; }
   }
   if(snip == ""){
      snip = str;
   }
   return snip;
}

function appendToTitleText(n, s){
  if(n.getAttribute("title")){ n.setAttribute("title", n.getAttribute("title") + ". " + s); }
  else{ n.setAttribute("title", s); }
}

function setLinkTarget(n,t){
  n.setAttribute("target", t);
}

