


function  displayNewTimespan(val){
	days = Math.ceil(val / 140 * loaddays)+1;
	//alert(val);
	
	timespandaysnode.nodeValue = days;
	showdays = days;

	for(d=0; d<daynodes.length; d++){
		if(d<days){
			YAHOO.util.Dom.setStyle(daynodes[d+1] , 'display', 'block');	
		}else{
			YAHOO.util.Dom.setStyle(daynodes[d+1] , 'display', 'none');
		}
	}
	
}






function displayNewInfos(val){
	amount = Math.round(val / 140 * 6)+1;
	
	
	switch(amount){
		case 1:
			timeval = 'none';
			specialval = 'none';
			headval = 'none';
			descval = 'none';
			imgval = 'none';
			locval = 'none';
			break;

		case 2:
			timeval = 'inline';
			specialval = 'none';
			headval = 'none';
			descval = 'none';
			imgval = 'none';
			locval = 'none';
			break;
		
		case 3:
			timeval = 'inline';
			specialval = 'block';
			headval = 'none';
			descval = 'none';
			imgval = 'none';
			locval = 'none';
			break;

		case 4:
			timeval = 'inline';
			specialval = 'block';
			headval = 'none';
			descval = 'none';
			imgval = 'none';
			locval = 'block';
			break;
			
		case 5:
			timeval = 'inline';
			specialval = 'block';
			headval = 'block';
			descval = 'none';
			imgval = 'none';
			locval = 'block';
			break;
			
		case 6:
			timeval = 'inline';
			specialval = 'block';
			headval = 'block';
			descval = 'block';
			imgval = 'none';
			locval = 'block';
			break;
		
		case 7:
			timeval = 'inline';
			specialval = 'block';
			headval = 'block';
			descval = 'block';
			imgval = 'block';
			locval = 'block';
			break;
			
	}
	
	for(d=0; d<timenodes.length; d++){
		YAHOO.util.Dom.setStyle(timenodes[d] , 'display', timeval);
	}
	for(d=0; d<specialnodes.length; d++){
		YAHOO.util.Dom.setStyle(specialnodes[d] , 'display', specialval);
	}
	for(d=0; d<headnodes.length; d++){
		YAHOO.util.Dom.setStyle(headnodes[d] , 'display', headval);
	}
	for(d=0; d<descnodes.length; d++){
		YAHOO.util.Dom.setStyle(descnodes[d] , 'display', descval);
	}
	for(d=0; d<thumbnodes.length; d++){
		YAHOO.util.Dom.setStyle(thumbnodes[d] , 'display', imgval);
	}
	for(d=0; d<locationnodes.length; d++){
		YAHOO.util.Dom.setStyle(locationnodes[d] , 'display', locval);
	}
	
}


function updateDisplayInfo(){
	val = infoSlider.getValue();
	displayNewInfos(val);
}


/*
function  setFontSize(val){
	amount = Math.round(val / 2)+50;
	
	for(d=0; d<allEventsNodes.length; d++){
	    YAHOO.util.Dom.setStyle(allEventsNodes[d] , 'font-size', amount + '%');
	}
	
}
*/



function onCatButtClick(e) {
	//alert( e.target );
	var actCat = this.get("value"); 

	if( this.get("checked") ){
		var vis = 'block';
	}else{
		var vis = 'none';
	}
	for(e=0; e<catNodesArr[actCat].length; e++){
	    YAHOO.util.Dom.setStyle( catNodesArr[actCat][e] , 'display', vis);
	}
    
}

function mixCategories(val, actCat){
	amount = val/140;
	//alert('actCat='+ actCat);
	for(e=0; e<catNodesArr[actCat].length; e++){
		YAHOO.util.Dom.setStyle( catNodesArr[actCat][e] , 'opacity', amount);
	}
}

