window.addEvent('domready', function(){
	
	var prev = -1;
	
	
	$$('.accordion', '.over-introtext').addEvent('click', function(e){
		
		var id = this.get('id').replace('over','');
		
		if (prev == id || prev == -1) {
			
			var over = $('over' + id);
			var sub = $('sub' + id);
			
			var state = over.getHeight();
			
			if (state != 1) {
				
				accordion(over, sub);
			}
			else {
				
				accordion(sub, over);
			}
		}
		else {
			
			var over = $('over' + prev);
			var sub = $('sub' + prev);
			
			accordion(sub, over);
			
			var over = $('over' + id);
			var sub = $('sub' + id);
			
			accordion(over, sub);
		}
		
		prev = id;
	});
	
	function accordion(tohide, toshow) {
		
		new Fx.Morph(tohide, {
			onStart: function() {
				
				tohide.setStyle('overflow','hidden');
				
				toshow.setStyle('height', 'auto');
				var height = toshow.getHeight();
				toshow.setStyle('height', '1');
				
				new Fx.Morph(toshow, {
					onStart: function() {
						tohide.setStyle('overflow','hidden');
					},
					onComplete: function() {
						toshow.setStyle('overflow','visible').setStyle('height','auto');
					}
				}).start({
				    'height': [1, height],
					'opacity': [0, 1]
				});
			}
		}).start({
		    'height': [tohide.getHeight(), 1],
			'opacity': [1, 0]
		});
		
	}
	
	$$('.accordion-sub').set({
		'styles': {
			height: 1,
			overflow: 'hidden',
			opacity: '0',
			display: 'block'
		}
	});

});
