var CtToggle = Class.create({

	element: null,
	id: null,
	button: null,
	content: null,

	initialize: function(htmlElement) {
		this.element = $(htmlElement);
		this.id = this.element.identify();
		this.button = this.element.down('.ctToggle-button');
		this.content = this.element.down('.ctToggle-content');

		this.button.observe('click', this.clickHandler.bindAsEventListener(this));
	},


	clickHandler: function(event) {
		Event.stop(event);

		if (this.content.visible()) {
			this.button.update('show');
			this.button.removeClassName('ctToggle-button-hide');
			this.button.addClassName('ctToggle-button-show');

			new Effect.BlindUp(this.content, {
				duration: 0.5,
				queue: {scope: 'CtToggle' + this.id, position: 'end', limit: 1}
			});
//			this.content.hide();
		} else {
			this.button.update('hide');
			this.button.removeClassName('ctToggle-button-show');
			this.button.addClassName('ctToggle-button-hide');
			new Effect.BlindDown(this.content, {
				duration: 0.5,
				queue: {scope: 'CtToggle' + this.id, position: 'end', limit: 1}
			});
//			this.content.show();
		}
	},

	x: null

});

var CtToggle_Manager = new (Class.create({

	initialize: function() {
		Event.observe(document, 'dom:loaded', function() {this.refresh()}.bindAsEventListener(this));
	},

	refresh: function() {
		var elements = $$('.ctToggle');
		for (var i = 0; i < elements.length; i++) {
			new CtToggle(elements[i]);
		}
	}

}));
CtPage.registerScript("CtToggle");