function highlightCategories(z, actCat ){
    
	var rand = Math.round( Math.random()* 10000);
	if(zhdkevents_allinit){
		for(e=0; e<catNodesArr[actCat].length; e++){
			YAHOO.util.Dom.setStyle( catNodesArr[actCat][e] , 'background-image', 'url(gold_2.gif?rand='+ rand +')');
		}
	}

}



function showImg(node, out){

	if(YAHOO.env.ua.ie > 0){
		//alert('no');

	}else{

		var move = 0;
		var reg = YAHOO.util.Dom.getRegion( node );
		var width = reg.right - reg.left;
		
		if(out){
			posX = YAHOO.util.Dom.getX(node.parentNode);		
			move = 250 - width;
		}else{
	
			move = posX - YAHOO.util.Dom.getX(node);
			
		}
		
		var imgAni = new YAHOO.util.Motion( node );
		imgAni.attributes.points = { by: [move,0] };
		imgAni.duration = 0.5; 
		imgAni.method = YAHOO.util.Easing.easeOut;
		imgAni.animate();
	}
}


/*
function filterModeToggle(){
	if(filterModeDetail){
		filterModeDetail = false;
		
		catstyle = 'block';
		substyle = 'none';
		
		catvalues = Array();
		for(c=0; c< SliderByGroup.length; c++){
			catvalues[c] = 0;
			for(z=0; z< SliderByGroup[c][1].length; z++){
				catvalues[c] = catvalues[c] +  SliderByGroup[c][1][z].getValue();
			}
			//alert( 'catvalues['+ c +'] ='+ catvalues[c] +'/'+ z);
			catvalues[c] = catvalues[c] / z;
		}
		
	}else{
		filterModeDetail = true;
	
		catstyle = 'none';
		substyle = 'block';
		
		catvalues = Array();
		for(x=0; x< SliderByGroup.length; x++){
			catvalues[x] = SliderByGroup[x][0].getValue();
		}
		//alert( catvalues );
	}
	
	//alert('headpagesheights[categorypage]:'+ headpagesheights['categorypage']);
	for(x=0; x< catCtrlArr.length; x++){
		YAHOO.util.Dom.setStyle(catCtrlArr[x], "display", catstyle);
	}
	for(x=0; x< subCtrlArr.length; x++){
		YAHOO.util.Dom.setStyle(subCtrlArr[x], "display", substyle);
	}

	if(filterModeDetail){
		for(c=0; c< SliderByGroup.length; c++){
			for(z=0; z< SliderByGroup[c][1].length; z++){
				SliderByGroup[c][1][z].setValue( catvalues[c] );
			}
		}
	}else{
		for(c=0; c< SliderByGroup.length; c++){
			SliderByGroup[c][0].setValue( catvalues[c] );
		}
	}
	
	
	var tmpheight =  YAHOO.util.Dom.getStyle(headpagesnodes[0], 'height');
	headpagesheights[0] = parseInt ( tmpheight.substring(0, tmpheight.length-2) ); 
	//alert('headpagesheights[0]:'+ headpagesheights[0]);
	
	var tovar = headpagesheights[0];
		
	HeadbarAni.attributes.height = { to: tovar };
	HeadbarAni.animate();
	
	//window.setTimeout("filterModePageUpdate()", 500);
	
	//window.setTimeout("filterModePageUpdate()", 3000);
}
*/

/*
function filterModePageUpdate(){

	var tmpheight =  YAHOO.util.Dom.getStyle(headpagesnodes[0], 'height');
	headpagesheights[0] = parseInt ( tmpheight.substring(0, tmpheight.length-2) ); 
	//alert('headpagesheights[0]:'+ headpagesheights[0]);
	
	var tovar = -600 + headpagesheights[0];
		
	HeadbarAni.attributes.points = { to: [20, tovar] };
	HeadbarAni.animate();
	
}
*/



