//globals
var maxTeaserPerPage = 5;
var currentPage = 1;
var teaserPages = 1;

function blurLink(object) {	
	object.blur();
}

function init() {
	
	orgCTables();
	headNavHigh();
	orgProductFields();
	orgTeaser();
	setShadows();
}


function orgCTables() {
	
	var tables = document.getElementsByTagName('TABLE');
	if(tables == null) { return false; }
	
	for(var i=0; i<tables.length; i++) {	
		if(tables[i].className == "contenttable") {		
			tagTable(tables[i]);
		}
	}
}

function tagTable(tableObj) {

	var rows = tableObj.getElementsByTagName('TR');
	var fields=null;
	var i=0,last=0;
	
	for(i=0; i<rows.length; i++) {
		if(i%2 == 0) { rows[i].className = "even"; } else { rows[i].className = "odd"; }
		fields = rows[i].getElementsByTagName('TD');
		if(fields==null || fields.length == 0) { 
			fields = rows[i].getElementsByTagName('TH');
			if(fields == null) { continue; }
		}
		last = fields.length;
		if(last>0) {
			fields[0].className = "first";
			fields[(last-1)].className = "last";		
		}
	}
}

function headNavHigh() {
	
	var headNav = null;
	var navButtons = null;
	var i = 0;
	
	headNav= document.getElementById('topmenu');
	if(headNav == null) { return false; }
	navButtons = headNav.getElementsByTagName('DIV');
	if(navButtons == null || navButtons.length == 0) { return false; }
	
	addClass(navButtons[0],"high");
	addClass(navButtons[1],"high");
	addClass(navButtons[2],"lhigh");
	
}

function addClass(elem,newclass) {	
	elem.className = elem.className + " " + newclass;
}

function setShadows() {
	
	var main = null; 
	var head = null; 
	var backgrounded = null;
	var shadowLeft = document.createElement('DIV');
	var shadowRight = document.createElement('DIV');
	var shadowBottom = document.createElement('DIV');	
	var height = 0
	
	main = document.getElementById('main');
	head = document.getElementById('head');
	backgrounded = document.getElementById('backgrounded');
	
	if(main == null || head == null || backgrounded == null) { return false; }
	
	height = head.offsetHeight + backgrounded.offsetHeight;
	shadowLeft.id = "shadow_left";
	shadowLeft.style.height = height + "px";
	shadowRight.id = "shadow_right";
	shadowRight.style.height = height - 25 + "px";
	shadowBottom.id = "shadow_bottom";
	main.insertBefore(shadowLeft,head);
	main.insertBefore(shadowRight,head);
	main.appendChild(shadowBottom);
}

function reSetShadows() {	
	
	var head = null
	var backgrounded = null;	
	var shadowLeft = null;
	var shadowRight = null;
	var height = 0
	
	head = document.getElementById('head');
	backgrounded = document.getElementById('backgrounded');
	
	if(head == null || backgrounded == null) { return false; }
	
	height = head.offsetHeight + backgrounded.offsetHeight;
	shadowLeft = document.getElementById('shadow_left');
	shadowRight = document.getElementById('shadow_right');
	
	if(shadowLeft == null || shadowRight == null) { return false; }
	shadowLeft.style.height = height + "px";
	shadowRight.style.height = (height - 25) + "px";
		
}

function popup(url) {

	window.open(url,'_blank','height=500px,width=630px,scrollbars=yes');
}


function arrayAdd(arr,val) {
	
	arr[(arr.length)] = val;
	return arr;
}

function showAppointments(id) {
	
	var appnews = null;
	var elements = null;
	var i = 0;
			
	appnews = document.getElementById(id);
	if(appnews == null) { return false; }
	
	elements = appnews.getElementsByTagName('H1');
	if(elements == null || elements.length == 0) { return false; }
	elements[0].className = "news";
	elements[1].className = "appointments high";
	
	elements = appnews.getElementsByTagName('DIV');
	if(elements == null || elements.length == 0) { return false; }
	
	for(i=0; i<elements.length; i++) {
	
		if(elements[i].className == "newsHead") {
			elements[i].style.backgroundImage = 'url("templates/images/box_rechtsaktiv.gif")';
		}
		
		if(elements[i].className.match(/\sappointments/)) {
			elements[i].style.display = "block";
		}
		if(elements[i].className.match(/\snews/)) {
			elements[i].style.display = "none";
		}
	}
	reSetShadows();
}

