function Accordion() {};

Accordion.objectClass = null;
Accordion.headerClass = null;
Accordion.timeOut = new Array();
Accordion.open = new Array();

Accordion.init = function (object, headerClass, objectClass) {
	Accordion.objectClass = objectClass;
	Accordion.headerClass = headerClass;
	
	object.getElements('.'+headerClass).each( function(item) {
		Accordion.hide(item);
		Accordion.open[item.uid] = false;
//		item.onmouseover = function() { Accordion.show(this); };
//		item.onmouseout = function() { Accordion.hide(this); };
		item.onclick = function() { Accordion.toggle(this); };
	});
};

Accordion.show = function(object) {
	object.getElements('.title').each(function(item) { window.clearTimeout(Accordion.timeOut[item.uid]); });
	object.getElements('.'+Accordion.objectClass).each( function(item) { item.tween('height', '28px'); });
	object.getElements('.title').each( function(item) { item.tween('height', '20px'); });
};

Accordion.hide = function(object) {
	if(!Accordion.open[object.uid]) {
		object.getElements('.title').each(function(item) { 
			Accordion.timeOut[item.uid] = window.setTimeout( function() {
				object.getElements('.'+Accordion.objectClass).each( function(item) { item.tween('height', '0'); });
				object.getElements('.title').each( function(item) { item.tween('height', '0'); });
			}, 100);
		});
	}
};

Accordion.toggle = function(object) {
	if(!Accordion.open[object.uid]) {
		Accordion.show(object);
		Accordion.open[object.uid] = true;
		if(object.getElements('.lock')[0] != undefined)
			object.getElements('.lock')[0].src = '/template/_default/img/icon/lock.png';
	}
	else {
		Accordion.open[object.uid] = false;
		Accordion.hide(object);
		if(object.getElements('.lock')[0] != undefined)
			object.getElements('.lock')[0].src = '/template/_default/img/icon/unlock.png';
	}
};
