





	var dayArray = new Array (13);

	dayArray [0] = -1;

	dayArray [1] = 31;

	dayArray [2] = 28;

	dayArray [3] = 31;

	dayArray [4] = 30;

	dayArray [5] = 31;

	dayArray [6] = 30;

	dayArray [7] = 31;

	dayArray [8] = 31;

	dayArray [9] = 30;

	dayArray [10] = 31;

	dayArray [11] = 30;

	dayArray [12] = 31;



	function isInteger (pValue) {

		var lIsInteger = true;

		var lChar;

		for (var i = 0; i < pValue.length; i++) {

			lChar = pValue.toString().substring(i, i+1);

			if (! (lChar >= "0" && lChar <= "9")) {

				lIsInteger = false;

				break;

			}

		}	// End of for

		return lIsInteger;

	}	// End of function isInteger



	function isLeapYear (pYear) {

		if (((pYear % 400) == 0) || ((pYear % 4) == 0 && (pYear % 100) != 0))

			return true;

		else

			return false;

	}	// End of function isLeapYear



	function isValidDate (pYear, pMonth, pDay, pDescr) {



                var error_msg= "Fecha no valida en el campo '" + pDescr + "' :\n "



		var lIsValid = true;

		var lYear = parseInt (pYear, 10);

		var lMonth = parseInt (pMonth, 10);

		var lDay = parseInt (pDay, 10);
		
		//	All components must be numeric

		if (

		(! (isInteger (pYear) && isInteger (pMonth) && isInteger (pDay))) ||

		(   isNaN(lYear) || isNaN(lMonth) || isNaN(lDay) )) {

			lIsValid = false;

			error_msg=error_msg + "\nFecha debe ser numérica."

		}

		//	Month should be in range of 1-12



		if (lMonth < 1 || lMonth > 12) {

			lIsValid = false;

			error_msg=error_msg + "\nMes debe estar entre 1 y 12."

		}



		//	Day should be within the range

		

		if (lDay < 1 || lDay > (dayArray[lMonth] + ((isLeapYear (lYear) && lMonth == 2) ? 1 : 0))) {

			lIsValid = false;

			error_msg=error_msg + "\nEl día para ese mes no esta en un intervalo válido."

		}





		//	Year should be 4 digits..year 2000 compliance =)

	

		if (pYear.length < 4) {

			lIsValid = false;

			error_msg=error_msg + "\nAño debe  tener 4 dígitos."

		}



		if ( lIsValid == false )

		{

			alert (error_msg);		

		}



		return lIsValid;

	}	// End of function isValidDate





