/*
* RBB Antenne Brandenburg
* standard.js
* 
* Author: Tino Urbiks, Holger M. Stangl
* Date: September 2007
*/

var imgHeight = 180;

window.onload = new Function("blurLinks();");

function blurLinks() {
	var aTags = document.getElementsByTagName('a');
	for ( i=0; i < aTags.length; i++ )
	{
		var Fokus = document.createAttribute("onfocus");
		Fokus.nodeValue = "if(this.blur)this.blur()";
		document.getElementsByTagName("a")[i].setAttributeNode(Fokus);
	}
}



function openWindow(placement,url,name,width,height)
{
    
	if (placement=='top')
    {
    	var x=(screen.width - screen.width);
   		var y=(screen.height - screen.height);
    }
    else if (placement=='center')
    {
    	var x=((screen.width - width) / 2);
    	var y=((screen.height - height) /2);
    }
    
	var popupWindow = window.open(url,name,'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width='+width+',height='+height+',left='+x+',top='+y);
	popupWindow.focus();
	
}

function openWindowFromNav(handle,name,width,height,scrollbar)
{
	var url = externalize(handle) + '.html';
    
   	var x=((screen.width - width) / 2);
   	var y=((screen.height - height) /2);
    
	var popupWindow = window.open(url,name,'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=' + (scrollbar ? 'yes' : 'no') +',resizable=no,width='+width+',height='+height+',left='+x+',top='+y);
	popupWindow.focus();
}

function openQuizMediaBox(handle, qualident) {
	var url = externalize(handle);
	openWindow('center', url + '.module.start_quizmediapopup.quali.' + qualident + '.html', 'quizmediabox', 580, 490);
}


function mediaboxbildergalerie(handle) {
	openWindow('center', externalize(handle) + '.html', 'mediabox', 596, 580);
}

function mediaboxaudio(handle) {
	var url = externalize('/content/rbb/ant/mediabox/audio');
	openWindow('center', url + '.media.'+handle+'.html', 'mediabox', 596, 580);
}

function mediaboxvideo(handle) {
	var url = externalize('/content/rbb/ant/mediabox/video');
	openWindow('center', url + '.media.'+handle+'.html', 'mediabox', 596, 580);
}

function mediabox() {
	var url = externalize('/content/rbb/ant/mediabox');
	openWindow('center', url + '.html', 'mediabox', 596, 580);
}

function zoomIn( id, area, smallSrc, bigSrc ) 
{
	document.getElementById('zoomTeaserImg'+id).src = bigSrc;
	document.getElementById('zoomTeaserImgBox'+id).style.width = "40em";
	
	if (area == "teaser" || area == "imageBox" || area == "teaserForm")
	{
		document.getElementById('zoomTeaserImg'+id).style.width = "40em";
	} 
	else if (area == "portrait" || area == "teaserCD" || area == "imageBoxB")
	{
		document.getElementById('zoomTeaserImg'+id).style.width = "30em";
		document.getElementById('zoomTeaser'+id).style.width = "40em";
	}
	else if (area == "teaserCD")
	{
		document.getElementById('zoomTeaserImg'+id).style.width = "30em";
		document.getElementById('zoomTeaser'+id).style.width = "30em";
	}
	else if (area == "teaserFormB")
	{
		document.getElementById('zoomTeaserImg'+id).style.width = "30em";
	}
	
	if (area == "teaser" || area == "teaserCD" || area == "portrait")
	{
		document.getElementById('zoomTeaserImgBox'+id).style.float = "none";
		
		if (BrowserDetect.browser=="Explorer" && BrowserDetect.version=="7")
		{
			document.getElementById('zoomTeaserTextBox'+id).style.width = "38em";
		} else {
			document.getElementById('zoomTeaserTextBox'+id).style.width = "38em";
		}
		document.getElementById('zoomTeaserTextBox'+id).style.height = "auto";
		document.getElementById('zoomTeaserTextBox'+id).style.float = "none";
		
		document.getElementById('zoomTeaserText'+id).style.position = "relative";
		document.getElementById('zoomTeaserText'+id).style.bottom = "0";
	}
	
	if (area == "imageBox" || area == "imageBoxB")
	{
		document.getElementById('zoomTeaser'+id).style.width = "40em";
	}
	
	var linkobj = document.getElementById('zoomTeaserLink'+id);
	linkobj.style.backgroundImage = "url(" + externalize("/grafik/icons/icon_minus.gif") +")";
	linkobj.href = "javascript:zoomOut(" + id + ", '" + area + "', '" + smallSrc + "', '" + bigSrc + "');";
	linkobj.title = "Verkleinern";
}


