
/**
 * versorgt den IE mit :hover-State auch fuer nicht-a-elemente
 *
 */
sfHover = function() {
	var sfEls = document.getElementById("mainNav").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);

/**
 *  popup
 *	 oeffnet ein neues browser-fenster als pop-up mit entsprechenden parametern
 *
 *  @var  	string  ziel-url
 *  @var  	string  breite des pop-up fensters
 *  @var  	string  hoehe des pop-up fensters
 *  @return	void	  null
 */
 function popup(url,breite,hoehe)
{
	if(!breite) { breite = '600' }
	if(!hoehe) { hoehe = '515' }
    theWindow = window.open(url,'theWindow','width=' + breite + ',height=' + hoehe + ',scrollbars=no');
	 if(theWindow) {theWindow.focus();}
}

/**
 *  onloadWrapper
 *	 wrapper-Funktion fuer Funktionen, die beim Laden einer Seite ausgefuehrt werden sollen.
 *
 *  @return	void	  null
 */
 function onloadWrapper(){
 	styleContentAd();
	oldLinkText = new Array();
	switched = new Array();
 }
 
 /**
  *  styleContentAd()
  *	 sucht nach einer Content-Ad im DOM. Wenn eine ContentAd gefunden wird, werden die 
  *  Striche ober- und unterhalb der Ad eingefuegt.
  *  Ob eine ContentAd angezeigt vorhanden ist, wird geprueft, indem nach 0.gif gesucht wird. 
  *  Sonderfall: Wenn eine ContentAd auf einer Index-Seite angezeigt wird, muss hinter selbiger ein Abstand
  *  vergroessert werden, damit der folgende Teaser-Container nicht in die CA "hineinlappt".
  *  Dies wird durch Abfragen der Klasse des naechsten Kontens geprueft.
  *
  *  @return	void	  null
  */
 function styleContentAd(){
 	var CAcontainer = document.getElementById("bannerContent");
	var chkCA = true;
 	if(CAcontainer && CAcontainer.getElementsByTagName('img').length > 0) {
		if(CAcontainer.getElementsByTagName('img')[0].src.indexOf('/0.gif') != -1) {
			chkCA = false;
		}
	}
	
	if(CAcontainer && chkCA == true) {
		// Content-Ad-Einblendung gefunden, div-tags generieren
		var striche = document.createElement('div');
		var inner = document.createTextNode(' ');
		striche.className = 'line dotGr v10b';
		striche.appendChild(inner);
		var striche2 = document.createElement('div');
		var inner2 = document.createTextNode(' ');
		striche2.className = 'line dotGr v10b';
		striche2.appendChild(inner2);
		
		// Auf manchen Sonderseiten haben wir den Inhalt direkt in mainCol, articleText ist dort nicht vorhanden. Dirty, aber funktioniert...
		if(!document.getElementById('articleText')){
			var parentElem = document.getElementById('mainCol');
		}
		else {
			var parentElem = document.getElementById('articleText');
		}
		
		// Sind wir in einer Index-Ansicht? Wenn ja, margin-bottom vergroessern
		if(parentElem.className && parentElem.className == 'index'){
			striche2.className += 'line dotGr v1030';
		}
		
		// Striche ins DOM einfuegen
		parentElem.insertBefore(striche, CAcontainer);
		parentElem.insertBefore(striche2, CAcontainer.nextSibling);
		
		// google Ads horizontal im IE fixen
		if(document.all){
			var gCont = document.getElementById('googleFolge');
			if(gCont) gCont.style.bottom = '0';
		}
	}

 }
 
 /**
  * fsPlayer
  * generiert den FullSize-Player als "quasi-Power-Layer"
  */
 function fsPlayer(theMovieName,theVideo,theImage,parentPlayerName){
 	if(!document.getElementById) return;
	bodyTag = document.getElementsByTagName('body')[0];
	var keyNode = document.getElementById('top');
	// kleinen Player stoppen
	sendEvent(parentPlayerName,'stop');
	
	// kleinen player unsichtbar schalten
	parentPlayer = document.getElementById(parentPlayerName);
	parentPlayer.style.visibility = 'hidden';
	// Im IE alle PullDowns ausblenden, koennen dort nicht verdeckt werden
	if (document.all){
		var selboxElements = document.getElementsByTagName('select');
		for (var i = 0; i < selboxElements.length; i++)
			selboxElements[i].style.visibility = 'hidden';
	}
	// hg-div erzeugen
	var backGr = document.createElement('div');
	backGr.id = 'playerLayer';
	css = backGr.style;
    css.top = '0px';
    css.left = '0px';
	if(document.all) {
		css.height = bodyTag.offsetHeight+'px';
		css.filter = 'alpha(opacity=70)';
		css.background = '#E7E1D2';
	}
	else {
		css.height = (bodyTag.offsetHeight+29)+'px';
		css.background = 'url("/img/fsPlBg.png")';
	}
   css.width = '100%';
  	css.position = 'absolute';
   css.zIndex = '999998';
	
	//player-div erzeugen
	var fsPl = document.createElement('div');
	fsPl.id = 'fsPlayer';
	css = fsPl.style;
	css.width = '512px';
	css.height = '424px';
	css.background = '#ff0000';
	css.position = 'absolute';
	css.border = 'solid 1px #c0c0c0';
	var scrollPos = getScrollPos();
	css.top = scrollPos[1] + 80 + 'px';
	css.left = '190px';
	css.cursor = 'move';
	
	// layer einsetzen
	backGr.appendChild(fsPl);
	bodyTag.insertBefore(backGr,keyNode);
	
	// titelleiste erzeugen und einsetzen
	var titleBar = document.createElement('div');
	titleBar.id = 'titleBar';
	titleBar.className = 'fsPlayerHeader';
	css = titleBar.style;
	if(document.all) {
		css.filter = 'alpha(opacity=100)';
	}
	css.cursor = 'move';
	titleBar.innerHTML = '<h2>'+theMovieName+'</h2> <a href="javascript:removeFsPl(\'playerLayer\')">schlie&szlig;en</a><hr class="clearer />';
	fsPl.appendChild(titleBar);
	
	// titelleiste draggable machen
	new Draggable('fsPlayer', {} );
	
	// player-playtzhalter erzeugen und einsetzen
	var playerPh = document.createElement('p');
	playerPh.id = 'playerPh';
	fsPl.appendChild(playerPh);
	
	//flashObject erzeugen
	var fpGr = new SWFObject("/swf/flvplayer.swf","single","512","404","7");
	fpGr.addVariable("file",theVideo);
	fpGr.addVariable("image",theImage);
	fpGr.addVariable("logo","/img/rwt_icon.png");
	fpGr.addVariable("usefullscreen","false");
	fpGr.addVariable("autostart","true");
	fpGr.addVariable("wmode","transparent");
	fpGr.write("playerPh"); 
}

