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;


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


/**
 * 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 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);
}
