function checkFields(form, isRenew){

	if (! isRenew){
		//if (form.sp_code.value.match(/^\s*adidas\s*$/i)){
		//	form.sp_code.value = '';
		//}
		
		if (form.sc_type.selectedIndex == 0){
			alert("Please indicate the relationship of your guardian.");
			form.sc_type.focus();
			return false;
		}

		if (form.sc_fname.value == ""){
			alert("Please enter the first name of your guardian.");
			form.sc_fname.focus();
			return false;
		}
	
		if (form.sc_lname.value == ""){
			alert("Please enter the last name of your guardian.");
			form.sc_lname.focus();
			return false;
		}
	
		if (! checkEmail(form.sc_email.value)){
			alert("Please enter a valid e-mail address for your guardian.");
			form.sc_email.focus();
			return false;
		}
	
		if (form.s_fname.value == ""){
			alert("Please enter your first name.");
			form.s_fname.focus();
			return false;
		}
	
		if (form.s_lname.value == ""){
			alert("Please enter your last name.");
			form.s_lname.focus();
			return false;
		}
		
		if (form.s_grade.selectedIndex == 0){
			alert("Please indicate your school year.");
			form.s_grade.focus();
			return false;
		}
	}
	
	if (form.pt_id.selectedIndex == 0){
		alert("Please choose an enrollment option.");
		form.pt_id.focus();
		return false;
	}
	
	if (! isRenew){
	
		if (! checkEmail(form.s_email.value)){
			alert("Please enter a valid e-mail.");
			form.s_email.focus();
			return false;
		}
	
		if (form.s_password.value == ""){
			alert("Please enter a password for your account.");
			form.s_password.focus();
			return false;
		}
	
		if (form.s_password.value != form.password_confirm.value){
			alert("Please re-confirm your password.");
			form.password_confirm.focus();
			return false;
		}
	
		if (form.p_id.selectedIndex == 0){
			alert("Please indicate your position.");
			form.p_id.focus();
			return false;
		}
	} else {
		return checkPayment(form);
	}
	
	
	return true;
}

function checkPayment(form){

	if (form.sp_card_type.selectedIndex == 0){
		alert("Please indicate the credit card type you will be using.");
		form.sp_card_type.focus();
		return false;
	}
	
	if (form.card_number.value.length < 13){
		alert("Please enter a valid credit card number.");
		form.card_number.focus();
		return false;
	}

	if (checkCard(form.card_number.value) != 1){
		alert("Please enter a valid credit card number.");
		form.card_number.focus();
		return false;
	}
	
	if (form.sp_name_on_card.value == ""){
		alert("Please enter the name as it appears on the credit card.");
		form.sp_name_on_card.focus();
		return false;
	}
	
	if (form.sp_card_exp_month.selectedIndex == 0){
		alert("Please choose the credit cards expiration month.");
		form.sp_card_exp_month.focus();
		return false;
	}
	
	if (form.sp_card_exp_year.selectedIndex == 0){
		alert("Please choose the credit cards expiration year.");
		form.sp_card_exp_year.focus();
		return false;
	}
	
	if (form.card_code.value.length < 3){
		alert("Please enter the credit card security code.");
		form.card_code.focus();
		return false;
	}
	
	if (form.sp_card_address.value == ""){
		alert("Please enter the credit cards billing address.");
		form.sp_card_address.focus();
		return false;
	}
	
	if (form.sp_card_zip.value == ""){
		alert("Please enter the credit cards billing zip code.");
		form.sp_card_zip.focus();
		return false;
	}
	
	if (! form.agree.checked){
		alert("Please agree to the License and User Agreement");
		form.agree.focus();
		return false;
	}

    return true;
}

function checkEmail(src) {
	var regex = /(^[a-zA-Z0-9]([0-9a-zA-Z_\.\'\-]*)@[a-zA-Z0-9]([a-zA-Z0-9\_\-]*)\.[a-zA-Z0-9]([0-9a-zA-Z_\.\-]*)([a-zA-Z])$)/i;
	return regex.test(src);
}

function checkCard(cardnumber){

	var sum_me = 0;
	var Location = 0;
	var num = 0;

//	# Add even digits in even length strings
//	# or odd digits in odd length strings.

	for (Location = 1 - (cardnumber.length % 2); Location < cardnumber.length; Location += 2) {
		sum_me = sum_me + parseInt(cardnumber.charAt(Location));
	}

//	# Analyze odd digits in even length strings
//	# or even digits in odd length strings.

	for (Location = (cardnumber.length % 2); Location < cardnumber.length; Location += 2) {
		num = parseInt(cardnumber.charAt(Location)) * 2;
		if (num < 10) {
			sum_me = sum_me + num;
		} else {
			sum_me = sum_me + (num - 9);
		}
	}
	
	if ((sum_me % 10) == 0){
		return 1;
	}

	return sum_me;
}

