var CtSlide_Content = Class.create({


	element: null,
	id: null,


	initialize: function(htmlElement) {
		this.element = $(htmlElement);
		this.id =  this.element.identify();
	},

	show: function() {
		if (this.element.visible()) {
			return;
		}

		new Effect.BlindDown(this.element, {
			duration: 0.2,
			queue: {scope: this.id, position: 'end'}
		});
//		this.element.show();
	},
	hide: function() {
		if (!this.element.visible()) {
			return;
		}

		new Effect.BlindUp(this.element, {
			duration: 0.2,
			queue: {scope: this.id, position: 'end'}
		});
//		this.element.hide();
	}
});


var CtSlide = Class.create({

	element: null,
	items: [],

	initialize: function(htmlElement) {
		this.element = $(htmlElement);
//		this.id = this.element.identify();
		this.items = this.element.select('.ctSlide');
//		this.dummy = new Element('div').update('&nbsp;');
		this.body = $$('body')[0];
//console.log(this);
		var descendants = this.element.descendants();

		for (var i = 0; i < this.items.length; i++) {
			this.items[i].index = i;
			this.items[i].button = this.items[i].down('.ctSlide-button');
			this.items[i].content = new CtSlide_Content(this.items[i].down('.ctSlide-content'));
			if (!this.items[i].button) {
				continue;
			}

			this.items[i].button.observe('click', function(event, index) {
				Event.stop(event);
				for (var j = 0; j < this.items.length; j++) {
					if (j == index) {
						this.items[j].content.show();
					} else {
						this.items[j].content.hide();
					}
				}
//				for (var k = 0; k < descendants.length; k++) {
//					this.body.insert({bottom: descendants[k]});
//				}
//				for (var k = 0; k < descendants.length; k++) {
//					this.element.insert({bottom: descendants[k]});
//				}
//				this.items[this.items.length - 1].content.element.insert({bottom: this.dummy});
			}.bindAsEventListener(this, i))
		}
	}

});

var CtSlide_Manager = new (Class.create({

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

	refresh: function() {
		var elements = $$('.ctSlide-container');
		for (var i = 0; i < elements.length; i++) {
			new CtSlide(elements[i]);
		}

	}

}));
ScriptsManager.registerScript("CtSlide");
