var slideState = 'up';
var lockContact = false;



/*
	Developed by Robert Nyman, http://www.robertnyman.com
	Code/licensing: http://code.google.com/p/getelementsbyclassname/
*/
var getElementsByClassName = function (className, tag, elm){
	if (document.getElementsByClassName) {
		getElementsByClassName = function (className, tag, elm) {
			elm = elm || document;
			var elements = elm.getElementsByClassName(className),
				nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
				returnElements = [],
				current;
			for(var i=0, il=elements.length; i<il; i+=1){
				current = elements[i];
				if(!nodeName || nodeName.test(current.nodeName)) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	else if (document.evaluate) {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = "",
				xhtmlNamespace = "http://www.w3.org/1999/xhtml",
				namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
				returnElements = [],
				elements,
				node;
			for(var j=0, jl=classes.length; j<jl; j+=1){
				classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
			}
			try	{
				elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
			}
			catch (e) {
				elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
			}
			while ((node = elements.iterateNext())) {
				returnElements.push(node);
			}
			return returnElements;
		};
	}
	else {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = [],
				elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
				current,
				returnElements = [],
				match;
			for(var k=0, kl=classes.length; k<kl; k+=1){
				classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
			}
			for(var l=0, ll=elements.length; l<ll; l+=1){
				current = elements[l];
				match = false;
				for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
					match = classesToCheck[m].test(current.className);
					if (!match) {
						break;
					}
				}
				if (match) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	return getElementsByClassName(className, tag, elm);
};




function bh_show(id){
	if (!lockContact)
		document.getElementById(id).style.display="block";
}



function bh_hide(id){
	if (!lockContact)
		document.getElementById(id).style.display="none";
}



function introAnimation(){
	jQuery('#slideBoxes').delay(1500).animate({top: '-425'},500,setSlideState('up'));
}



function focusHero(container){
	switch (container){
		case 'construction':
			document.getElementById('heroShotOverlay-construction').style.display = 'none';
			document.getElementById('heroShotOverlay-equipment').style.display = 'block';
			document.getElementById('heroShotOverlay-service').style.display = 'block';
			document.getElementById('heroShotText-construction').style.display = 'block';
			document.getElementById('heroShotText-equipment').style.display = 'none';
			document.getElementById('heroShotText-service').style.display = 'none';
			break;
		case 'equipment':
			document.getElementById('heroShotOverlay-construction').style.display = 'block';
			document.getElementById('heroShotOverlay-equipment').style.display = 'none';
			document.getElementById('heroShotOverlay-service').style.display = 'block';
			document.getElementById('heroShotText-construction').style.display = 'none';
			document.getElementById('heroShotText-equipment').style.display = 'block';
			document.getElementById('heroShotText-service').style.display = 'none';
			break;
		case 'service':
			document.getElementById('heroShotOverlay-construction').style.display = 'block';
			document.getElementById('heroShotOverlay-equipment').style.display = 'block';
			document.getElementById('heroShotOverlay-service').style.display = 'none';
			document.getElementById('heroShotText-construction').style.display = 'none';
			document.getElementById('heroShotText-equipment').style.display = 'none';
			document.getElementById('heroShotText-service').style.display = 'block';
			break;
	}
}



function toggleSlideBoxes(){
	switch(slideState){
		case 'up':
			moveSlideBoxes('down');
			break;
		case 'down':
			moveSlideBoxes('up');
			break;
	}
}



function moveSlideBoxes(direction){
	if (slideState != direction || slideState == 'down'){	
		switch(direction){
			case 'up':
				setSlideState(direction);
				jQuery('#slideBoxes').delay(200).animate({top: '-425'},500);
				break;
			case 'down':
				setSlideState(direction)
				jQuery('#slideBoxes').delay(200).animate({top: '0'},500);
				break;
		}
	}
}



function setSlideState(direction){
	slideState = direction;
}



function toggleContactPerson(id,show){
	if (show){
		contacts = getElementsByClassName('contactInfo');
		for (i=0;i<contacts.length;i++){
			if (contacts[i].style.display == 'block')
			contacts[i].style.display = 'none';
		}
		document.getElementById(id).style.display = 'block';
		lockContact = true;
	} else {
		document.getElementById(id).style.display = 'none';
		lockContact = false;
	}
}



// JavaScript Document
function MM_swapImgRestore() { //v3.0
	var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}



function MM_preloadImages() { //v3.0
	var d=document; 
	if(d.images){ 
		if(!d.MM_p) 
			d.MM_p=new Array();
		var i,j=d.MM_p.length,a=MM_preloadImages.arguments; 
		for(i=0; i<a.length; i++)
			if (a[i].indexOf("#")!=0){ 
				d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];
			}
	}
}



function MM_findObj(n, d) { //v4.01
  	var p,i,x;  
	if(!d) 
		d=document; 
	if((p=n.indexOf("?"))>0&&parent.frames.length) {
		d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);
	}
	if(!(x=d[n])&&d.all) 
		x=d.all[n];
	for (i=0;!x&&i<d.forms.length;i++)
		x=d.forms[i][n];
  	for(i=0;!x&&d.layers&&i<d.layers.length;i++)
		x=MM_findObj(n,d.layers[i].document);
  	if(!x && d.getElementById)
		x=d.getElementById(n);
	return x;
}



function MM_swapImage() { //v3.0
	var i,j=0,x,a=MM_swapImage.arguments;
	document.MM_sr=new Array; 
	for(i=0;i<(a.length-2);i+=3)
		if ((x=MM_findObj(a[i]))!=null){
			document.MM_sr[j++]=x; 
			if(!x.oSrc) 
				x.oSrc=x.src; x.src=a[i+2];
		}
}


function setupScripts(){
	MM_preloadImages('http:/barghorn.alchemisten.de/wp-content/themes/barghorn2011/images/icon_facebook_hover.png','http:/barghorn.alchemisten.de/wp-content/themes/barghorn2011/images/icon_twitter_hover.png');
	introAnimation();
}