function showNews(id) {
	
	var appnews = null;
	var elements = null;
	var i = 0;
		
	appnews = document.getElementById(id);
	if(appnews == null) { return false; }
	
	elements = appnews.getElementsByTagName('H1');
	if(elements == null || elements.length == 0) { return false; }
	elements[0].className = "news high";
	elements[1].className = "appointments";
	
	
	elements = appnews.getElementsByTagName('DIV');
	if(elements == null || elements.length == 0) { return false; }
		
	for(i=0; i<elements.length; i++) {	
		
		if(elements[i].className == "newsHead") {
			elements[i].style.backgroundImage = 'url("templates/images/box_linksaktiv.gif")';
		}
		if(elements[i].className.match(/\snews/)) {
			elements[i].style.display = "block";
		}
		if(elements[i].className.match(/\sappointments/)) {
			elements[i].style.display = "none";
		}
	}
	reSetShadows();
}

function orgProductFields() {
	
	var inno = null;
	var asse = null;
	var prop = null;
	var bene = null;
	var content = null
	var navelem = null;
	var elem = null;
	var title = null;
	
	content = document.getElementById('content');
	if(content == null) { return false; }
	
	inno = document.getElementById('innovation');
	asse = document.getElementById('assembly');
	prop = document.getElementById('properties');
	bene = document.getElementById('benefits');
	
	if(inno == null || asse == null || prop == null || bene == null) { return false; }
	
	navelem = document.createElement('DIV');
	navelem.id = "switcher";
	
	asse.style.display = "none";	
	prop.style.display = "none";
	bene.style.display = "none";
	
	elem = document.createElement('A');
	elem.id = "swInnovation"
	elem.className = "high";
	elem.href="javascript:triggerSwitch('innovation','"+elem.id+"');";	
	title = inno.getElementsByTagName('H1')[0].innerHTML;
	if(title == null) { title == ""; }
	elem.innerHTML = title;	
	navelem.appendChild(elem);
	
	elem = document.createElement('A');
	elem.id = "swAssembly";
	elem.href="javascript:triggerSwitch('assembly','"+elem.id+"');";	
	title = asse.getElementsByTagName('H1')[0].innerHTML;
	if(title == null) { title == ""; }
	elem.innerHTML = title;
	navelem.appendChild(elem);
	
	elem = document.createElement('A');
	elem.id = "swProperties";
	elem.href="javascript:triggerSwitch('properties','"+elem.id+"');";	
	title = prop.getElementsByTagName('H1')[0].innerHTML;
	if(title == null) { title == ""; }
	elem.innerHTML = title;
	navelem.appendChild(elem);
	
	elem = document.createElement('A');
	elem.id = "swBenefits";
	elem.href="javascript:triggerSwitch('benefits','"+elem.id+"');";	
	title = bene.getElementsByTagName('H1')[0].innerHTML;
	if(title == null) { title == ""; }
	elem.innerHTML = title;
	navelem.appendChild(elem);
	
	content.insertBefore(navelem,inno);
}

function triggerSwitch(htmlid,elemid) {
	
	var htmlelem = null;
	var switcher = null;
	var switches = null;
	var button = null;
	
	var i=0;
	
	htmlelem = document.getElementById(htmlid);
	switcher = document.getElementById('switcher');
	button = document.getElementById(elemid);
	
	if(htmlelem == null || switcher == null ) { return false; }
	
	switches = switcher.getElementsByTagName('A');
	for(i=0; i<switches.length; i++) { switches[i].className = ""; }
	button.className = "high";
	
	inno = document.getElementById('innovation');
	asse = document.getElementById('assembly');
	prop = document.getElementById('properties');
	bene = document.getElementById('benefits');
	
	if(inno == null || asse == null || prop == null || bene == null) { return false; }
	inno.style.display = "none";
	asse.style.display = "none";
	prop.style.display = "none";
	bene.style.display = "none";
	
	htmlelem.style.display = "block";
}

