﻿//Javascript Document
var diasReserva=7;

//mostrarLeyenda=false;
//textoLeyenda="";

		
$(document).ready(function() {
   try {
		document.execCommand("BackgroundImageCache", false, true);
	} catch(exception) {
		// other browsers do nothing
	}
	
	//ECD - Controlamos el número de meses en base a la resolucion
	var numberOfMonths=2;
	if($(window).width()<=800 || $(window).height()<=600)
	{
		numberOfMonths=1;
	}
	
	if (document.getElementById("FechaI")!=null){
		var fex_actual = new Date();
		


		if (anuncio_pago_aplazado){
			fex_actual.setDate(fex_actual.getDate() + 4);
			var fminDate=fex_actual;
		}else
		{
			var fminDate=new Date(fex_actual.getFullYear(), fex_actual.getMonth(), fex_actual.getDate());	
		}
		
		var fmaxDate=GetDateStr('31/12/' + (fex_actual.getFullYear()+1));
		
		var dates = $( "#FechaI, #FechaF" ).datepicker({
		   	//ECD - 09/05/2011 - las siguientes opciones las incluimos para evitar la lentitud en IE6.
			showAnim: null,//jQuery.support.boxModel ? 'show' : null, 
	        duration: 0,// jQuery.support.boxModel ? 'normal' : 0,
			//ECD - le indicamos que seleccione por defecto el dia siguiente
			defaultDate: "+1d",
			//showOn: "both", 
			//showOn: "button", 
			//showOn: "focus", 
			showButtonPanel: true,
			showLegend:mostrarLeyenda,
			textLegend: textoLeyenda,
			dateFormat: "dd/mm/yy",
			//ECD - No registringimos la entrada.
			constrainInput: false,
			//ECD - 04/05/2011 - Marcamos los días ocupados.
    		beforeShowDay: diaLibre,
			//beforeShow: formateoMostrar,
			changeMonth: true,
			//regional:"<%=regional%>",
			minDate:fminDate,
			maxDate:fmaxDate,
			numberOfMonths: numberOfMonths,
			onSelect: function( selectedDate ) {
				var option = this.id == "FechaI" ? "minDate" : "",
					instance = $( this ).data( "datepicker" ),
					date = $.datepicker.parseDate(
						instance.settings.dateFormat ||
						$.datepicker._defaults.dateFormat,
						selectedDate, instance.settings );
					
				dates.not( this ).datepicker( "option", option, date);
				//ECD - sumamos un día para que no permita seleccionar el mismo día.
				if (this.id=="FechaI"){
					date.setDate(date.getDate() + 1);
					//ECD - en caso de que cambiemos la fecha de inicio.
					if (($("#FechaF").datepicker("getDate")!=null) && ($("#FechaI").datepicker("getDate")!=null)){
						//ECD - si la fecha de inicio es mayor o igual que la fecha de fin ...le sumamos los días de reserva
						if(GetDateStr($("#FechaI").val())>=GetDateStr($("#FechaF").val())){
							var auxDate=new Date();
							auxDate=GetDateStr($("#FechaF").val());
							auxDate.setDate(auxDate.getDate() + diasReserva);
							$("#FechaF").val(DateToStr(auxDate));
							//$("#FechaF").val(DateToStr(Date_AddDays(GetDateStr($("#FechaI").val()),diasReserva)));
							//console.log('Inicio:' + $("#FechaI").val() + '- Fin ' + $("#FechaF").val() + ' - Días ' + diasReserva);
						}
					}
				}
				//ECD - Salimos de la caja para que se aplique el blur.
				if (this.id=="FechaI") 	
				{
					$("#btnFechaI").focus();
					//ECD - en caso de msie no basta con salir, sino que hay que ejecutar el blur
					if ( $.browser.msie ) {
						$("#FechaI").blur();
					}
				}
				else 
				{
					$("#btnFechaF").focus();
					//ECD - en caso de msie no basta con salir, sino que hay que ejecutar el blur
					if ( $.browser.msie ) {
						$("#FechaF").blur();
					}
				}
				
				
				aplicar();
			}, //onSelect
			beforeShow: function(input, inst) {
				//ECD - si tenemos fechas rellenas controlamos el intervalo de días para en caso de que las fechas se igualen o se supere, mantenga el mismo.
				if (($("#FechaF").datepicker("getDate")!=null) && ($("#FechaI").datepicker("getDate")!=null)){
					diasReserva=DateDiff.inDays(GetDateStr($("#FechaI").val()), GetDateStr($("#FechaF").val()));
					if (diasReserva<=0)
						{
						diasReserva=7;
						}
				}
				//console.log('dias reserva' + diasReserva);
			} //en beforeShow
		});
		$('#ui-datepicker-div').draggable();
	}
});

