// JavaScript Document
function chkdate(input, type)
{
	var monthLength = new Array(31,28,31,30,31,30,31,31,30,31,30,31);

	var day = parseInt(input.split(".")[0]);
	var month = parseInt(input.split(".")[1]);
	var year = parseInt(input.split(".")[2]);

	if (!day || !month || !year)
		return false;

	if (year/4 == parseInt(year/4))
		monthLength[1] = 29;

	if (day > monthLength[month-1])
		return false;

	monthLength[1] = 28;

	var now = new Date();
	now = now.getTime(); //NN3

	var dateToCheck = new Date();
	dateToCheck.setYear(year);
	dateToCheck.setMonth(month-1);
	dateToCheck.setDate(day);
	var checkDate = dateToCheck.getTime();

	var futureDate = (now < checkDate);
	var pastDate = (now > checkDate);

	switch(type)
	{
		case 'past':
			return pastDate;
			break;
		case 'future':
			return futureDate;
			break;
      		default:
      			return checkDate;         
   	}
}

function chkemail(input)
{
	var goodEmail = input.match(/\b(^(\S+@).+((\.aero)|(\.biz)|(\.cat)|(\.com)|(\.coop)|(\.info)|(\.jobs)|(\.mobi)|(\.museum)|(\.name)|(\.net)|(\.org)|(\.pro)|(\.travel)|(\.gov)|(\.edu)|(\.mil)|(\.int)|(\..{2,2}))$)\b/gi);
	return goodEmail;
}

function chkint(input)
{
	var result = parseInt(input);
	
	if (String(result) == "NaN")
	{
		return false;
	}
	else
	{
		return true;
	}
}

function chkfloat(input)
{
	try
	{
		parseFloat(input);
		return true;
	}
	catch(err)
	{
		return false;
	}
}
