// JavaScript Document


	// actual function to transform select to definition list
	function createDropDown(){
		var $form = $("div#langues form");
		$form.hide();
		var source = $("#country-options");
		source.removeAttr("autocomplete");
		var selected = source.find("option:selected");
		var options = $("option", source);
		$("#country-select").append('<dl id="target" class="dropdown"></dl>')
		$("#target").append('<dt class="' + selected.val() + '"><a href="#"><span class="flag"></span><em>' + selected.text() + '</em></a></dt>')
		$("#target").append('<dd><ul></ul></dd>')
		options.each(function(){
			$("#target dd ul").append('<li class="' + $(this).val() + '"><a href="' + $(this).attr("title") + '"><span class="flag"></span><em>' + $(this).text() + '</em></a></li>');
			});
	}


//formater un nombre

function formaterNombre(valeur) {
	
	var decimal=2;
	var separateur=" ";
// formate un chiffre avec 'decimal' chiffres après la virgule et un separateur
	var deci=Math.round( Math.pow(10,decimal)*(Math.abs(valeur)-Math.floor(Math.abs(valeur)))) ; 
	var val=Math.floor(Math.abs(valeur));
	if ((decimal==0)||(deci==Math.pow(10,decimal))) {val=Math.floor(Math.abs(valeur)); deci=0;}
	var val_format=val+"";
	var nb=val_format.length;
	for (var i=1;i<4;i++) {
		if (val>=Math.pow(10,(3*i))) {
			val_format=val_format.substring(0,nb-(3*i))+separateur+val_format.substring(nb-(3*i));
		}
	}
	if (decimal>0) {
		var decim=""; 
		for (var j=0;j<(decimal-deci.toString().length);j++) {decim+="0";}
		deci=decim+deci.toString();
		val_format=val_format+"."+deci;
	}
	if (parseFloat(valeur)<0) {val_format="-"+val_format;}
	return val_format;
}

//mise ajour du bloc de reservation
function majBlocRes()
{

//le nombre de chambre-------------
var nbrchambre=0;
var montant_global=0;

$('.qte_ajax').each(function(index) {
	if(parseInt($(this).val())>0)
	{
	nbrchambre++;	
	montant_global+=parseFloat($("#prixsbt"+$(this).attr("ind")+"").val())*parseInt($(this).val());
	}
});

$("#nbr_chambresp").html(parseInt(nbrchambre));
$("#qteGlobal").val(parseInt(nbrchambre));



$("#mt_resG").html(""+formaterNombre(parseFloat(montant_global)));
$("#mt_resGBar").html(formaterNombre(montant_global / (1-(parseInt($("#mt_taux_code").val())/100) ) ));


}


//mise à jour de la ligne de commande
function majLigneCalcul(ind)
{
//vider les zone de chargement
$("#pm"+ind+" div.pm_det").html('');
$("#sp"+ind+" div.sp_det").html('');
$("#prixm"+ind+"").val('');
$("#prixsbt"+ind+"").val('');

$("#pm"+ind+"").addClass('loadingAjax');
$("#sp"+ind+"").addClass('loadingAjax');


//maj modele
	$.ajax({
   type: "POST",
   cache:false,
   url: "centrale.php",
   data: "action=maj_ligne&ind="+ind+"&idt="+$("#idt"+ind+"").val()+"&na="+$("#na"+ind+"").val()+"&ne="+$("#ne"+ind+"").val()+"&idr="+$("#idr"+ind+"").val(),
   success: function(msg){
	  var infoL = JSON.parse(msg); 
	  
	  $("#pm"+ind+"").removeClass('loadingAjax');
$("#sp"+ind+"").removeClass('loadingAjax');



	   
	  $("#pm"+ind+" div.pm_det").html(''+infoL.lpc);
	  $("#sp"+ind+" div.sp_det").html(''+infoL.lst);
	  $("#prixm"+ind+"").val(infoL.pc);
	  $("#prixsbt"+ind+"").val(infoL.st);
	  
	  //alert(infoL.debug);
	  
	  
	  //maj du total reservation
	  majBlocRes();
	  
  
   }
 });
}

