var KlappboxSlider = [];
var KlappboxSliderTrigger = [];
var KlappboxSliderTriggerIDs = [];

window.addEvent('domready', function() {
	var Boxen = $$('#secondary div.slider');
	var BoxenMaxIndex = Boxen.length - 1;
	var trigger;
	var sliderParentLI;

	var currentKlappbox;
	var currentKlappboxLI;
	var currentKlappboxLdID;
	var currentKlappboxTrigger;
	var currentKlappboxNextLI;

	
	$each(Boxen, function(box, index){
		sliderParentLI = box.getParent();
		box.setAttribute('id', 'klappbox_'+index);
		
		trigger = box.getPrevious();
		trigger.setAttribute('id', 'trigger_'+index);
		
		KlappboxSlider[index] = new Fx.Slide(box, {
			mode: "vertical",
			duration: 500,
			wait: false
		}).hide();
		
		KlappboxSliderTrigger[index] = trigger;
		KlappboxSliderTriggerIDs[index] = index;
	
		
		trigger.addEvent('mouseenter', function(event) {
			new Event(event).stop();		
			this.setStyle('cursor', 'pointer');
			this.setStyle('cursor', 'hand');
			this.setStyle('color', '#335580');
		});

		trigger.addEvent('mouseleave', function(event) {
			new Event(event).stop();		
			this.setStyle('cursor', 'default');
			this.setStyle('color', '#ffffff');
		});
				
		trigger.addEvent('click', function(event) {
			new Event(event).stop();		
			this.setStyle('color', '#00417a');
			
			var t = this.id;
			var t_index = t.substring(8);
			var nextLI = this.getParent().getNext();
			
			
			// Wenn noch kein aktueller Tab gesetzt ist...
			if (currentKlappbox == null) {
				this.setStyle('padding-bottom', '15px');				
				KlappboxSlider[t_index].slideIn().chain(function() {
					KlappboxSliderTrigger[index].setStyle('padding-bottom', '0px');				
					if (nextLI) nextLI.setStyle("background-image", "url(../images/sidebar.tab.down.gif)");
				});
				
			} else { // Wenn der aktuelle Tab identisch ist,wieder einklappen
			
				if (currentKlappbox == KlappboxSlider[t_index]) {
					currentKlappboxLI.setStyle('padding-bottom', '15px');
					currentKlappbox.slideOut().chain(function() {
						if (nextLI) nextLI.setStyle("background-image", "url(../images/sidebar.tab.up.gif)");					
						if (KlappboxSliderTriggerIDs[index] != BoxenMaxIndex)
						currentKlappboxLI.setStyle('padding-bottom', '0px');
						else
						currentKlappboxLI.setStyle('padding-bottom', '15px');
					});
					
					currentKlappbox = null;
					return;
					
				} else { // Wenn es also ein anderer Tab ist, der geklickt wurde
					if (currentKlappboxNextLI) 
						currentKlappboxNextLI.setStyle("background-image", "url(../images/sidebar.tab.up.gif)");
					
					if (currentKlappboxLiID != BoxenMaxIndex)
						currentKlappboxLI.setStyle('padding-bottom', '0px');
					else currentKlappboxLI.setStyle('padding-bottom', '15px');
					
					currentKlappbox.slideOut().chain(function() {
							// und den bestehenden wieder reinklappen
							KlappboxSlider[t_index].slideIn().chain(function() {
								if (nextLI) 
									nextLI.setStyle("background-image", "url(../images/sidebar.tab.down.gif)");
								if (KlappboxSliderTriggerIDs[t_index] != BoxenMaxIndex)
									KlappboxSliderTrigger[t_index].setStyle('padding-bottom', '0px');
								else KlappboxSliderTrigger[t_index].setStyle('padding-bottom', '15px');
								
							});
					});

				}
				
			}
			currentKlappbox = KlappboxSlider[t_index];			
			currentKlappboxLI = this.getParent();
			currentKlappboxTrigger = currentKlappboxLI.getFirst();
			currentKlappboxLiID = parseInt(this.getAttribute("id").substring(8));
			currentKlappboxNextLI = this.getParent().getNext();
		});
	});
});

