function GetDaysInMonth(year, month)
{
	if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
		return 31;
	else if (month == 4 || month == 6 || month == 9 || month == 11)
		return 30;
	else if (month == 2)
		return (IsLeapYear(year) ? 29 : 28);
	return 0;
}

function IsLeapYear(year)
{
	return (year % 4 == 0 && year % 100 != 0 || year % 400 == 0);
}

function IsNumeric(input)
{
	if (input == "")
		return false;
	else
		return (!isNaN(input));
}

function IsDate(year, month, day)
{
	year = parseInt(year, 10);
	if (isNaN(year) || year < 1900 || year > 2100)
		return false;

	month = parseInt(month, 10);
	if (isNaN(month) || month < 1 || month > 12)
		return false;

	var lastDay = GetDaysInMonth(year, month);
	if (isNaN(day) || day < 1 || day > 31)
		return false;

	day = parseInt(day, 10);
	return (day > 0 && day <= lastDay && !isNaN(day))
}     

function IsEmpty(input)
{
	var exp = /^\s*$/;
	return exp.test(input);
}

function IsHour(hour, minute, second)
{
	hour = parseInt(hour, 10);
	if (isNaN(hour) || hour < 0 || hour > 23)
		return false;

	minute = parseInt(minute, 10);
	if (isNaN(minute) || minute < 0 || minute > 59)
		return false;

	minute = parseInt(second, 10);
	if (isNaN(second) || second < 0 || second > 59)
		return false;
	return true;
}

function IsPositiveInt(input)
{
	if (input == "0")
		return false;

	var exp = /^\d+$/;
	return exp.test(input);
}

function Message(msg, input)
{
	alert(msg);
	input.focus();
}
//----------------------------------
// Verifica si el EMail es correcto
//----------------------------------
function IsEMail(sMail)
{
  var iLastPos = sMail.length - 1;
  for (var iPos = 0; iPos <= iLastPos; iPos++)
    if (sMail.charAt(iPos) < "!" || sMail.charAt(iPos) > "~")
      return false;

  iPos = sMail.indexOf("@");
  if (iPos < 1 || iLastPos == iPos || sMail.charAt(iLastPos) == "." ||
      sMail.indexOf("@", iPos + 1) >= 0 || sMail.indexOf(".", iPos + 1) < iPos + 2)
    return false;
  return true;
}
//----------------------------------
// Verifica si la URL es correcta
//----------------------------------
function IsURL(sURL)
{
	urlRegExp = /^(http:\/\/|https:\/\/)\w\S*$/;
	if (urlRegExp.test(sURL))
		return true;
	else
		return false;
}