//mise à jour du nombre de personne
function majPersonne(ind,sens,type,limit)
{
	var refreshPrice=false;
	var nbra=parseInt($("#na"+ind+"").val());
	var nbre=parseInt($("#ne"+ind+"").val());
	var qte=parseInt($("#qte"+ind+"").val());
	
	
	
 //alert (" indice : "+ind+", sens :"+sens+", type :"+type+", limit :"+limit );
 
		 //les adultes **************************************
		 if(type=="adulte")
		 {
			 
			 //----------------------- debut sens plus ------------------
			 if(sens=="plus")
			 {
			 if(nbra<limit)
			 {nbra+=1;	refreshPrice=true;}
			 }			
			  //----------------------- fin sens plus ------------------
			  
			  //----------------------- debut sens moins ------------------
			 if(sens=="moins")
			 {
			 if(nbra>1)
			 {nbra-=1;	refreshPrice=true;}
			 }
			 
			  //----------------------- fin sens moins ------------------
			  
			  
			 
		 }
		  //les enfants **************************************
		 if(type=="enfant")
		 {
			 
			 //----------------------- debut sens plus ------------------
			 if(sens=="plus")
			 {
			 if(nbra<limit)
			 {nbre+=1;	refreshPrice=true;}
			 }			
			  //----------------------- fin sens plus ------------------
			  
			  //----------------------- debut sens moins ------------------
			 if(sens=="moins")
			 {
			 if(nbre>0)
			 {nbre-=1;	refreshPrice=true;}
			 }
			 
			  //----------------------- fin sens moins ------------------
			  
			
		 }
		  //equilibrage
			 if((nbra+nbre)>limit)
			 nbre-=1;
		 
		 
	$("#na"+ind+"").val(nbra);
	$("#ne"+ind+"").val(nbre);
	$("#lna"+ind+"").html(""+nbra);
	$("#lne"+ind+"").html(""+nbre);	
	
	if((refreshPrice))
	majLigneCalcul(ind);
 
 
}





// controle calendrier des dispo
function moisPrecedent(idc)
{
	if(parseInt($('#'+idc).attr('mois_encours'))>1) {
	$('#'+idc).not(":animated").animate({
    
    left: '+=185'
 
  }, 100, function() {
    // Animation complete.
	$('#'+idc).attr('mois_encours',(parseInt($('#'+idc).attr('mois_encours'))-1));
  });
  
	}

}

function moisSuivant(idc)
{
	
	if(parseInt($('#'+idc).attr('mois_encours'))<12) {
		$('#'+idc).not(":animated").animate({
    
    left: '-=185'
 
  }, 100, function() {
    // Animation complete.
	
	$('#'+idc).attr('mois_encours',(parseInt($('#'+idc).attr('mois_encours'))+1));
  });
	}
}


