fnCallback = function(el) {
	var searchForm = $D.get(this.form);
	searchForm.value = this.keywords;
}

function updateSearchInputField(form, keywords) {
	this.form = form;
	this.keywords = keywords;
	YAHOO.util.Event.onAvailable(form, this.fnCallback, this, true)	
}

if (!YAHOO.hmmh) YAHOO.namespace("hmmh.Bilderstapel");
YAHOO.hmmh.Bilderstapel = function() {
	var liste, bilderstapels = [];
	return {
		init : function() { 
			var $IE = (YAHOO.env.ua.ie >0);
			liste = $D.get("liste");
			if($D.hasClass(liste,"l")) {
				stackWidth = $IE ? 198 : 195;
			} else if($D.hasClass(liste,"s")) {
				stackWidth = $IE ? 72 : 66;
			} else {
				stackWidth = $IE ? 160 : 145;
			}
			bilderstapels = $D.getElementsByClassName( "bilderstapel" , "li" , liste);
			for ( var i=0, j=bilderstapels.length; i<j;  i++ ) {
				stapelumschalter = $D.getElementsByClassName( "stapel" , "span" , bilderstapels[i]);
				$E.on( stapelumschalter[0], "click", this.stapelUmschalten, bilderstapels[i]); 
			}
		}, 
		stapelUmschalten : function(ev, obj) {
			if(YAHOO.hmmh.kaufenlayerBilder) {
				YAHOO.hmmh.kaufenlayerBilder.hidePanelLayer(ev);
			}
			if($D.hasClass(liste,"s")) {
				$D.setStyle(this,'background-image','url(img/overlay_set_inaktiv_small.gif)');
			} else {
				$D.setStyle(this,'background-image','url(img/overlay_set_inaktiv.gif)');
			}
			var versteckteBilder = $D.getElementsByClassName( "overlay-set" , "span" , obj);
			var bildMarker = $D.getElementsByClassName( "eselohr" , "img" , obj);
			versteckteBilder = versteckteBilder[0].firstChild.nodeValue;
			var tempObj = $D.getNextSibling(obj);
			if ($D.hasClass(obj, "stackopen")) {
				$D.removeClass(obj, "stackopen");
				$D.setStyle(bildMarker,'background-color','#ffffff');
				for(i=0;i<versteckteBilder-1;i++) {
					var tempObj = $D.getNextSibling(obj);
					$D.setStyle(tempObj,"display","none");
					$D.setStyle(tempObj,"opacity",0);
					$D.setStyle(tempObj,"width",0);
					obj = tempObj;
				}
			YAHOO.hmmh.teaserRegion.init();	
			} else {
				$D.addClass(obj, "stackopen");
				$D.setStyle(bildMarker,'background-color','#eeeeee');
				if($D.hasClass(liste,"s")) {
					$D.setStyle(this,'background-image','url(img/overlay_set_aktiv_small.gif)');
				} else {
					$D.setStyle(this,'background-image','url(img/overlay_set_aktiv.gif)');
				}
				for(i=0 ;i<versteckteBilder-1;i++) {
					var tempObj = $D.getNextSibling(obj);
					var animFirst =  new $A(tempObj, {width:{to: stackWidth}},0.2,YAHOO.util.Easing.easeOut);
					var animSecond = new YAHOO.util.ColorAnim( tempObj, {opacity: {from: 0, to: 1}},0.4);
					
					animFirst.animate();
					animSecond.animate();
					animFirst.onComplete.subscribe(YAHOO.hmmh.teaserRegion.init)
					$D.setStyle(tempObj,"display","block");
					obj = tempObj;
					if (i == versteckteBilder-2) {
						$D.setStyle(tempObj,"border-right","1px solid #ccc");
						//$D.setStyle(tempObj,"margin-right","10px");
					}
				}
			}
			$E.stopEvent(ev);
		}
	};
}();
if(YAHOO.env.ua.ie >0) {
	$E.onContentReady("footer",YAHOO.hmmh.Bilderstapel.init, YAHOO.hmmh.Bilderstapel, true);
}
else {
	$E.on(window, "load", YAHOO.hmmh.Bilderstapel.init, YAHOO.hmmh.Bilderstapel, true);
}

