function tqLanguageSelectorToggle() {
	var element = document.getElementById("t3Navigation-Language");

	if(element) {
		if( element.style.display != "inline-block" ) {
			tqLanguageSelectorShow();
		} else {
			tqLanguageSelectorHide();
		}
	}
}

function tqLanguageSelectorShow() {
	var element = document.getElementById("t3Navigation-Language");

	if(element) {
		var elementToggle = document.getElementById("t3Navigation-Language-Toggle");
		var elementHeader = document.getElementById("pageHeaderTop");

		// recalc position
		if( elementToggle && elementHeader) {
			var posX = elementToggle.offsetLeft - ( elementToggle.offsetWidth / 2);
			var posY = elementHeader.offsetTop + elementHeader.offsetHeight;
			element.style.left = posX+"px";
			element.style.top = posY+"px";
		}

		element.style.display = "inline-block";
	}
}

function tqLanguageSelectorHide() {
	var element = document.getElementById("t3Navigation-Language");

	if(element) {
		element.style.display = "none";
	}
}


function tqProductHightlightBegin(sender) {
	//$(sender).tween('background-color', ['#fff', '#000']);
}

function tqProductHightlightEnd(sender) {
	//var myFx = new Fx.Tween(sender);
	//myFx.start('background-color', '#fff');
}


var tqHeaderImageNum	= -1;
var tqHeaderImageCount	= 0;
var tqHeaderImageAutoChangeTime = 0;
var tqHeaderImageAutoChangeTimeout = false;
var tqHeaderImageEffect = false;

function tqHeaderImageInit(imageCount, autoChangeTime) {
	tqHeaderImageCount = imageCount;

	tqHeaderImageShow(0);

	if(autoChangeTime >= 100) {
		tqHeaderImageAutoChangeTime = autoChangeTime;
		tqHeaderImageAutoChangeReset();
	}

	window.setTimeout(tqHeaderImageAutoSizeFix, 1000);
}

function tqHeaderImageAutoChangeStop() {
	window.clearTimeout(tqHeaderImageAutoChangeTimeout);
}

function tqHeaderImageAutoChangeReset() {
	tqHeaderImageAutoChangeStop();

	if(tqHeaderImageAutoChangeTime) {
		tqHeaderImageAutoChangeTimeout = window.setTimeout(tqHeaderImageAutoChange, tqHeaderImageAutoChangeTime);
	}
}

function tqHeaderImageAutoSizeFix() {
	window.setTimeout(tqHeaderImageAutoSizeFix, 2500);
	tqHeaderImageFixHeight();
}

function tqHeaderImageAutoChange() {
	tqHeaderImageShowNext();
	tqHeaderImageAutoChangeReset();
}

function tqHeaderImageShowNext() {
	var showId = tqHeaderImageNum+1;

	if( showId >= tqHeaderImageCount) {
		showId = 0;
	}

	tqHeaderImageShow(showId);
}

function tqHeaderImageShowPrev() {
	var showId = tqHeaderImageNum-1;

	if( showId < 0) {
		showId = tqHeaderImageCount-1;
	}

	tqHeaderImageShow(showId);
}


function tqHeaderImageShow(id) {
	tqHeaderImageAutoChangeReset();

	if( id <= 0 ) {
		id = 0;
	}

	if( id >= tqHeaderImageCount) {
		id = (tqHeaderImageCount-1);
	}
	if(tqHeaderImageNum == id) {
		// current image
		return;
	}

	var imageElement = $("t3HeaderImage_"+id);
	var descElement = $("t3HeaderImage_"+id+"_desc");
	var toggleElement = $("t3HeaderImageToggle_"+id);

	if(tqHeaderImageNum != id) {
		tqHeaderImageHideAll(tqHeaderImageNum);
	} else {
		tqHeaderImageHideAll(-1);
	}

	// show image
	if(imageElement) {
		try {
			//imageElement.setStyle("display", "block");
			imageElement.fade("in");

			//var imageEffect = new Fx.Fade(imageElement);
			//imageEffect.start(0,100);

			//imageElement.tween("opacity", 0, 100);

			/*

			tqHeaderImageEffect = imageElement.get('tween', {
				property: 'opacity',
				duration: 2000,
				link: 'wait',
				transition: Fx.Transitions.Quint.easeIn }).start(0,100);
			*/
			//imageElement.fx.effect('opacity', {duration: 2000}).start(1);
			//imageElement.get('tween', {property: 'opacity', duration: 'long'}).start(100);

			tqHeaderImageNum = id;
			tqHeaderImageFixHeight();

		} catch(e) { }
	}

	if(toggleElement) {
		try {
			toggleElement.addClass("t3HeaderImageToggle-Active");
		} catch(e) { }
	}

	if(descElement) {
		try {
			$("t3HeaderImageBarDesc").innerHTML = descElement.innerHTML;
		} catch(e) { }
	}
}

