/* 
 * Java para implementar la funcionalidad del
 * Recuadro de reservas
 */

var $j = jQuery;
$j(document).ready(function(){

	cambTo();

	//rellena dropdown de duracion y paquetes al cambiar los motivos
	$j("#tipoMot").change(function(){
		$j("#resTodo1").esperaDiv('muestra');
		cambTo();
	});

	//rellena dropdown de paquetes al cambiar duraci?n
	$j("#tipoDura").change(function(){
		$j("#resTodo1").esperaDiv('muestra');
		cambTo();
	});

	//rellena dropdown de paquetes al cambiar el paquete
	$j("#tipoPaq").change(function(){
		$j("#resTodo1").esperaDiv('muestra');
		cambTo();
	});
	
//	pone frecuencia en null
	$j("#frec").val('');
	
//	rellena la fecha si hay alguna en fechaa
	$j('#fecha').val($j('#fechaas').val());

	//funcionalidad vuelos
	$j("#vuelo").click(function(){$j("#vuelDiv").css('display','block');$j("#vervuelDiv").css('display','block');});
	$j("#svuelo").click(function(){$j("#vuelDiv").css('display','none');$j("#vervuelDiv").css('display','none');$j("#dest").val('');$j("#Oorig").val('')});
	$j("#vue").change(function (){$j("#vuelito").val($j("#vue").val())});
	$j("#dest").change(function(){
		vuelos();
		$j("#vuelito").val($j("#vue").val());
	});
	if($j("#detino").val() != '') {
		$j('#dest').val($j("#detino").val());
		vuelos();
	} else $j("#dest").get(0).options[0].selected = true;
//	alert($j("#dest").val());
		
	function vuelos() {
		$j("#resTodo1").esperaDiv('muestra');
		$j.post('frontend/ejec.php',{
			fun:'revVuel',
			ori: $j('#dest').val(),
			fecha: $j("#fecha").val(),
			cult: $j("#cult").val()
		},function(data){
			if($j.isEmptyObject(data) === false) {
				$j("#resTodo1").esperaDiv("cierra");
				var datos = eval('(' + data + ')');
				$j("#vue").get(0).options.length = 0;
				$j("#vue").get(0).options[0] = new Option($j("#seleccione").val(),'');
				for(i=0;i<datos.length;i++){
					$j("#vue").get(0).options[i] = new Option(datos[i].desc,datos[i].id);
				}
				var vuelito = $j("#vue").val();
				$j("#vuelito").val($j("#vue").val());
//				recalcula();
			}
		});
	}

	//buscador
	var buscPa = $j("#entrBusc").val();
	$j("#entrBusc").focus(function(){
		$j(this).val('');
	}).blur(function(){
		if ($j(this).val() == '') $j(this).val(buscPa);
	});
	
	
/*TODO: ver que es esto*/
	//chequeo del env?o del formulario de reservas
	$j("#reserForm").submit(function(){
		var paq = $j("#tipoPaq");
		var dest = $j("#dest");
		var ori = $j("#Oorig");
		var fec = $j("#fecha");
		var vueDiv = $j("#vuelDiv");
		var man = new Date();
		man = man.setDate(man.getDate()+0); //se suma cero debido a que comparo esta fecha que si tiene horas con otra que tiene 00:00:00
		var arrF = $j("#fecha").val().split("/");
		var fecH = new Date(arrF[2],arrF[1]-1,arrF[0]);
		fecH = fecH.setDate(fecH.getDate());
		if (paq.val() == '') {
			$j("#alePaq").css('display','block');
			paq.focus();
			return false;
		}
		if (vueDiv.css('display') == 'block' && dest.val() == '' && ori.val() == '') {
			$j("#aleOri").css('display','block');
			dest.focus();
			return false;
		}
		if (fec.val() == '') {
			$j("#aleFec").css('display','block');
			fec.focus();
			return false;
		}
		if (man > fecH) {
			$j("#aleFec").css('display','block');
			fec.focus();
			return false;
		}
		return true;
		
	});
	
	//fecha
	
	$j('#fecha').DatePicker({
		format:'d/m/Y',
		date: $j('#fecha').val(),
		current: $j('#fecha').val(),
		starts: 1,
		position: 'bottom',
		onBeforeShow: function(){
			$('#fecha').DatePickerSetDate($j('#fecha').val(), true);
		},
		onChange: function(formated, dates){
			$j('#fecha').val(formated);
			$j('#fechaas').val($('#fecha').val());
//			$j('#fecha').DatePickerHide();
		},
		onRender: function(date) {
			return {
				disabled: fechasNo(date)
			}
		}
	});
	
//	$j(".datepickerContainer").mouseout(function(){
//		$('.datepicker').hide()
//	}); 

});

function fechasNo(fecha) {
	var now = new Date();
	var re=/,/gi;
	if (fecha.valueOf() < now.valueOf()) return true;
	
	var per = $j("#frec").val().replace(re, ' ');
	if (per.indexOf(fecha.getDay()) > -1) return false;
	return true
}


function cambTo() {
	$j.post('frontend/ejec.php',{
		fun:'cambMot',
		mot: $j('#tipoMot').val(),
		paq: $j('#tipoPaq').val(),
		dur: $j('#tipoDura').val(),
		cult: $j("#cult").val()
	},function(data){
		if($.isEmptyObject(data) === false) {
			var datos = eval('(' + data + ')');
			var arridpaq = datos.idpaqSal.split("|");
			var arrpaq = datos.paquet.split("|");
			var frec = datos.frec.split("|");
			var arriddur;
			var arrdur;
			var duracAnt = $j("#tipoDura").val();
			var paqAnt = $j("#tipoPaq").val();
			$j("#tipoPaq").get(0).options.length = 0;
			$j("#tipoPaq").get(0).options[0] = new Option($j("#seleccione").val(),'%');
			for(i=0;i<arrpaq.length;i++){
				$j("#tipoPaq").get(0).options[i+1] = new Option(arrpaq[i],arridpaq[i]);
				if(arridpaq[i] == paqAnt) $j("#tipoPaq").get(0).options[i+1].selected = true;
			}
			arriddur = datos.durac.split("|");
			arrdur = datos.durac.split("|");
			$j("#tipoDura").get(0).options.length = 0;
			$j("#tipoDura").get(0).options[0] = new Option($j("#seleccione").val(),'%');
			for(i=0;i<arrdur.length;i++){
				$j("#tipoDura").get(0).options[i+1] = new Option(arrdur[i],arriddur[i]);
				if(arriddur[i] == duracAnt) $j("#tipoDura").get(0).options[i+1].selected = true;
			}
			
			$j("#frec").val(frec[0]);
			$j("#resTodo1").esperaDiv("cierra");
		}
	});
}

