$(function() {
	var $loader		= $('#body_loading');
	var $currImage 	= $('#body_bg').children('img:first');
    var $menu 	= $('#menu');
    
    var $window_load = $('#window_load');
	var $window = $window_load.parent();
    
	//let's load the current image 
	//and just then display the navigation menu
	$('<img>').load(function(){
		$currImage.fadeIn(3000);
		setTimeout(function(){
			$menu.animate({'left':'0px'},500);
			$('#header_logo, #footer').fadeIn();
			if (window.section) $('#'+window.section).parent().parent().fadeIn();
			$loader.hide();
		},1000);
	}).attr('src',$currImage.attr('src'));

	//Menu triggers
	$menu.find('a.trigger').click(showWindow).hover(function() {
		$(this).stop().animate({'paddingLeft':'50px'},100);
	}, function() {
		$(this).stop().animate({'paddingLeft':'20px'},100);
	});
	
	//Home
	$('#header_logo a').click(showWindow);
	
	//Windows open/close
	$window.prepend('<a href="javascript:;" class="close"><img src="/img/close.gif" alt="Cerrar" /></a>');
	$window.find('a.close').click(function() {
		hideWindow(500);
	});
	
	function showWindow() { //Event click
		var id_rel = this.href.replace(/^[^#]*/, '');
		var $elem = $(this);
		var is_album = $(this.parentNode).hasClass('album');
		var is_current = $elem.hasClass('current'); 
		hideWindow();	
		if (!is_current) {      	
			$loader.show();
			$window_load.load(this.href+'?ajax=1', function() {
				$window.fadeIn('fast', function() { 
					$elem.addClass('current'); 
					$loader.hide();
				});
				run_callbacks();
			}) 	
		}

		return false;
	}
	
	//Ocultar finestra
	function hideWindow(time) {
		if (!time) time=0;
		$window.fadeOut(time, function() {
			$menu.find('a.current').removeClass('current');
			$('#header_logo a').removeClass('current');
		});
	}
	
	//executar callbacks
	run_callbacks();
});          

function run_callbacks() {
	//Ejecutar callbacks pendientes
	for (var i=0; i<ready_callbacks.length; i++) {
		//try {
			ready_callbacks[i]();
		//} catch(ex) {
		//}
	}
	ready_callbacks = [];
} 
