

function checkDate(dateField) {
	date = dateField.value;
	error = false;
	if (date != "") {
		month = date.substring(0,2);
		year = date.substring(3,5);
		
		if (!isInt(month) || !isInt(year)) 
			error = true;
		if (date.charAt(2) != "/")
			error = true;
		if (error) {
			alert("Please enter the date using this format: \n(MM/YY)");
			dateField.focus();
			return false;
		}
	}
	return true;
}

function isInt(field) {
	var valid = "0123456789.";
	var decimalCount = 0;
	for (var i=0; i<field.length; i++) {
		if (valid.indexOf(field.charAt(i)) =="-1") return false;
		if (field.charAt(i) == ".") decimalCount += 1;
		if (decimalCount > 1) return false;
	}
	return true;
}


function validate(form) {
	 
	var ok = 0;
	
	// Check required fields
	
	if (isEmpty(form.ccNum.value)) {
		alert("Please enter credit card number.");
		form.ccNum.focus();
		return false;
	}
	if (isEmpty(form.ccExpDate.value)) {
		alert("Please enter expiration date.");
		form.ccExpDate.focus();
		return false;
	}
	if (isEmpty(form.x_card_code.value)) {
		alert("Please enter card CVV2 (security) code.");
		form.x_card_code.focus();
		return false;
	}
	if (isEmpty(form.firstname.value)) {
		alert("Please enter first name.");
		form.firstname.focus();
		return false;
	}
	
	if (isEmpty(form.lastname.value)) {
		alert("Please enter last name.");
		form.lastname.focus();
		return false;
	}
	if (isEmpty(form.address1.value)) {
		alert("Please enter billing address.");
		form.address1.focus();
		return false;
	}
	if (isEmpty(form.city.value)) {
		alert("Please enter billing city.");
		form.city.focus();
		return false;
	}
	if (isEmpty(form.zip.value)) {
		alert("Please enter billing zip.");
		form.zip.focus();
		return false;
	}
	if (isEmpty(form.email.value)) {
		alert("Please enter your email address.");
		form.email.focus();
		return false;
	}
	
	if (isEmpty(form.phone.value)) {
		alert("Please enter billing phone number.");
		form.phone.focus();
		return false;
	}
	
	if (form.state.options[form.state.selectedIndex].value == "0")
	{
		alert("Please enter billing state.");
		form.state.focus();
		return false;
	}
	
		
	return true;
}

function phoneFormat(phoneNum) {
	numbers = phoneNum.substring(0,3) + phoneNum.substring(4,7) + phoneNum.substring(8,12);
	if (phoneNum.charAt(3) != "-" || phoneNum.charAt(7) != "-")
		return false;
	// loop through numbers and check if all valid
	for (var i=0; i<numbers.length; i++) {
		if (!isInt(numbers.charAt(i)))
			return false
	}
	return true;
}

function lTrim(theString) {
	while(1) {
		if (theString.substring(0,1) != " ") 
			break;
		theString = theString.substring(1,theString.length);
	}
	return theString;
}
		
function isEmpty(inputVal) {
	var inputStr = lTrim(inputVal.toString());
	if (inputStr.length < 1) {
		return true;
	}
	return false;
}