function zoomOut( id, area, smallSrc, bigSrc ) 
{

	document.getElementById('zoomTeaserImg'+id).src = smallSrc;
	
	if (area == "teaser" || area == "teaserCD" || area == "portrait")
	{
		document.getElementById('zoomTeaserImgBox'+id).style.float = "left";
		
		document.getElementById('zoomTeaserTextBox'+id).style.float = "right";
		
		document.getElementById('zoomTeaserText'+id).style.position = "absolute";
		document.getElementById('zoomTeaserText'+id).style.bottom = "1em";
	}
	
	if (area == "teaser")
	{
		document.getElementById('zoomTeaserImg'+id).style.width = "20em";
		document.getElementById('zoomTeaserImgBox'+id).style.width = "20em";
		document.getElementById('zoomTeaserTextBox'+id).style.width = "18em";
		document.getElementById('zoomTeaserTextBox'+id).style.height = "13.3em";
	}
	
	if (area == "portrait")
	{
		document.getElementById('zoomTeaserImg'+id).style.width = "16em";
		document.getElementById('zoomTeaserImgBox'+id).style.width = "16em";
		if (BrowserDetect.browser=="Explorer" && BrowserDetect.version=="7")
		{
			document.getElementById('zoomTeaserTextBox'+id).style.width = "21.7em";
		} else {
			document.getElementById('zoomTeaserTextBox'+id).style.width = "22em";
		}
		if (!imgHeight) imgHeight = 180;
		document.getElementById('zoomTeaserTextBox'+id).style.height = ((imgHeight/10)-2) + "em";
	}
	
	if (area == "teaserCD")
	{
		document.getElementById('zoomTeaserImg'+id).style.width = "16em";
		document.getElementById('zoomTeaserImgBox'+id).style.width = "16em";
		if (BrowserDetect.browser=="Explorer" && BrowserDetect.version=="7")
		{
			document.getElementById('zoomTeaserTextBox'+id).style.width = "21.7em";
			document.getElementById('zoomTeaserTextBox'+id).style.height = "14.4em";
		} else {
			document.getElementById('zoomTeaserTextBox'+id).style.width = "22em";
			document.getElementById('zoomTeaserTextBox'+id).style.height = "14.3em";
		}
	}
	
	if (area == "imageBox" || area == "imageBoxB")
	{
		document.getElementById('zoomTeaser'+id).style.width = "16em";
		document.getElementById('zoomTeaserImg'+id).style.width = "16em";
		document.getElementById('zoomTeaserImgBox'+id).style.width = "16em";
	}
	
	if (area == "teaserForm" || area == "teaserFormB")
	{
		document.getElementById('zoomTeaserImgBox'+id).style.width = "16em";
		document.getElementById('zoomTeaserImg'+id).style.width = "16em";
	}
	
	var linkobj = document.getElementById('zoomTeaserLink'+id);
	linkobj.style.backgroundImage = "url(" + externalize("/grafik/icons/icon_plus.gif") +")";
	linkobj.href = "javascript:zoomIn(" + id + ", '" + area + "', '" + smallSrc + "', '" + bigSrc + "');";
	linkobj.title = "Vergrößern";

}



var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();