if (!YAHOO.hmmh) YAHOO.namespace("hmmh.resizeImageTabsResult");
YAHOO.hmmh.resizeImageTabsResult = function() {
	
	return { 
		init: function() {
			if(YAHOO.util.Selector.query("dl#searchResultAccordion ol#liste").length > 0) return false;
			var hiddenElements = [];
			var newNodes = [];
			var imageTabHolder = $D.get('tabholderRight');
			var getImageTabs = $D.getElementsByClassName('imagetab');
			var getTabsHolderLeft = $D.getElementsByClassName('tabholderLeft');
			
			if(getTabsHolderLeft.length < 1) {
				return;
			}
			
			var getTabsHolderLeftWidth = getTabsHolderLeft[0].offsetWidth;
			var getTabsHolderRight = $D.getElementsByClassName('tabholderRight');
			var getTabsHolderRightWidth = getTabsHolderRight[0].offsetWidth;
			var getImageTabs = $D.getElementsByClassName('imagetab');
			var allTabsWidth = getImageTabs.length * 48;
			var realTabsWidth = getTabsHolderRightWidth;
			var tabsToHide = Math.ceil((allTabsWidth-realTabsWidth)/48);
			
			if (allTabsWidth > realTabsWidth) {
				if ($D.get("moreTab")) {return}
				var moreTab = document.createElement('li');
		        moreTab.innerHTML = "<li id='moreTab'><a href='javascript:;'>...</a></li>";
				$D.insertBefore(moreTab.childNodes[0],getImageTabs[0]);
				$E.on("moreTab", 'click', YAHOO.hmmh.resizeImageTabsResult.showHiddenTabLayer, true)
				for( var i=0,j=tabsToHide; i<j+1 ; i++ ) {
					hiddenElements.push(getImageTabs[i]);
					$D.addClass(getImageTabs[i],"hiddenTab");
        		}
				var nodes = YAHOO.util.Selector.query('ul li.hiddenTab');
				for( var i=0; nodes[i]; i++ ){
					var lastChild = nodes[i].childNodes.length-1;
					nodes[i].removeChild(nodes[i].lastChild)
					elementStyles = $D.setStyle(nodes[i].firstChild,"overflow","visible");
					elementStyles = $D.setStyle(nodes[i].firstChild,"width","");
					elementStyles = $D.setStyle(nodes[i].firstChild,"height","");
					newNodes.push(nodes[i].innerHTML)
				}
				hiddenTabLayer = new YAHOO.widget.Panel("hiddenTabLayer", 
					{ 
					    close: false,  
					    visible: false,  
					    draggable: false,
					    zindex: "125"
					} 
				);
				newNodes = newNodes.join("");
				hiddenTabLayer.setBody(newNodes);
			} 
			else {
				
				if ($D.get("moreTab")) {
					var moreTab = $D.get("moreTab");
					var hiddenMoreTab = moreTab.parentNode();
					$D.setStyle("moreTab","display","none");
					for( var i=0; getImageTabs[i]; i++ ){
						$D.removeClass(getImageTabs[i],"hiddenTab");
					}
				}
			}
			
			$D.setStyle(imageTabHolder,"visibility","visible"); // show tab layer AFTER rearranging it (performance)
		},
		showHiddenTabLayer: function(){ 
			hiddenTabLayer.render();
			hiddenTabLayer.cfg.setProperty('context',['moreTab', 'tl', 'bl'])
			hiddenTabLayer.show();
			YAHOO.util.Event.removeListener("moreTab",'click');
			$E.on("moreTab", 'click', YAHOO.hmmh.resizeImageTabsResult.hideHiddenTabLayer, true);
		},	
		hideHiddenTabLayer : function (e) {
			hiddenTabLayer.hide();
			YAHOO.util.Event.removeListener("moreTab",'click');
			$E.on("moreTab", 'click', YAHOO.hmmh.resizeImageTabsResult.showHiddenTabLayer, true);
			/*
			var elTarget = YAHOO.util.Event.getTarget(e);	
			if(document.getElementById("hiddenTabLayer")) {
				if (elTarget.parentNode.getAttribute("class") != "moreTab") {
					hiddenTabLayer.hide();
				}
			}
			*/
		},	
				
		getText: function(node){ 
			if(!node.hasChildNodes()){return false;}
			var reg=/^\s+$/;
			var tempObj=node.firstChild;
			while(tempObj.nodeType!=3 && tempObj.firstChild!=null || reg.test(tempObj.nodeValue)){
				tempObj=tempObj.firstChild;
			}
			return tempObj;
		}	
	};
}();
YAHOO.util.Event.onAvailable("liste", YAHOO.hmmh.resizeImageTabsResult.init, YAHOO.hmmh.resizeImageTabsResult, true);
$E.on(window, 'resize', YAHOO.hmmh.resizeImageTabsResult.init, YAHOO.hmmh.resizeImageTabsResult, true);