function pagesToggle(id){
	
	
	if(pagesToggleFirstRun){
		for(x=0; x < headpagesnodes.length; x++ ){
			YAHOO.util.Dom.setStyle(headpagesnodes[x], "display", "none");
			YAHOO.util.Dom.setStyle(headpagesnodes[x], "opacity", 0);
    		}
		pagesToggleFirstRun = false;
	}
	
	
	if(id == 0 && filtersubcats && !filtermodechange){
		id=1;
	}

	if (typeof pageTracker != "undefined"){
		pageTracker._trackPageview('/pages/'+headpagenames[id]);
	}

	//filtermodechange = false;
	pagesChanging = true;

	if(id==0 && filtermodechange){
		filtersubcats = false;
		catvalues = Array();
		for(c=0; c< SliderByGroup.length; c++){
			catvalues[c] = 0;
			for(z=0; z< SliderByGroup[c][1].length; z++){
				catvalues[c] = catvalues[c] +  SliderByGroup[c][1][z].getValue();
			}
			//alert( 'catvalues['+ c +'] ='+ catvalues[c] +'/'+ z);
			catvalues[c] = catvalues[c] / z;
		}
		
	}else if(id==1 && filtermodechange){
		filtersubcats = true;
		catvalues = Array();
		for(x=0; x< SliderByGroup.length; x++){
			catvalues[x] = SliderByGroup[x][0].getValue();
		}
		//alert( catvalues );
	}

	
	if( openpage != id){
		
		var TmpContAnim = new YAHOO.util.Anim( headpagesnodes[id] ); 
		TmpContAnim.attributes.opacity = { to: 1 }; 
		TmpContAnim.duration = 0.25; 
		
		TmpContAnim.onComplete.subscribe(function() {
			pagesChanging = false;
			
		});
		
		
		
		if(openpage >= 0){
		
			var TmpContAnimOld = new YAHOO.util.Anim( headpagesnodes[openpage] ); 
			TmpContAnimOld.attributes.opacity = { to: 0 }; 
			TmpContAnimOld.duration = 0.25;  
	
			TmpContAnimOld.onComplete.subscribe(function() {
				YAHOO.util.Dom.setStyle(headpagesnodes[openpage], "display", "block");
				YAHOO.util.Dom.setStyle(headpagesnodes[oldopenpage], "display", "none");
	
				TmpContAnim.animate();
				
				if(filtermodechange){
					if(openpage==1){
							for(c=0; c< SliderByGroup.length; c++){
								for(z=0; z< SliderByGroup[c][1].length; z++){
									SliderByGroup[c][1][z].setValue( catvalues[c] );
								}
							}
						}else if(openpage==0){
							for(c=0; c< SliderByGroup.length; c++){
								SliderByGroup[c][0].setValue( catvalues[c] );
							}
						}
						filtermodechange = false;
					}
				
			});
	
	
			TmpContAnimOld.animate();
	
		}else {
			YAHOO.util.Dom.setStyle(headpagesnodes[id], "display", "block");
			TmpContAnim.animate();
		}
		
	
		var tovar = headpagesheights[id];
		//alert('id:'+ id +' tovar: '+ tovar);
		HeadbarAni.attributes.height = { to: tovar };
		HeadbarAni.animate();
		headopen = true;
	
		//YAHOO.util.Dom.setStyle(headpages[id], "display", "block");
		//YAHOO.util.Dom.setStyle(headpages[id], "opacity", 0);
	
		
		oldopenpage = openpage;
		openpage = id;

	} //end if new page
	
}





function headbarToggle(){
	if(headopen){
		headbarClose();
		headopen = false;
	}else{
		headbarOpen();
		headopen = true;
	}
}

function headbarClose(){

	if(headopen){
		//alert('close');
		if( HeadbarAni.isAnimated ){
			headInMotion = true;
		}
		HeadbarAni.stop();
		HeadbarAni.attributes.height = { to: 0 };
		HeadbarAni.animate();
		headopen = false;
		
		if(YAHOO.env.ua.ie > 0){
			if(openpage == 0 || openpage == 1){
				YAHOO.util.Dom.setStyle(headpagesnodes[openpage], "display", "none");
			}
		}
	}
}

