// === modify nodes ===
function attachText(nodeId, txt){
	var node = document.getElementById(nodeId);
	if (!node) return false;
	var txt = txt.split('<br />');
	for(i=0; i<txt.length; i++){
		if(i==0){
			var tmp = document.createTextNode(txt[i]);
			node.appendChild(tmp);
		} else {
			var tmp = document.createElement('br');
			node.appendChild(tmp);
			if(nodeId == 'slidedescr'){
				var tmp = document.createElement('span');
				tmp.className = 'followline';
				tmp.appendChild(document.createTextNode(txt[i]));
			} else {
				var tmp = document.createTextNode(txt[i]);
			}
			node.appendChild(tmp);
		}
	}
}
function removeText(nodeId){
	var node = document.getElementById(nodeId);
	if (!node) return false;
	for(i=node.childNodes.length-1; i>=0; i--){
		//alert("_"+node.childNodes[i].nodeValue+"_");
		node.removeChild(node.childNodes[i]);
	}
}

// === slides ===

function slides_preload(){
	var pImg = new Array();
	for(i=0; i<imgs.length; i++){
		pImg[i] = new Image(); 
		pImg[i].src = imgs[i][0];
	}
}
function slides_showSlide(picid){
	if (document.getElementById && !isMacIE5) {
		if(picid != currentPicid){
			currentPicid = picid;
			// change img
			document.getElementById('slide').src = imgs[picid][0];
			// change text
			removeText('slidedescr')
			attachText('slidedescr', imgs[picid][1]);
		}
		return false;
	} else {
		return true;
	}
}
function slides_nextSlide(){
	if(currentPicid < imgs.length-1){
		return slides_showSlide(currentPicid+1)
	} else {
		return slides_showSlide(0);
	}
};
function slides_prevSlide(){
	if(currentPicid <= 0){
		return slides_showSlide(imgs.length-1)
	} else {
		return slides_showSlide(currentPicid-1);
	}

}
function slides_attachEvents(){
	if (document.getElementById) {
		var i = document.getElementById('slideLink');
		if (!i) return;
		i.onclick = slides_nextSlide;
		//
		var n = document.getElementById('slideNext');
		if (!n) return;
		n.onclick = slides_nextSlide;
		//
		var p = document.getElementById('slidePrev');
		if (!p) return;
		p.onclick = slides_prevSlide;
	}
}

// === blur links ===
function linkBlur(){
	if(this.blur)this.blur();
}
function removeLinkBorders(){
	if(document.getElementsByTagName ){
		var l = document.getElementsByTagName('a');
		for(var i=0;i<l.length;i++){
			l[i].onfocus = linkBlur;
		}
	}
}

// === teasers ===
function teasers_over(){
	var i = this.id.split('_')[1];
	attachText('teaser', teasers[i]);
	//
	document.getElementById('bigbanner').style.display = 'block';
}
function teasers_out(){
	removeText('teaser');
	//
	document.getElementById('bigbanner').style.display = 'none';

}
function teasers_attachEvents(idPrefix){
	if(document.getElementById){
		for(i=0; i<teasers.length; i++){
			var l = document.getElementById(idPrefix+'_'+i);
			l.onmouseover = teasers_over;
			l.onmouseout  = teasers_out;
		}
	}
}

// === link labels ===
function labels_over(){
	removeText('label');
	var i = this.id.split('_')[1];
	attachText('label', labels[i]);
}
function labels_out(){
	removeText('label');
	attachText('label', label_default);
}
function labels_attachEvents(idPrefix){
	if(document.getElementById && document.getElementsByTagName && !isMacIE5){
		var links = document.getElementsByTagName('a');
		for(i=0; i<links.length; i++){
			var l  = links[i];
			var id = l.id.split('_')[0];
			if(idPrefix == id){
				l.onmouseover = labels_over;
				l.onmouseout  = labels_out;
			}
		}
	}
}



// === INIT ===
function initPage(){
	// ************************************************************
	// * disable buggy IE 5.0 Mac (IE 5.1 Mac seems to work fine) *
	// ************************************************************
	isMacIE5 = false;
	if(navigator.userAgent.indexOf('MSIE 5.0') != -1 && navigator.userAgent.indexOf('Mac') != -1){
		isMacIE5 = true;
		//alert('Mac: '+navigator.userAgent);
	}
	// ********************************************************

	// = teaser =
	if(typeof teasers == 'object'){
		teasers_attachEvents('main');
	}
	// = slides =
	if(typeof imgs == 'object'){
		slides_preload();
		slides_attachEvents();
	}
	// = labels =
	if(typeof labels == 'object'){
		if(document.getElementById){
			label_default = document.getElementById('label').lastChild.nodeValue;
			labels_attachEvents('ref');
		}
	}
	
	// = remove link borders =
	removeLinkBorders();
	
}

//init
window.onload = initPage;


