jQuery(function($) {
	iniciarDatePicker();			
});

function iniciarDatePicker() {
	jQuery(function($){
		$.datepicker.regional['es'] = {
			clearText: 'Limpiar', clearStatus: '',
			closeText: 'Cerrar', closeStatus: '',
			prevText: '', prevStatus: '',
			prevBigText: '&#x3c;&#x3c;', prevBigStatus: '',
			nextText: '', nextStatus: '',
			nextBigText: '&#x3e;&#x3e;', nextBigStatus: '',
			currentText: 'Hoy', currentStatus: '',
			monthNames: ['Enero','Febrero','Marzo','Abril','Mayo','Junio',
			'Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'],
			monthNamesShort: ['Ene','Feb','Mar','Abr','May','Jun',
			'Jul','Ago','Sep','Oct','Nov','Dic'],
			monthStatus: '', yearStatus: '',
			weekHeader: 'Sm', weekStatus: '',
			dayNames: ['Domingo','Lunes','Martes','Mi&eacute;rcoles','Jueves','Viernes','S&aacute;dabo'],
			dayNamesShort: ['Dom','Lun','Mar','Mi&eacute;','Juv','Vie','S&aacute;b'],
			dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','S&aacute;'],
			dayStatus: 'DD', dateStatus: 'D, M d',
			dateFormat: 'dd/mm/yy', firstDay: 1, 
			initStatus: '', isRTL: false};
		$.datepicker.setDefaults($.datepicker.regional['es']);
	});		
	$.datepicker.setDefaults($.datepicker.regional['es']);	
	$(".cal_inicio, .cal_fin").datepicker({ 
		beforeShow: verificaRango
	});	
	$(".cal").datepicker();	
}

function verificaRango(campo) {
	var minimo = null;
	var maximo = null;
	var act = new Date();
	var inicio = $(campo).hasClass("cal_inicio") ? campo : $(this).siblings(".cal_inicio");
	var fin =  $(campo).hasClass("cal_fin") ? campo : $(this).siblings(".cal_fin");
	var campo_inicio = $(inicio).attr("value")!="" ? diaMesAnoDateSumaDia($(inicio).datepicker("getDate"), 1) : null;
	var campo_final = $(fin).attr("value")!="" ? diaMesAnoDateSumaDia($(fin).datepicker("getDate"), -1) : null;
	if ($(campo).hasClass("cal_inicio")) {
		var minimo = diaMesAnoDateSumaDia(act, 1);
		var maximo = null;
	} else {
		var minimo = campo_inicio;
	}
	return {minDate: minimo, maxDate: maximo}; 
}
function diaMesAnoDate(fecha) {
	if (fecha) {
		var t = fecha.split("/");
		return new Date(t[2],t[1]-1,t[0]);
	} else {
		return null;
	}
}
function diaMesAnoDateSumaDia(act, dias) {
	var fecha = new Date();
	fecha.setDate(act.getDate()+dias);
	fecha.setMonth(act.getMonth());
	fecha.setFullYear(act.getFullYear());
	return fecha;
}
