var morphs = Array();
var is_pf1 = 'fileadmin/jscss/toggle/pf1.gif';
var is_pf2 = 'fileadmin/jscss/toggle/pf2.gif';

/*
// In dem Div mit der Klasse "toggler" wird der erste div clickbar, der zweite geht auf und zu
<div class="toggler tglcontent">
	<div>
		<img src="fileadmin/jscss/toggle/pf2.gif" alt="" /> 
		<h3>LALALA</h3>
	</div>
	<div>
		AUF-/ZUKLAPP-INHALT
	</div>
</div>
*/

function initMorphPair(div, num) {
	var ret = Object();
	ret.num = num;
	var divs = div.getElements('div');
	ret.clicker = divs[0];
	ret.clicker.style.cursor = 'pointer';    
	ret.clicker.onclick = function() {
		var clicker = $(this);
		//var id = this.id.substr(this.id.lastIndexOf('_')+1);
		var mp = getMorphPair(clicker);
		mp.toggle();
	}
	ret.icon = ret.clicker.getElementsByTagName('img')[0];
	
	ret.element = divs[1];
	ret.fx = new Fx.Slide(ret.element);
	ret.fx.p = ret;
	//if (num != 0) {
		ret.fx.hide();
		ret.icon.src=is_pf1;
	//} else {
	//	ret.icon.src=is_pf2;
	//}
	
	ret.toggle = function() {
		if (!this.fx.open) {
			this.fx.slideIn();
			this.icon.src=is_pf2;
			for (var i = 0; i < morphs.length; i++) {
				if (morphs[i] != this && morphs[i].fx.open) {   
					morphs[i].fx.slideOut();
					morphs[i].icon.src=is_pf1;
				}
			}
		} else {
			this.fx.slideOut();
			this.icon.src=is_pf1;
		}
	}
	
	ret.toString = function() {
		var ret = 'Object: \n';
		ret += 'num: ' + this.num + '\n';
		ret += 'clicker: ' + this.clicker.id + '\n';
		ret += 'element: ' + this.element.id + '\n';
		return ret;
	}
	return ret;
}
function getMorphPair(clicker) {
	for (var i = 0; i <= morphs.length; i++) {
		if (morphs[i].clicker == clicker) return morphs[i];
	}
}
window.addEvent(
	'domready', 
	function() {
		var divs = $$('div.toggler');
		for (var i = 0; i < divs.length; i++) {
			morphs[morphs.length] = initMorphPair(divs[i], i);
		}
		try {
			if (startopen) {
				var mp = getMorphPair($(startopen));
				mp.clicker.onclick();
			}
		} catch (e) { }
	}
);
