
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();



function id( name )
{
	if ( document.getElementById( name ) )
	{
		return document.getElementById( name );
	}
	else
	{
		return false;
	}
}

function show( name )
{
	if ( id(name).style )
	{
		id( name ).style.display="block";
	}
}

function hide( name )
{
	if( id(name).style )
	{
		id( name ).style.display="none";
	}
}

function hide_all()
{
	//center
	hide('content_home1');
	hide('content_home2');

	//right
	hide('box_video_teaser');
	hide('box_our_partners');
	hide('box_education_kit');

}

function setColumnSize(){

	// try fängt mögliche fehlermeldungen auf, 
	// hier konkret können evtl. #id nicht vorhanden sein. 
	// http://knowledge.allianz.com/en/globalissues/microfinance/
	

	
		//alert(BrowserDetect.version);  
		if(BrowserDetect.browser=="Explorer" && BrowserDetect.version=="6"){
	
		if(!document.getElementById('bottom_left')) {
			return "";
		}
	
		// #split may not exist => usung try/catchblock 
		
		var split = document.getElementById('split').offsetTop;
		var split2 = document.getElementById('split2').offsetTop;
		var split0 = document.getElementById('ticker_hr').offsetTop;
		var footer = document.getElementById('split3').offsetTop;
	
		var teaser_bottom_left = document.getElementById('popular');
		var teaser_bottom_right = document.getElementById('bottom_right');
		var teaser_bottom_offset = document.getElementById('bottom_left').offsetTop;
		
		if(document.getElementById('top_left')) {
		var teaser_top_left = document.getElementById('top_left');
		var teaser_top_right = document.getElementById('top_right');
		var teaser_top_offset = document.getElementById('top_left').offsetTop;
		}
		
		var teaser_middle_left = document.getElementById('middle_left');
		var teaser_middle_right = document.getElementById('middle_right');
		var teaser_middle_offset = document.all.middle_right.offsetTop;
	

		difference_top = split-split0;
		difference_bottom = footer-teaser_bottom_offset;
		difference_middle = footer - teaser_middle_offset;
		
		if(document.getElementById('top_left')) {
		teaser_top_left.style["height"] = difference_top-150;
		teaser_top_right.style["height"] = difference_top-150;
		}
	
		teaser_middle_left.style["height"] = split2-split-40;
		teaser_middle_right.style["height"] = split2-split-40;
	
		teaser_bottom_right.style["height"] = difference_bottom;
		teaser_bottom_left.style["height"] = difference_bottom-2;
		}
		
}

function validateSendAuthor() {
	var message = document.getElementById('send_author').value;
	var email = document.getElementById('send_author_senderemail').value;

	if(message == '') {
		alert('Please type in a Message to the Author!');
	    return false;
	}

	if(document.getElementById('agree_1').checked == false && document.getElementById('agree_2').checked == false) {
		alert('Please check Yes or No for the statement of agreement!');
	    return false;
	}

	if (!email.match(/^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i)
			&& !(email == 'e-Mail Address') && !(email == '')){
	    alert('Please type in a valid e-Mail address or no address at all!');
	    return false;
	} else {
	    return true;
	}
}


function loadFlash ( movie, url ) {
	
	var so = new SWFObject(movie, "sotester", "326", "269", "9", "#113388");
	so.addParam("allowFullScreen", "true");
	so.addVariable("clickTag", url);
	so.write("flashcontent");
	
}

var  addthis_url   = '';
var  addthis_title = '';

function addthisPopup(obj, str) {
	var url='http://www.addthis.com/bookmark.php';
	url += '?v=10';
 	url += '&url='+encodeURIComponent(addthis_url);
 	url += '&title='+encodeURIComponent(addthis_title);
  	window.open(url,'addthis','scrollbars=yes,menubar=no,width=650,height=740,resizable=yes,toolbar=no,location=no,status=no,screenX=200,screenY=100,left=200,top=100');
  	
	return false;  	
}

function destatis(){
	window.open('http://www.destatis.de/jetspeed/portal/cms/Sites/destatis/Internet/EN/Content/Statistics/Bevoelkerung/VorausberechnungBevoelkerung/InteraktiveDarstellung/Content75/Bevoelkerungspyramide1W1,templateId=renderSVG.psml','mywindow','menubar=0,resizable=0,width=760,height=650');
	return false;
}