function tqHeaderImageFixHeight() {
	var imageElement = $("t3HeaderImage_"+tqHeaderImageNum);
	if(imageElement) {
		var imageSize = imageElement.getSize();
		$("t3HeaderImageWrapper").setStyle("height", imageSize.y);
		$("t3HeaderImageNavLeft").setStyle("height", imageSize.y-36);
		$("t3HeaderImageNavRight").setStyle("height", imageSize.y-36);

		$("t3HeaderImageNavLeftBackground").setStyle("height", imageSize.y-36);
		$("t3HeaderImageNavRightBackground").setStyle("height", imageSize.y-36);
	}
}

function tqHeaderImageHideAll(hideImageId) {
	var count = 0;

	while(1) {

		var imageElement = $("t3HeaderImage_"+count);
		var toggleElement = $("t3HeaderImageToggle_"+count);

		if(toggleElement) {
			try {
				toggleElement.removeClass("t3HeaderImageToggle-Active");
			} catch(e) { }
		}

		if(imageElement) {
			try {
				if( imageElement.id == "t3HeaderImage_"+hideImageId ) {
					imageElement.fade("out");
				} else {
					imageElement.fade("hide");
				}
			} catch(e) { }
		} else {
			return;
		}

		count++;
	}
}

function tqHeaderImageMouseOver() {
	tqHeaderImageAutoChangeStop();
}

function tqHeaderImageMouseOut() {
	tqHeaderImageAutoChangeReset();
}

function tqHeaderImageFadeIn(sender) {
	if(sender) {
		$(sender).getElement("div").fade("in");
	}
}

function tqHeaderImageFadeOut(sender) {
	if(sender) {
		$(sender).getElement("div").fade("out");
	}
}


tqKueffnerProduct2HighlightTimer = {};
function tqKueffnerProduct2HighlightStart(sender, id) {
	if(tqKueffnerProduct2HighlightTimer[id]) {
		window.clearTimeout(tqKueffnerProduct2HighlightTimer[id]);
	}

	var hoverElement = $("tqKueffnerProdukt-Single-HoverDesc-"+id);

	if( !hoverElement ) {
		return;
	}

	var callback = function() {
		hoverElement.fade("in");
		tqKueffnerProduct2HighlightTimer[id] = false;
	}



	tqKueffnerProduct2HighlightTimer[id] = window.setTimeout(callback, 750);

	// set position (left/right)
	if( hoverElement.getPosition().x > 900 ) {
		hoverElement.addClass("tqKueffnerProdukt-Single-HoverDesc-Right");
	}
}

function tqKueffnerProduct2HighlightEnd(sender, id) {
	if(tqKueffnerProduct2HighlightTimer[id]) {
		window.clearTimeout(tqKueffnerProduct2HighlightTimer[id]);
	}

	var element = $("tqKueffnerProdukt-Single-HoverDesc-"+id);

	if( element ) {

		var callback = function() {
			if(element) {
				element.fade("out")
			}
		}

		tqKueffnerProduct2HighlightTimer[id] = window.setTimeout(callback, 100);
	}
}


function t3KueffnerInformationBoxToggle(sender) {
	var newValue = sender.checked;

	var elementWrapper = document.getElementById("t3KueffnerMailformInformationBoxes");
	if( !elementWrapper ) {
  		return;
	}

	var elementList = elementWrapper.getElementsByTagName("input");
	if( !elementList ) {
  		return;
	}

	var elementListLength = elementList.length;
	for(var i=0; i < elementListLength; i++) {
		var currElement = elementList[i];
		currElement.checked = newValue;
	}
}