// fullSize Player entfernen
function removeFsPl(theId){
	bodyTag.removeChild(document.getElementById(theId));
	parentPlayer.style.visibility = 'visible';
}

 
/**
 * This is a javascript handler for the player and is always needed.
 */
function thisMovie(movieName) {
  return document.getElementById(movieName)
};

/**
 * This is a javascript handler for the player and is always needed.
 */
function sendEvent(movie,typ,prm) {
	thisMovie(movie).sendEvent(typ,prm);
}

/**
 * Informationen aus dem Flv-Player abholen
 * Bei Click auf Play-Taste Video-Quellnachweis einblenden
 */
function getUpdate(typ,pr1,pr2,pid) {
	if(!switched[pid]) switched[pid] = false;
	if(typ == "state" && pr1 == 2){
		var qnsList =  new Array();
		var qns = thisMovie(pid).parentNode.parentNode.getElementsByTagName("P");
		for (i=0;i<qns.length;i++) {
			if (qns[i].className  == "qn") qnsList.push(qns[i]);
		}
		for(i=0;i<qnsList.length;i++){
			if(qnsList[i].style.display == "none" && switched[pid] == false) {
				qnsList[i].style.display = "";
				qnsList[i-1].style.display = "none";
				switched[pid] = true;
			}
		}
	}
}




/**
 * Die Scrollposition plattformunabhängig ausfindig machen 
 */
function getScrollPos(){
	var x,y;
	if (self.pageYOffset) {
		// all except Explorer
		x = self.pageXOffset;
		y = self.pageYOffset;
	}
	else if (document.documentElement && document.documentElement.scrollTop) {
		// Explorer 6 Strict
		x = document.documentElement.scrollLeft;
		y = document.documentElement.scrollTop;
	}
	else if (document.body) {
		// all other Explorers
		x = document.body.scrollLeft;
		y = document.body.scrollTop;
	}
	return new Array(x,y);
}

/**
 * Galerie-Navigation vorwaerts
 */
function nextPage(){
	uls = document.getElementById('mmGallery').getElementsByTagName('ul');
	var rew = document.getElementById('rew');
	var fwd = document.getElementById('fwd');
	for(i = 0; i < uls.length; i++){
		if(uls[i].style.display == '') { var disp = i; }
	}
	if(uls[disp+1]){
		uls[disp].style.display = 'none';
		uls[disp+1].style.display = '';
		rew.src = '/img/gal_arrow_l.gif';
	}
	if(!uls[disp+2]){ 
		fwd.src = '/img/gal_arrow_br.gif';
	}
}

/**
 * Galerie-Navigation rueckwaerts
 */
function prevPage(){
	uls = document.getElementById('mmGallery').getElementsByTagName('ul');
	var rew = document.getElementById('rew');
	var fwd = document.getElementById('fwd');
	for(i = 0; i < uls.length; i++){
		if(uls[i].style.display == '') { var disp = i; }
	}
	if((disp-1) >= 0 && uls[disp-1]){
		uls[disp].style.display = 'none';
		uls[disp-1].style.display = '';
		fwd.src = '/img/gal_arrow_r.gif';
	}
	if(disp-2 < 0){ 
		rew.src = '/img/gal_arrow_bl.gif';
	}
}

/** schaltet die contentAd nach der ersten News
 * 
 */
function switchContentAd(){
	var ADcontainer = document.getElementById("bannerContent");
	var filled = chkAd(ADcontainer);
	
	if (ADcontainer && filled == true) {
		// Banner wird eingeblendet
		ADcontainer.style.display = "";
		document.getElementById("caLineTop").style.display = "";
		document.getElementById("caLineBot").style.display = "";
		
	}
	else {
		ADcontainer.getElementsByTagName('img')[0].style.display = "none";
	}
}

/**
 * Prueft, ob eine Bannerzone gefuellt ist, oder nicht.
 * @param {Object} ADContainer
 * @return {bool}	true bei Bannerauslieferung
 */
function chkAd(ADcontainer) {
	var chkAD = true;
	if (ADcontainer && ADcontainer.getElementsByTagName('img').length > 0) {
		if (ADcontainer.getElementsByTagName('img')[0].src.indexOf('/0.gif') != -1) {
			chkAD = false;
		}
	}
	return chkAD;
}