function orgTeaser() {
	
	var teatable = null;
	var teasers = null;
	var content = null;
	var pagenum = 0;	
	var i=0;
	var pgSwitch = null;
	var elem = null;
		
	teatable = document.getElementById('product-teasers');
	content = document.getElementById('content');
	if(teatable == null || content == null) { return false; }
	
	teasers = teatable.getElementsByTagName('TR');
	if(teasers == null || teasers.length == 0) { return false; }
	
	if(teasers.length > maxTeaserPerPage) {
				
		for(i=maxTeaserPerPage; i<teasers.length; i++) {
			teasers[i].style.display = "none";
		}
		
		pagenum = Math.floor(teasers.length / maxTeaserPerPage);
		teaserPages = pagenum +1;
		pgSwitch = document.createElement('DIV');
		pgSwitch.id = "pgSwitch";
		
		elem = document.createElement('A');
		elem.innerHTML = "<img src='templates/images/pfeil_links.gif' alt='prev'> ";
		elem.href = "javascript:switchTeasers('prev');";
		elem.style.display = "none";
		pgSwitch.appendChild(elem);
		
		for(i=0; i<=pagenum; i++) {
			elem = document.createElement('A');
			elem.className = "psw";
			if(i==0) { elem.className = "psw high"; }
			elem.name = "psw_" + i;			
			elem.href = "javascript:showTeasers(" + (i+1) +");";
			elem.innerHTML = i+1;
			pgSwitch.appendChild(elem);
			if(i<pagenum) {
				elem = document.createTextNode(" | ");
				pgSwitch.appendChild(elem);
			}
		}	
		
		elem = document.createElement('A');
		elem.innerHTML = " <img src='templates/images/pfeil_rechts.gif' alt='next'>";
		elem.href = "javascript:switchTeasers('next');";		
		pgSwitch.appendChild(elem);
		
		content.insertBefore(pgSwitch,teatable);
		currentPage = 1;
	}
}

function showTeasers(page) {
	
	var teatable = null;
	var teasers = null;
	var i = 0;
	var start = 0;
	var stop = 0;
	var teaserPanel = null;
	var teaserButtons = null;
	
	start = ((page -1) * maxTeaserPerPage);
	stop = (page * maxTeaserPerPage) -1
	
	teatable = document.getElementById('product-teasers');	
	if(teatable == null) { return false; }	
	
	teasers = teatable.getElementsByTagName('TR');
	if(teasers == null || teasers.length == 0) { return false; }
	
	for(i=0; i<teasers.length; i++) {
		if(i<start || i>stop) { 
			teasers[i].style.display = "none";
		}
		else { teasers[i].style.display = ""; }
	}	
	
	teaserPanel = document.getElementById('pgSwitch');
	if(teaserPanel == null) { return false; }
	
	teaserButtons = teaserPanel.getElementsByTagName('A');
	if(teaserButtons == null || teaserButtons.length == 0) { return false; }
	for(i=0; i<teaserButtons.length; i++) {
		if(teaserButtons[i].name == ("psw_"+(page - 1))) {
			teaserButtons[i].className = "psw high";
		}
		else { teaserButtons[i].className = "psw"; }
	}
	currentPage = page;
	if(currentPage == 1) {  
		teaserButtons[0].style.display = "none";
	} else { teaserButtons[0].style.display = ""; }
	
	if(currentPage == teaserPages) { 
		teaserButtons[(teaserPages +1)].style.display = "none";		
	} else { teaserButtons[(teaserPages +1)].style.display = ""; }
}

function switchTeasers(direction) {
	
	var page = 0;
	
	if(direction == "next") { page = currentPage +1; }
	if(direction == "prev") { page = currentPage -1; }
	showTeasers(page);
}