function headbarOpen(){
	if(!headopen){
		if(pagesToggleFirstRun){
			pagesToggle(0);
			pagesToggleFirstRun = false;
		}else{
			//alert('open');
			HeadbarAni.stop();
			var tovar = headpagesheights[openpage];
	
			HeadbarAni.attributes.height = { to: tovar };
			HeadbarAni.animate();
			headopen = true;
			
			if(YAHOO.env.ua.ie > 0){
				if(openpage == 0 || openpage == 1){
					YAHOO.util.Dom.setStyle(headpagesnodes[openpage], "display", "block");
				}
			}
		}
	}
}









var handleDetailSuccess = function(o){
	if(o.responseText !== undefined){
		if (typeof pageTracker != "undefined"){
			pageTracker._trackPageview('/opendetail/'+ openvid );
		}
		opennode.innerHTML =  o.responseText ;
		toggleDetail(false);
	}
}

var handleDetailFailure = function(o){

	if(o.responseText !== undefined){
		opennode.innerHTML = "<ul><li>Transaction id: " + o.tId + "</li>";
		opennode.innerHTML += "<li>HTTP status: " + o.status + "</li>";
		opennode.innerHTML += "<li>Status code message: " + o.statusText + "</li></ul>";
	}
}

callbackDetail = new Object();
callbackDetail ={
  success:handleDetailSuccess,
  failure:handleDetailFailure
}



function toggleDetail(closing){

	if(closing){
		var hideNode = document.getElementById( 'detail'+closingvid );
		var showNode = document.getElementById( 'short'+closingvid );
		
		var eventNode = document.getElementById( 'ewrap'+closingvid );
		var toWidth = 260;
		
		var dwNode = document.getElementById( 'dwrap'+ closingdayID );
		var dNode = document.getElementById( 'd'+ closingdayID );
		
		var tmpregion = YAHOO.util.Dom.getRegion( dNode );
		var curHeight = tmpregion.bottom - tmpregion.top;
		YAHOO.util.Dom.setStyle(dwNode, 'height', curHeight );
		
		var toOpacity = opennodeopacity;
		
		
	}else{
		var hideNode = document.getElementById( 'short'+openvid );
		var showNode = document.getElementById( 'detail'+openvid );
		
		var eventNode = document.getElementById( 'ewrap'+openvid );
		var toWidth = 780;
		
		var dwNode = document.getElementById( 'dwrap'+ opendayID );
		var dNode = document.getElementById( 'd'+ opendayID );
		
		var tmpregion = YAHOO.util.Dom.getRegion( dNode );
		var curHeight = tmpregion.bottom - tmpregion.top;
		YAHOO.util.Dom.setStyle(dwNode, 'height', curHeight );
		
		var toOpacity = 1;
	}
	
	//alert('dNode '+ dNode);



			
	var TmpOpacitytAni = new YAHOO.util.Anim( openeventnode ); 
	TmpOpacitytAni.attributes.opacity = { to: toOpacity }; 
	TmpOpacitytAni.duration = 0.5; ;
	
	TmpOpacitytAni.animate();
	
	var TmpEventAni = new YAHOO.util.Anim( eventNode ); 
	TmpEventAni.attributes.width = { to: toWidth }; 
	TmpEventAni.duration = 0.5; 
	TmpEventAni.method = YAHOO.util.Easing.easeOut;

	TmpEventAni.animate();
	
	var TmpCloseAni = new YAHOO.util.Anim( hideNode ); 
	TmpCloseAni.attributes.opacity = { to: 0 }; 
	TmpCloseAni.duration = 0.25;  
	

	var TmpOpenAni = new YAHOO.util.Anim( showNode ); 
	TmpOpenAni.attributes.opacity = { to: 1 }; 
	TmpOpenAni.duration = 0.25; 
		
	TmpCloseAni.onComplete.subscribe(function() {
		YAHOO.util.Dom.setStyle(showNode, "display", "block");
		YAHOO.util.Dom.setStyle(hideNode, "display", "none");

		TmpOpenAni.animate(); 
	});

	
	TmpOpenAni.onComplete.subscribe(function() {

		var TmpEventAni = new YAHOO.util.Anim( dwNode ); 
		var tmpregion = YAHOO.util.Dom.getRegion( dNode );
		var curHeight = tmpregion.bottom - tmpregion.top;
		
		TmpEventAni.attributes.height = { to:  curHeight }; 
		TmpEventAni.duration = 0.5; 
		//TmpEventAni.method = YAHOO.util.Easing.easeOut;
		TmpEventAni.animate();
		
	});
	
	TmpCloseAni.animate();
		
}