//fonctions des sliders
function scrollerContenu(sens,zonescrl,masque)
{
	var pas=$(masque).height()+1;
	
	//sens moins
	if(sens=="moins")
	{
		var position = $(zonescrl).position();
											var rposition=position.top;
											//alert("tests "+$("#podcast_switch ul").height()); 
											//alert("top "+position.top);
											//alert(rposition);
											if(rposition<0)
											$(zonescrl).not(":animated").animate({ top: ""+(position.top+pas)+"px"}, 500,function(){
												if(zonescrl=="#zone_miniature ul")
												majSelectDiapo();
												
												} ); 
	}
	
		//sens plus
	if(sens=="plus")
	{
		var position = $(zonescrl).position();
		
		//alert("le pas est :"+pas);
											var rposition=$(zonescrl).height()+position.top;
		//alert("rposition est :"+rposition);
					
											//alert("tests "+$("#podcast_switch ul").height()); 
											//alert("top "+position.top);
											//alert(rposition);
											if(rposition>pas+10)
											$(zonescrl).not(":animated").animate({ top: ""+(position.top-pas)+"px"}, 500,function(){if(zonescrl=="#zone_miniature ul")
												majSelectDiapo();} ); 
	}
	
		//sens gauche
	if(sens=="gauche")
	{
		pas=$(masque).width()+1;
		
		//alert("test du pas"+pas);
		
		var position = $(zonescrl).position();
											var rposition=position.left;
											//alert("tests "+$("#podcast_switch ul").height()); 
											//alert("top "+position.top);
											//alert(rposition);
											if(rposition<0)
											$(zonescrl).not(":animated").animate({ left: ""+(position.left+pas)+"px"}, 500 ); 
	}
	
		//sens droite
	if(sens=="droite")
	{
		pas=$(masque).width()+1;
		
		
		//alert("test du pas"+pas);
		
		var position = $(zonescrl).position();
		
		//alert("le pas est :"+pas);
											var rposition=$(zonescrl+" .item_slide").length*$(zonescrl+" a").width()+position.left;
		//alert("rposition est :"+rposition);
					
											//alert("tests "+$("#podcast_switch ul").height()); 
											//alert("top "+position.top);
											//alert(rposition);
											if(rposition>pas+10)
											$(zonescrl).not(":animated").animate({ left: ""+(position.left-pas)+"px"}, 500 ); 
	}
	
}




//fonction ajout jours
function addDays(myDate,days) {
myDate.setDate(myDate.getDate()+days);
return myDate;
}

//fonction d'obtention du jour max
function daysInMonth(month,year) {
var dd = new Date(year, month, 0);
return dd.getDate();
} 

