// MÉTODOS NECESARIOS PARA MOSTRAR EL jsCALeNDAR EN LAS JSP

selected = function(cal, date) {
	cal.sel.value = date; // actualitzem la data en el input seleccionat
	if (cal.dateClicked)
		cal.callCloseHandler();
}

closeHandler = function(cal) {
	cal.hide();
	_dynarch_popupCalendar = null;
}

showCalendar = function(id, format, showsTime, showsOtherMonths, itemToShow) {
	var el = document.getElementById(id);
	var any = new Date().getFullYear(); // Establecemos como año máximo el actual
	
	if (_dynarch_popupCalendar != null) {
		_dynarch_popupCalendar.hide();
	} else {
		var cal = new Calendar(1, null, selected, closeHandler);
		cal.weekNumbers = false;
		
		if(showsTime == null) showsTime == "24";
		if (typeof showsTime == "string") {
			cal.showsTime = false;
			cal.time24 = (showsTime == "24");
		}
		if (showsOtherMonths) {
			cal.showsOtherMonths = true;
		}
		_dynarch_popupCalendar = cal;
		cal.setRange(1900, any);
		cal.create();
	}
	
	_dynarch_popupCalendar.setDateFormat(format);
	_dynarch_popupCalendar.parseDate(el.value);
	_dynarch_popupCalendar.sel = el;
	
	_dynarch_popupCalendar.showAtElement($(itemToShow)); // mostra el calendari
	
	return false;

}

validaFecha = function (value){  
	var fecha = new String(value);  
	var any = new String(fecha.substring(fecha.lastIndexOf("/")+1,fecha.length))  
	var mes = new String(fecha.substring(fecha.indexOf("/")+1,fecha.lastIndexOf("/")))  
	var dia = new String(fecha.substring(0,fecha.indexOf("/"))) 
	var hoy = new Date();
	if (isNaN(any) || any.length<4 || parseFloat(any)<1900 || parseFloat(any)>hoy.getFullYear()){  
		return false  
	}  
	if (isNaN(mes) || parseFloat(mes)<1 || parseFloat(mes)>12){  
		return false  
	}    
	if (isNaN(dia) || parseInt(dia, 10)<1 || parseInt(dia, 10)>31){  
		return false  
	}  
	if (mes==4 || mes==6 || mes==9 || mes==11 || mes==2) {  
		if (mes==2 && dia > 28 || dia>30) {  
	       	return false  
	    }  
	}  
	return true
}  