function closeFullView(force){
	/*
	alert('force: '+ force+ '  offevent:'+ offevent);

	if(force || offevent){
	*/
		if(openvid > 0){
		
			//alert( 'closing');
			closingvid = openvid;
			closingdayID = opendayID;
			toggleDetail(true);
			toggleDetail(true);
			openvid = false;
		}
	//}
}

function loadFullView(node, vid, pid, dayID){

	if(openvid > 0){
		closingvid = openvid;
		closingdayID = opendayID;
		toggleDetail(true);
	}

	openvid = vid;
	opennode = document.getElementById( node );
	openeventnode = document.getElementById( 'e'+vid );
	opennodeopacity = YAHOO.util.Dom.getStyle(openeventnode, "opacity");
	
	opendayID =dayID;
	YAHOO.util.Dom.setStyle(opennode, "display", "none");
	YAHOO.util.Dom.setStyle(opennode, "opacity", 0);
	
	sUrl = '/?id='+ pid +'&no_cache=1&type=50&tx_zhdkevents_pi1[showEvent]=' + vid;

	var request = YAHOO.util.Connect.asyncRequest('GET', sUrl, callbackDetail);
	
	//YAHOO.log("Initiating request; tId: " + request.tId + ".", "info", "example");

}













var handleTimeSuccess = function(o){
	//alert('success');
	if(o.responseText !== undefined){
		//alert( o.responseText );
		if (typeof pageTracker != "undefined"){
			var dirstr = 'prev';			
			if(direction > 0){
				dirstr = 'next';
			}
			pageTracker._trackPageview('/changetime/'+ dirstr +'/'+ showdays);
		}
		daysContainer.innerHTML =  o.responseText ;
		eval( document.getElementById( 'DIVnewStartdayJS' ).innerHTML );
		//alert('startday new:'+ startday);
		initNodesArrays();
		updateCatNodes();
		updateSubCatNodes();
		updateOpacity();
		updateDisplayInfo();

		TimeAni.stop();
		TimeAniout = false;
		TimeAni.attributes.points = { to: [0, 0] };
		TimeAni.animate();
	}
}

var handleTimeFailure = function(o){
	//alert('error');
	if(o.responseText !== undefined){
		opennode.innerHTML = "<ul><li>Transaction id: " + o.tId + "</li>";
		opennode.innerHTML += "<li>HTTP status: " + o.status + "</li>";
		opennode.innerHTML += "<li>Status code message: " + o.statusText + "</li></ul>";
	}
}

callbackTime = new Object();
callbackTime ={
  success:handleTimeSuccess,
  failure:handleTimeFailure
}


function updateCatNodes() {
	for(x=0; x<catIDs.length; x++){
		catNodesArr['cat'+catIDs[x]] = YAHOO.util.Dom.getElementsByClassName("cat" + catIDs[x], "div");
	}
}


function updateSubCatNodes() {
	for(x=0; x<subcatIDs.length; x++){
		catNodesArr['sub'+subcatIDs[x]] = YAHOO.util.Dom.getElementsByClassName("sub" + subcatIDs[x], "div");
	}
}


