$(document).ready(function() {

	//Grupos i eventos
	
	//Data Picker
	var DatePicked = function() {
		var entrada = $("#from");
		var salida = $("#to");
		var noches = $("#nights");
		
		var triggeringElement = $(this);
		var entradaDate = entrada.datepicker("getDate");
	
		var hoy = new Date();
		entrada.datepicker('option', 'minDate', hoy);
		
		var minsalidaDate = new Date();
		var oneDay = 1000*60*60*24;
		
		if (entradaDate != null) {
			minsalidaDate.setTime(entradaDate.getTime() + oneDay);
		} else {
			minsalidaDate.setTime(minsalidaDate.getTime() + oneDay);
		}
		
		salida.datepicker('option', 'minDate', minsalidaDate);
	
		var salidaDate = salida.datepicker("getDate");
		
		if (entradaDate != null && salidaDate != null && triggeringElement.attr("id") != "nights") {
			var oneDay = 1000*60*60*24;
			var difference = Math.ceil((salidaDate.getTime() - entradaDate.getTime()) / oneDay);
					noches.val(difference);
		} else if (entradaDate != null && triggeringElement.attr("id") == "nights") { 
			var nightsEntered = parseInt(noches.val());
			if (nightsEntered >= 1) {
				var oneDay = 1000*60*60*24;     
				var newsalidaDate = new Date();
				newsalidaDate.setTime(entradaDate.getTime() + (nightsEntered * oneDay));
				salida.datepicker("setDate", newsalidaDate);
			} else {
				nigths.val('1');
				alert("Estancia minima de 1 noche.");
			}
		} 	
		if(entrada.val()!=""){        	
			$('#form1\\:from').val(entrada.val());
		}
		if(salida.val()!=""){
			$('#form1\\:to').val(salida.val());
		}
		$('#nights').val(noches.val());
	}
	
	$("#form1\\:from, #form1\\:to").datepicker({
	   showOtherMonths: true,
		showOn: 'both',
		buttonImage: '/i/df_ico_calendar1.gif',
		buttonImageOnly: true,
		regional:'es',
		//esta incluido en el js de regional - dateFormat:"dd/mm/yy", 
		showAnim: "slideDown",
		onSelect: DatePicked
	});
	
	$("#nights").change(DatePicked);	
	
	DatePicked();
	
	//Data Picker
	var DatePicked = function() {
		var entrada = $("#from");
		var salida = $("#to");
		var noches = $("#nights");
		
		var triggeringElement = $(this);
		var entradaDate = entrada.datepicker("getDate");
	
		var hoy = new Date();
		entrada.datepicker('option', 'minDate', hoy);
		
		var minsalidaDate = new Date();
		var oneDay = 1000*60*60*24;
		
		if (entradaDate != null) {
			minsalidaDate.setTime(entradaDate.getTime() + oneDay);
		} else {
			minsalidaDate.setTime(minsalidaDate.getTime() + oneDay);
		}
		
		salida.datepicker('option', 'minDate', minsalidaDate);
	
		var salidaDate = salida.datepicker("getDate");
		
		if (entradaDate != null && salidaDate != null && triggeringElement.attr("id") != "nights") {
			var oneDay = 1000*60*60*24;
			var difference = Math.ceil((salidaDate.getTime() - entradaDate.getTime()) / oneDay);
					noches.val(difference);
		} else if (entradaDate != null && triggeringElement.attr("id") == "nights") { 
			var nightsEntered = parseInt(noches.val());
			if (nightsEntered >= 1) {
				var oneDay = 1000*60*60*24;     
				var newsalidaDate = new Date();
				newsalidaDate.setTime(entradaDate.getTime() + (nightsEntered * oneDay));
				salida.datepicker("setDate", newsalidaDate);
			} else {
				nigths.val('1');
				alert("Estancia minima de 1 noche.");
			}
		} 	
		if(entrada.val()!=""){        	
			$('#from').val(entrada.val());
		}
		if(salida.val()!=""){
			$('#to').val(salida.val());
		}
		$('#nights').val(noches.val());
	}
	
	$("#from, #to").datepicker({
	   showOtherMonths: true,
		showOn: 'both',
		buttonImage: '/i/df_ico_calendar1.gif',
		buttonImageOnly: true,
		regional:'es',
		//esta incluido en el js de regional - dateFormat:"dd/mm/yy", 
		showAnim: "slideDown",
		onSelect: DatePicked
	});
	
	$("#nights").change(DatePicked);	
	
	DatePicked();
	
	
	//Data Picker Bottom
	if (!$('body').hasClass('datePicker-1')){
		var DatePicked_bottom = function() {
			var entrada = $("#from_bottom");
			var salida = $("#to_bottom");
			var noches = $("#nights_bottom");
			
			var triggeringElement = $(this);
			var entradaDate = entrada.datepicker("getDate");
		
			var hoy = new Date();
			entrada.datepicker('option', 'minDate', hoy);
			
			var minsalidaDate = new Date();
			var oneDay = 1000*60*60*24;
			
			if (entradaDate != null) {
				minsalidaDate.setTime(entradaDate.getTime() + oneDay);
			} else {
				minsalidaDate.setTime(minsalidaDate.getTime() + oneDay);
			}
			
			salida.datepicker('option', 'minDate', minsalidaDate);
		
			var salidaDate = salida.datepicker("getDate");
			
			if (entradaDate != null && salidaDate != null && triggeringElement.attr("id") != "nights_bottom") {
				var oneDay = 1000*60*60*24;
				var difference = Math.ceil((salidaDate.getTime() - entradaDate.getTime()) / oneDay);
						noches.val(difference);
			} else if (entradaDate != null && triggeringElement.attr("id") == "nights_bottom") { 
				var nightsEntered = parseInt(noches.val());
				if (nightsEntered >= 1) {
					var oneDay = 1000*60*60*24;     
					var newsalidaDate = new Date();
					newsalidaDate.setTime(entradaDate.getTime() + (nightsEntered * oneDay));
					salida.datepicker("setDate", newsalidaDate);
				} else {
					nigths.val('1');
					alert("Estancia minima de 1 noche.");
				}
			} 	
			if(entrada.val()!=""){        	
				$('#from_bottom').val(entrada.val());
			}
			if(salida.val()!=""){
				$('#to_bottom').val(salida.val());
			}
			$('#nights_bottom').val(noches.val());
		}
		
		$("#from_bottom, #to_bottom").datepicker({
		   showOtherMonths: true,
			showOn: 'both',
			buttonImage: '/i/df_ico_calendar1.gif',
			buttonImageOnly: true,
			regional:'es',
			//esta incluido en el js de regional - dateFormat:"dd/mm/yy", 
			showAnim: "slideDown",
			onSelect: DatePicked_bottom
		});
		
		$("#nights_bottom").change(DatePicked);
		
		DatePicked_bottom();
	}
	
		
	
});
