
var micro_step;
var counter = 1;

function setSection(direction)
{
try
{	
	if (jQuery.fn.plugin_is_moving_parallax!=true)
	{
		micro_step= (direction - jQuery.fn.global_xratio) / 30;
		var foto = $('#foto_big');
		$('body').attr('moving_parallax','yes');
		
		//	movimento dei layer per predisporre la comparsa del menu.
		//	alla fine del movimento viene richiamata la funzione di show menu
		
		var menu_to_hide;
		//	se devo mostrare gli appartamenti
		if(direction == 1)
		{
			menu_to_hide = $('#darsena-menu');
		}
		//	se devo mostrare la darsena
		else if(direction == 0)
		{
			menu_to_hide = $('#appartamenti-menu');
		}
		//	se c'e' un menu visibile e non è quello della sezione cliccata, lo nascondo poi eseguo layerMovement()
		if(menu_to_hide.is(':visible')) menu_to_hide.hide('drop', { direction: 'down' }, 700, function(){ layerMovement(); });
		//	altrimenti eseguo layerMovement() direttamente
		else layerMovement();
	}
	
}
catch(e) {toDebug(e.toString());}
}

function layerMovement() {

	var page_to_go = '';
	var next_x = micro_step +jQuery.fn.global_xratio;
	
	if (next_x < 0) 
	{
		next_x = 0;
		counter = 60;
		page_to_go = $('area[_name="darsena"]').attr('_url');
	}
	if (next_x > 1) 
	{
		next_x = 1;
		counter = 60;
		page_to_go = $('area[_name="appartamenti"]').attr('_url');
	}

	jQuery.fn.moveLayers(jQuery.fn.layer, next_x ,0);
	counter++;
	if(counter<60) setTimeout(layerMovement,10);	  		
	else 
	{
		counter = 1;
		//	disattivo parallax per corretta usabilita' menu
		$('body').attr('prevent_parallax','yes');

		//	redirect sulla pagina
		window.location.href = page_to_go;
	}
};



/**
 * posizione l'immagine di testata in modo da
 * visualizzare la porzione di immagine giusta
 * per la sezione in cui si è.
 * al click del bottone "go-to-other-section" effettua lo
 * slide dell'immagine per mostrare la porzione nascosta, poi segue
 * il link verso l'altra sezione
 */
function positionSlideHeight()
{
try
{	
	var button = $('#go-to-other-section a');
	var boxtoslide = $('#slide-head');
	var this_section = $('#main').attr('section');
	var negative_left = -boxtoslide.width()/2;
	var left_togo;
	var speed = 1800;
	
	//	assegno il giusto posizionamento all'immagine
	//	basandomi su this_section
	if(this_section == 'darsena')
	{
		boxtoslide.css('left','0px');
		left_togo = negative_left;
	}
	else if(this_section == 'appartamenti')
	{
		boxtoslide.css('left',negative_left);
		left_togo = 0;
	}
	
	//	riscrivo l'evento di click del bottone
	button.bind('click', function()
	{
		boxtoslide.animate({'left':left_togo},
		{
			duration:speed,
			easing: 'easeInOutExpo',
			complete: function(){window.location.href = button.attr('href');} 
		});
		return false;
	});
}
catch(e) {toDebug(e.toString());}
}

/**
 * restituisce un valore intero,
 * costituito da larghezza/altezza utile + bordi + padding + margini
 * per calcolare l'ingombro totale dell'elemento
 * 
 * di default calcola l'ingombro orizzontale
 */
function elementOffset(element, orientation)
{
	 
	var offset = 0;
	/*
	 * separo i 2 casi:
	 * calcolo dell'ingombro orizzontale
	 * calcolo dell'ingombro verticale
	 */
	switch(orientation) 
	{ 
		// ingombro orizzontale
		case 'horizontal':	
			offset += $(element).width() + parseInt($(element).css('margin-left')) + parseInt($(element).css('margin-right')) + parseInt($(element).css('padding-left')) + parseInt($(element).css('padding-right')) + parseInt($(element).css('border-left-width')) + parseInt($(element).css('border-right-width'));
		break; //si ferma qui 
		
		// ingombro verticale
		case 'vertical':		
			offset += $(element).height() + parseInt($(element).css('margin-top')) + parseInt($(element).css('margin-bottom')) + parseInt($(element).css('padding-top')) + parseInt($(element).css('padding-bottom')) + parseInt($(element).css('border-bottom-width')) + parseInt($(element).css('border-bottom-width')); 
		break; //si ferma qui 
		
		default: 
			offset += $(element).width() + parseInt($(element).css('margin-left')) + parseInt($(element).css('margin-right')) + parseInt($(element).css('padding-left')) + parseInt($(element).css('padding-right')) + parseInt($(element).css('border-left-width')) + parseInt($(element).css('border-right-width')); 
	}
	
	return offset;
}



/**
 * in base alla risoluzione posiziona centrato
 * verticalmente il box "main-parallax"
 */
function mainParallaxTopSetting()
{
try
{
	var box = $('#main-parallax');
	var window_height = $(window).height();
	var box_height = elementOffset(box,'vertical');
	var top_to_set = (window_height/2) - (box_height/2);
	if(top_to_set <0) top_to_set = 0;
	
	box.css('top',top_to_set);
	
}
catch(e) {toDebug(e.toString());}
}

/****************************************************************************/
//	inizio funzioni di debug
debug_msg = false;
function toDebug(string)
{
	if (debug_msg)
	{
		if((typeof window.console=="undefined")) {alert(string);}
		else {
			console.error();
			console.group(string);
			console.trace();
			console.groupEnd();
		}
	}
}
function toConsole(string)
{
	if((typeof window.console=="undefined")) {alert(string);}
	else console.log(string);
}
//fine funzioni di debug
function $j(argument)
{
	var result = jQuery(argument);
	if (result.length == 0) return null;
	else return result;
}

$j(document).ready(function()
{ 
    $(function(){$('a[rel*=lightbox]').lightBox();});
    //if($j('#slide-head')) positionSlideHeight();
     
});

$j(window).load(function()
{
	if($j('#parallax'))
	{
		mainParallaxTopSetting();
		$('#parallax').jparallax({yparallax:false});
	}
	if($j('.gallery')) $('.gallery').each(function(){$(this).slider({'delta_slide': 1});});
	
	if ($j('#wrapper_form_guestbook')) $('#wrapper_form_guestbook').formSubmitter();
    if ($j('#wrapper_form')) $('#wrapper_form').formSubmitter();	
	
});
$j(window).resize(function()
{
	if($j('#parallax')) mainParallaxTopSetting();
});

/*****************************************************************************************/