function updateOpacity() {
	if(!filtersubcats){
		for(x=0; x<catIDs.length; x++){
			var curval = eval('cat'+ catIDs[x] +'Slider.getValue();');
			mixCategories(curval, 'cat'+catIDs[x]);
		}
	}else{
		for(x=0; x<subcatIDs.length; x++){
			var curval = eval('sub'+ subcatIDs[x] +'Slider.getValue();');
			mixCategories(curval, 'sub'+subcatIDs[x]);
		}
	}

}



function loadTimespan(pid, mydir){

	direction = parseInt(mydir);

	//dayscontHeight = YAHOO.util.Dom.getStyle( dayscontainerWrapNode , 'height');
	dayscontYpos = direction * dayscontHeight * -1;
	//alert('dayscontHeight:'+ dayscontHeight );

	TimeAniout = true;
	TimeAni.attributes.points = { to: [0, dayscontYpos] };
	TimeAni.animate();

	sUrl =	'/?id='+ pid +'&no_cache=1&type=50&tx_zhdkevents_pi1[startday]=' + startday +'&tx_zhdkevents_pi1[showdays]=' + showdays +'&tx_zhdkevents_pi1[direction]=' + direction;
	//alert(sUrl);
	var request = YAHOO.util.Connect.asyncRequest('GET', sUrl, callbackTime);

	
}












var handlePresetsSuccess = function(o){
	//alert('success');
	if(o.responseText !== undefined){;
		if (typeof pageTracker != "undefined"){
			pageTracker._trackPageview('/presets/save');
		}
		bookmarknode.innerHTML = o.responseText;

	}
}

var handlePresetsFailure = function(o){
	//alert('error');
	if(o.responseText !== undefined){
		bookmarknode.innerHTML = "<ul><li>Transaction id: " + o.tId + "</li>";
		bookmarknode.innerHTML += "<li>HTTP status: " + o.status + "</li>";
		bookmarknode.innerHTML += "<li>Status code message: " + o.statusText + "</li></ul>";
	}
}

callbackPresets = new Object();
callbackPresets ={
  success:handlePresetsSuccess,
  failure:handlePresetsFailure
}

function savePresets(){

	sUrl =	'/?eID=presets';
	//alert(sUrl);


	var nicename = 'jstest';

	bookmarknode = document.getElementById( 'bookmark' );
	bookmarknode.innerHTML = 'speichere...';

	var settings = new Object();
	
	settings['timespan'] = timespanSlider.getValue();
	settings['displayInfo'] = infoSlider.getValue();
	
	settings['catids'] = new Array();
	
	
	if(!filtersubcats){
		settings['filter'] = 'cat';
		for(x=0; x<catIDs.length; x++){;
			settings['catids'][x] = {
				'id':catIDs[x],
				'val':eval("cat"+ catIDs[x] +"Slider.getValue();")
			};
		}
	}else{
		settings['filter'] = 'sub';
		for(x=0; x<subcatIDs.length; x++){
			settings['catids'][x] = {
				'id':subcatIDs[x],
				'val':eval("sub"+ subcatIDs[x] +"Slider.getValue();")
			};
		}
	}
	

	var jsonStr = YAHOO.lang.JSON.stringify(settings);
	//alert(jsonStr);
	var postvars = 'save='+ nicename +'&settings='+jsonStr;
	//alert(postvars);
	
	var request = YAHOO.util.Connect.asyncRequest('POST', sUrl, callbackPresets, postvars);


}













/*

function ctrlBarToggle(group, bar, id){
    //if(node.){}
    
    //alert('group:'+ group +' bar:'+ bar);
    if(ctrlgroupclosed[id]){
        tovar = ctrlgroupheights[id];
        cont = '-';
        ctrlgroupclosed[id] = false;
    }else{
        tovar = 35;
        cont = '+';
        ctrlgroupclosed[id] = true;
    }
    
    var TmpCrlAni = new YAHOO.util.Anim(group, {height: { to: tovar }  });
    TmpCrlAni.duration = 0.5; 
    TmpCrlAni.method = YAHOO.util.Easing.easeOut;
    
    TmpCrlAni.animate();
    
    bar.nodeValue = cont;
}

*/





