/*
# javascript voor de menu's
# ###############
# Onderdeel van sQuarecoW CMS
# © 2006-2008 sQuarecoW new media
# Versie: 2.01
# Module: menu
# ###############
*/

function showForm(form) {
	// de hoogte van het betreffende formulier
	$('form_' + form).setStyle('display', 'block');
	var height = $('form_' + form).getSize().y;
	
	// hoogte instellen + top
	$('top_menu_bottom').setStyles({
		'height': height,
		'top': -1 * height
	});
	
	$('top_menu_bottom').morph({
		'top': 0
	});
	// uitgeklapt
	$('top_menu_bottom').state = form;
	// actief
	$('top_menu_' + form).addClass('active');
	// sluiten
	$$('a.close').addEvent('click', function(e) {
		e.stop();
		hideForm();
	});
}

function hideForm() {
	$('top_menu_bottom').morph({
		'top': (-1 * $('top_menu_bottom').getStyle('height').toInt()) + 3
	});
	(function() {
		$$('.top-menu-form').setStyle('display', 'none');
		$('top_menu_top').getElements('a').removeClass('active');
	}).delay(1000);
	// ingeklapt
	$('top_menu_bottom').state = 'closed';
}

window.addEvent('domready', function() {
	
	// fx op het menu
	$('top_menu_bottom').set('morph', {'transition': Fx.Transitions.Quart.easeOut, 'duration': 1000});
	$('top_menu_bottom').state = 'closed';
	
	// actie op de links
	$('top_menu_top').getElements('a').each(function(link) {
		link.addEvent('click', function(e) {
			e.stop();
			var ID = this.get('id').split('_');
			
			// uitklappen
			// niet uigeklapt? dan uitklappen
			if ($('top_menu_bottom').state == 'closed') {
				showForm(ID[2]);
			}
			// wel uitgeklapt, maar niet dit formulier?
			else if ($('top_menu_bottom').state != ID[2]) {
				// dan dit formulier weghalen, de ander tonen en verder/minder uitschuiven
				$('form_' + $('top_menu_bottom').state).setStyle('display', 'none');
				$('top_menu_top').getElements('a').removeClass('active');
				// formulier tonen
				showForm(ID[2]);		
			}
			// inklappen
			else {
				hideForm();
			}
		});
	});
});