if (!YAHOO.hmmh) YAHOO.namespace("hmmh.teaserRegion");
YAHOO.hmmh.teaserRegion = function() {
	return { 
		init: function() {
			if($D.getElementsByClassName("fontTeaserBox").length <= 1) return;
			//if($D.getStyle("erweitertesuche", "display")!= "none") return;
			var firstElement = 0;
			var elementCounter = 1;
			var teaserRegion = $D.getRegion("teaserFloatId").left;
			var elementId = document.getElementById("liste");
			if(!elementId) return;
			if($D.hasClass(elementId,"agenciesResult")) {return;}
			var holeAlleBilder = elementId.getElementsByTagName("li");
			for (i=0, j=holeAlleBilder.length; i<j; i++ ) {
				$D.setStyle(holeAlleBilder[i],"clear","none");
				var pictureRightPosition = $D.getRegion(holeAlleBilder[i]).right;
				/* Teaserfloat ** It`s magic ** */
				if((pictureRightPosition >= teaserRegion)&&(elementCounter <= 1) && (firstElement == 0)) {
					var nachbarElement = $D.getNextSibling(holeAlleBilder[i]);
					var nachbarElementRegion = $D.getRegion(nachbarElement).right;
					$D.setStyle(holeAlleBilder[i],"clear","left");
					//$D.setStyle(nachbarElement,"background-color","orange");
					firstElement = 1;
				}
				else if ((pictureRightPosition >= teaserRegion)&&(elementCounter <= 1) && $D.hasClass(holeAlleBilder[i],"additional")) {
					var nachbarElement = $D.getNextSibling(holeAlleBilder[i]);
					var nachbarElementRegion = $D.getRegion(nachbarElement).right;
					elementCounter++;
					/* $D.setStyle(holeAlleBilder[i],"background-color","red"); */
					/*$D.setStyle(holeAlleBilder[i],"margin-top","9px");
					$D.setStyle(holeAlleBilder[i],"margin-bottom","-2px"); */
					if (nachbarElementRegion > teaserRegion) {
						/* $D.setStyle(nachbarElement,"background-color","orange") */
						/* $D.setStyle(nachbarElement,"margin-top","9px"); */
						$D.setStyle(nachbarElement,"margin-bottom","9px");
						i++
					}
				} 
				else {
					/* $D.setStyle(holeAlleBilder[i],"background-color","lime"); */
					$D.setStyle(holeAlleBilder[i],"margin-top","");
					$D.setStyle(holeAlleBilder[i],"margin-bottom","");
				}
			}	
		}
	};
}();
$E.on(window, 'load', YAHOO.hmmh.teaserRegion.init, YAHOO.hmmh.teaserRegion, true);
$E.on(window, 'resize', YAHOO.hmmh.teaserRegion.init, YAHOO.hmmh.teaserRegion, true);