$(document).ready(function(){
	
	
/******************************** debut diaporam ******************************/

var myDiapo = $(".diaporama1").jDiaporama({
		delay:4,
		theme:"default",
		useThumbs: false,
		width:757,
		infos: false,
		controls: true, 
		onrollover: true, 
		height:262,
		transition:"sliceBarsH" 
	});
	
	$("#prev").click(function(){
		myDiapo.data("jDiaporama").prev();
	})
	
	$("#next").click(function(){
		myDiapo.data("jDiaporama").next();
	})
	
	$("#decreaseSlices").click(function(){
		nbSlices = myDiapo.data("jDiaporama").getOption('nbSlices');
		myDiapo.data("jDiaporama").changeOption("nbSlices", --nbSlices);
	})
	
	$(".diaporama1").parent().parent().parent().bind("jDiaporama:pause", function(event, pause){
		if(!pause)
			$("#togglePause").val("Pause");
		else
			$("#togglePause").val("Play");
	})
	
	$("#togglePause").click(function(){
		myDiapo.data("jDiaporama").pauseSlider();
	})

/******************************** fin diaporama accueil ************************/	
	
//fancybox
if($("#amsgbox").length>0)
{
$("#amsgbox").fancybox({
	'showCloseButton': false,
				'padding'			: 0,
				'titlePosition'		: 'inside',
				'transitionIn'		: 'none',
				'transitionOut'		: 'none'
			});
}
//fancybox
if($("#amsgbox_val").length>0)
{
$("#amsgbox_val").fancybox({
	'showCloseButton': false,
				'padding'			: 0,
				'titlePosition'		: 'inside',
				'transitionIn'		: 'none',
				'transitionOut'		: 'none'
			});
}

    $.validator.addMethod("greaterThan", function(value, element, params) {
		
		var txtd1=value.split('-');
		var txtd2=($(params).val()).split('-');
		
		//alert("d1 :" +txtd1[2]+"-"+txtd1[1]+"-"+txtd1[0]+" d2 :"+txtd2[2]+"-"+txtd1[1]+"-"+txtd1[0]);
		
		
	var d = new Date();
	d.setDate(txtd1[2]);
	d.setMonth(txtd1[1]-1);
	d.setYear(txtd1[0]);
	
	var d2 = new Date();
	d2.setDate(txtd2[2]);
	d2.setMonth(txtd2[1]-1);
	d2.setYear(txtd2[0]);

     if(   (d > d2) && (value!="") && ($(params).val()!=""))
	 return true;
	 else
	 return false;
        },'Must be greater than {0}.');



$("#fdateres").validate({
		ignore: ".ignore input,.ignore select",
		onfocusout: false,
		onkeyup: false,
		onclick: false,
		meta: "validate",					   
		submitHandler: function(form) {
			//alert("test soummettre contact");
						form.submit();
		},					  
		showErrors: function(errorMap, errorList){ 
			if (errorList.length > 0) {
				//alert("erreur");
				jQuery('#inline1').html( errorList[0].message); $("#amsgbox").click();
			}
		}
	});	
	
	
	$("#fcontact").validate({
		ignore: ".ignore input,.ignore select",
		onfocusout: false,
		onkeyup: false,
		onclick: false,
		meta: "validate",					   
		submitHandler: function(form) {
			//alert("test soummettre contact");
						form.submit();
		},					  
		showErrors: function(errorMap, errorList){ 
			if (errorList.length > 0) {
				//alert("erreur");
				jQuery('#inline1').html( errorList[0].message); $("#amsgbox").click();
			}
		}
	});	
	
	
	
//******************************** debut configuration du calendrier *******************************************/	
	

	/*$(  "#fromDate, #toDate" ).datepicker( "option",
				$.datepicker.regional[ "fr"] );*/
	
var dates = $( "#fromDate, #toDate" ).datepicker({
			numberOfMonths: 2,
			showOn: "button",
			buttonImage: "images/ico_agenda.png",
			buttonImageOnly: true,
			onSelect: function( selectedDate ) {
				var option = this.id == "fromDate" ? "minDate" : "maxDate",
					instance = $( this ).data( "datepicker" ),
					date = $.datepicker.parseDate(
						instance.settings.dateFormat ||
						$.datepicker._defaults.dateFormat,
						selectedDate, instance.settings );
					
					datesplit=selectedDate.split("-");
					
					if(this.id == "fromDate" )	
					{ dates.not( this ).datepicker( "option", option, addDays(new Date(date),1) ); $('#sfromD #sfromD-'+parseFloat(datesplit[2])+'').attr("selected", "selected"); $('#sfromMY #sfromMY_opt'+parseFloat(datesplit[0])+'-'+parseFloat(datesplit[1])+'').attr("selected", "selected");
					
					
					 }
					else					
					{ dates.not( this ).datepicker( "option", option, addDays(new Date(date),-1) ); $('#stoD #stoD-'+parseFloat(datesplit[2])+'').attr("selected", "selected"); $('#stoMY #stoMY_opt'+parseFloat(datesplit[0])+'-'+parseFloat(datesplit[1])+'').attr("selected", "selected");}
					
					
			$(".selectdater:first").change();	
				
			}
		});
		
		
		$( "#fromDate" ).datepicker( "option", "minDate", 0 );
		$( "#toDate" ).datepicker( "option", "minDate", +1 );
		
		$( "#fromDate" ).datepicker( "option", "maxDate", '+1y' );
		$( "#toDate" ).datepicker( "option", "maxDate", '+1y +1d' );
		
		
		
		$( "#fromDate, #toDate" ).datepicker( "option", "dateFormat", 'yy-mm-dd' );
		
/*	*/
		
//******************************** fin configuration du calendrier *******************************************/	
			
		
		
//evenement change select date
$(".selectdater").change(function(){
var datefrom_select=$("#sfromMY").val()+'-'+$("#sfromD").val();
var dateto_select=$("#stoMY").val()+'-'+$("#stoD").val();

var MY_from=datefrom_select.split("-");
var MY_to=dateto_select.split("-");

var maxDay_from=daysInMonth(MY_from[1],MY_from[0]);
var maxDay_to=daysInMonth(MY_to[1],MY_to[0]);

if(parseInt($("#sfromD").val())>maxDay_from)
{$('#sfromD #sfromD-'+maxDay_from+'').attr("selected", "selected");
datefrom_select=$("#sfromMY").val()+'-'+maxDay_from;}


if(parseInt($("#stoD").val())>maxDay_to)
{$('#stoD #stoD-'+maxDay_to+'').attr("selected", "selected");
dateto_select=$("#stoMY").val()+'-'+maxDay_to;}


//caler la date arrivee sur le jour de depart
if(($("#sfromMY").val()!="")&&($("#sfromD").val()!="")&&( ($("#stoMY").val()=="")|| ($("#stoD").val()=="") ))
{var nextdate=addDays(new Date(MY_from[0],MY_from[1]-1,$("#sfromD").val() ),1);
dateto_select=nextdate.getFullYear()+'-'+(nextdate.getMonth()+1)+'-'+nextdate.getDate();

//alert("next date est :"+dateto_select);

$('#stoD #stoD-'+nextdate.getDate()+'').attr("selected", "selected");
$('#stoMY #stoMY_opt'+nextdate.getFullYear()+'-'+(nextdate.getMonth()+1)+'').attr("selected", "selected");

}

//caler la date depart sur le jour arrivee
if(($("#stoMY").val()!="")&&($("#stoD").val()!="")&&( ($("#sfromMY").val()=="")|| ($("#sfromD").val()=="") ))
{var prevdate=addDays(new Date(MY_to[0],MY_to[1]-1,$("#stoD").val() ),-1);
datefrom_select=prevdate.getFullYear()+'-'+(prevdate.getMonth()+1)+'-'+prevdate.getDate();
//alert("prev date est :"+datefrom_select);
$('#sfromD #sfromD-'+prevdate.getDate()+'').attr("selected", "selected");
$('#sfromMY #sfromMY_opt'+prevdate.getFullYear()+'-'+(prevdate.getMonth()+1)+'').attr("selected", "selected");

}


//alert("le jour max from : "+maxDay_from);
//alert("le jour max to : "+maxDay_to);

$("#fromDate").val(datefrom_select);
$("#toDate").val(dateto_select);

//alert("la date est : "+daysInMonth(2,2011));
	
	});
	

//lien miniature fiche bien
	$(".linkthumb").click(function(){
		
		
		
		var parenti=$(this).attr('parenti');
		
			
		$("#"+parenti+" img.linkbig").not("#"+$(this).attr('rel')).fadeOut("fast");
		$("#"+$(this).attr('rel')).fadeIn("fast");
	
		});
	
//le info bulle promotion
$('a.tTip').tinyTips('contentP');	


// --- language dropdown --- //

	// turn select into dl
	createDropDown();
	
	var $dropTrigger = $(".dropdown dt a");
	var $languageList = $(".dropdown dd ul");
	
	// open and close list when button is clicked
	$dropTrigger.toggle(function() {
		$languageList.slideDown(200);
		$dropTrigger.addClass("active");
	}, function() {
		$languageList.slideUp(200);
		$(this).removeAttr("class");
	});

	// close list when anywhere else on the screen is clicked
	$(document).bind('click', function(e) {
		var $clicked = $(e.target);
		if (! $clicked.parents().hasClass("dropdown"))
			$languageList.slideUp(200);
			$dropTrigger.removeAttr("class");
	});

	// when a language is clicked, make the selection and then hide the list
	$(".dropdown dd ul li a").click(function() {
		var clickedValue = $(this).parent().attr("class");
		var clickedTitle = $(this).find("em").html();
		$("#target dt").removeClass().addClass(clickedValue);
		$("#target dt em").html(clickedTitle);
		$languageList.hide();
		$dropTrigger.removeAttr("class");
	});
	
	});
