// JavaScript Document
function getValue(obj)
{
	return obj.value;
}

function setFocus(obj)
{
	obj.focus();
	return true;
}

function checkField(obj, errMsg)
{
	if (getValue(obj) == '')
	{
		alert(errMsg);
		setFocus(obj);
		return false;
	}

	return true;
}

function checkEmail(obj, blankMsg, wrongMsg)
{
	if (!checkField(obj, blankMsg))
		return false;

	if (getValue(obj).indexOf('@') < 0 || getValue(obj).lastIndexOf('.') < getValue(obj).indexOf('@'))
	{
		alert(wrongMsg);
		setFocus(obj);
		return false;
	}

	return true;
}

function checkTick(obj, errMsg)
{
	if (!document.getElementById(obj).checked)
	{
		alert(errMsg);
		setFocus(obj);
		return false;
	}

	return true;
}

function checkDate(day, month, year)
{
//	alert(day + ',' + month + ',' + year);
	//Date Checker!
	if (isNaN(day) || isNaN(year))
		return false;

	if (isNaN(month))
		month = monthNum(month);

	if (month == false)
		return false;

	var days = new Array();
	days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

	if (year % 4 == 0)
		days[1] = 29;

	if (month > 12 || month < 1)
		return false;

	if (day > days[month - 1] || day < 1)
		return false;

	return true;
}

function monthName(val)
{
	return monthName(val, 'short');
}

function monthName(val, len)
{
	if (isNaN(val) || val < 1 || val > 12)
		return val;

	switch (val) {
		case '1':
			retVal = (len == 'short') ? 'Jan' : 'January';
			break;
		case '2':
			retVal = (len == 'short') ? 'Feb' : 'February';
			break;
		case '3':
			retVal = (len == 'short') ? 'Mar' : 'March';
			break;
		case '4':
			retVal = (len == 'short') ? 'Apr' : 'April';
			break;
		case '5':
			retVal = 'May';
			break;
		case '6':
			retVal = (len == 'short') ? 'Jun' : 'June';
			break;
		case '7':
			retVal = (len == 'short') ? 'Jul' : 'July';
			break;
		case '8':
			retVal = (len == 'short') ? 'Aug' : 'August';
			break;
		case '9':
			retVal = (len == 'short') ? 'Sep' : 'September';
			break;
		case '10':
			retVal = (len == 'short') ? 'Oct' : 'October';
			break;
		case '11':
			retVal = (len == 'short') ? 'Nov' : 'November';
			break;
		case '12':
			retVal = (len == 'short') ? 'Dec' : 'December';
			break;
	}

	return retVal;
}

function monthNum(val)
{
	retVal = false;

	if (!isNaN(val))
		return val;

	switch (val.toLowerCase()) {
		case 'jan':
		case 'january':
			retVal = 1;
			break;
		case 'feb':
		case 'february':
			retVal = 2;
			break;
		case 'mar':
		case 'march':
			retVal = 3;
			break;
		case 'apr':
		case 'april':
			retVal = 4;
			break;
		case 'may':
			retVal = 5;
			break;
		case 'jun':
		case 'june':
			retVal = 6;
			break;
		case 'jul':
		case 'july':
			retVal = 7;
			break;
		case 'aug':
		case 'august':
			retVal = 8;
			break;
		case 'sep':
		case 'sept':
		case 'september':
			retVal = 9;
			break;
		case 'oct':
		case 'october':
			retVal = 10;
			break;
		case 'nov':
		case 'november':
			retVal = 11;
			break;
		case 'dec':
		case 'december':
			retVal = 12;
			break;
	}

	return retVal;
}
