// JavaScript Document

function checkEmail(formElement) {
	if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(formElement.value))){		
		return false;	
	} else {
		return true;
	}
}

function checkRadio(formElement) {
	var cnt = -1;

	for (var i=formElement.length-1; i > -1; i--) {
        if (formElement[i].checked) {cnt = i; i = -1;}
    }
	
    if (cnt == -1) {
		//alert("Please select a Charity to proceed");
		return false;
	}
		
	return true;	
}

function checkMe(form) {
	if(form.FirstName.value == '') {
		alert('Please enter your First Name');
		form.FirstName.focus();
		return false;
	} else if(form.LastName.value == '') {
		alert('Please enter your Last Name');
		form.LastName.focus();
		return false;
	} else if(form.Address.value == '') {
		alert('Please enter your Address');
		form.Address.focus();
		return false;
	} else if(form.City.value == '') {
		alert('Please enter your City');
		form.City.focus();
		return false;
	} else if(form.State.value == '') {
		alert('Please enter your State');
		//form.State.focus();
		return false;
	} else if(form.Country.value == '') {
		alert('Please enter your Country');
		//form.Country.focus();
		return false;
	} else if(!checkEmail(form.Email)) {
		alert('Please enter a valid Email Address.');
		form.Email.focus();
		return false;
	} else if(form.Phone.value == '') {
		alert('Please enter your Phone Number');
		form.Phone.focus();
		return false;
	} /*else if(!checkRadio(form.Publication)) {
		alert('Please enter your Publication selection');
		//form.Publication.focus();
		return false;
	} else if(!CheckCardNumber(form))	{
		return false;
	} */else {
		return true;
	}
}


function checkSubscribe(form) {
	//alternate shipping address	
	if(form.FirstName.value == '') {
		alert('Please enter your First Name');
		form.FirstName.focus();
		return false;
	} else if(form.LastName.value == '') {
		alert('Please enter your Last Name');
		form.LastName.focus();
		return false;
	} else if(form.Address.value == '') {
		alert('Please enter your Address');
		form.Address.focus();
		return false;
	} else if(form.City.value == '') {
		alert('Please enter your City');
		form.City.focus();
		return false;
	} else if(form.State.value == '') {
		alert('Please enter your State');
		//form.State.focus();
		return false;
	} else if(form.Zip.value == '') {
		alert('Please enter your Postal Code');
		form.Zip.focus();
		return false;
	} else if(form.Country.value == "Other" && form.Country_input.value == ""){		
		alert('Please enter the Other Country text.');
		form.Country_input.focus();
		return false;						
	} else if(!checkEmail(form.Email)) {
		alert('Please enter a valid Email Address.');
		form.Email.focus();
		return false;
	} else if(form.Phone.value == '') {
		alert('Please enter your Phone Number');
		form.Phone.focus();
		return false;
	} else if(!checkRadio(form.Publication)) {
		alert('Please enter your Publication selection');
		//form.Publication.focus();
		return false;
	} 	
	
	if(form.shipping_alt.checked) {
		
		if(form.FirstNameAlt.value == '') {
			alert('Please enter your Gift Subscription First Name');
			form.FirstNameAlt.focus();
			return false;
		} else if(form.LastNameAlt.value == '') {
			alert('Please enter your Gift Subscription Last Name');
			form.LastNameAlt.focus();
			return false;
		} else if(form.AddressAlt.value == '') {
			alert('Please enter your Gift Subscription Address');
			form.AddressAlt.focus();
			return false;
		} else if(form.CityAlt.value == '') {
			alert('Please enter your Gift Subscription City');
			form.CityAlt.focus();
			return false;
		} else if(form.StateAlt.value == '') {
			alert('Please enter your Gift Subscription State');
			form.StateAlt.focus();
			return false;
		} else if(form.ZipAlt.value == '') {
			alert('Please enter your Gift Subscription Postal Code');
			form.ZipAlt.focus();
			return false;
		} else if(form.CountryAlt.value == "Other" && form.CountryAlt_input.value == ""){		
			alert('Please enter the Gift Subscription Other Country text.');
			form.CountryAlt_input.focus();
			return false;						
		}
	}
	//just check credit card (no alt shipping address)	
	else {
		if(!CheckCardNumber(form))	{
			return false;
		} 
		else {
			return true;
		}
	}	
}

function switchSubscribeSubmit(validBOOL,submit_element) {
	
	if(validBOOL == true){
		if(submit_element.value == 'Complete Purchase'){ 
			submit_element.value = 'Please Wait.';
			return true;
		} else {
			return false;
		}
	} else {
		return false;
	}
}


function checkSubscribe2(formElement) {
	var validBOOL = true;	
	
	//alternate shipping address	
	if(formElement.FirstName.value == '') {
		alert('Please enter your First Name');
		formElement.FirstName.focus();
		validBOOL = false;
	} else if(formElement.LastName.value == '') {
		alert('Please enter your Last Name');
		formElement.LastName.focus();
		validBOOL = false;
	} else if(formElement.Address.value == '') {
		alert('Please enter your Address');
		formElement.Address.focus();
		validBOOL = false;
	} else if(formElement.City.value == '') {
		alert('Please enter your City');
		formElement.City.focus();
		validBOOL = false;
	} else if(formElement.State.value == '') {
		alert('Please enter your State');
		//formElement.State.focus();
		validBOOL = false;
	} else if(formElement.Country.value == 'US' && formElement.Zip.value == '') {
		alert('Please enter your Postal Code');
		formElement.Zip.focus();
		validBOOL = false;
	} else if(formElement.Country.value == "Other" && formElement.Country_input.value == ""){		
		alert('Please enter the Other Country text.');
		formElement.Country_input.focus();
		validBOOL = false;						
	} else if(!checkEmail(formElement.Email)) {
		alert('Please enter a valid Email Address.');
		formElement.Email.focus();
		validBOOL = false;
	} else if(formElement.Phone.value == '') {
		alert('Please enter your Phone Number');
		formElement.Phone.focus();
		validBOOL = false;
	} else if(!checkRadio(formElement.Publication)) {
		alert('Please enter your Publication selection');
		//formElement.Publication.focus();
		validBOOL = false;
	} 	
	
	if(formElement.shipping_alt.checked) {
		
		if(formElement.FirstNameAlt.value == '') {
			alert('Please enter your Gift Subscription First Name');
			formElement.FirstNameAlt.focus();
			validBOOL = false;
		} else if(formElement.LastNameAlt.value == '') {
			alert('Please enter your Gift Subscription Last Name');
			formElement.LastNameAlt.focus();
			validBOOL = false;
		} else if(formElement.AddressAlt.value == '') {
			alert('Please enter your Gift Subscription Address');
			formElement.AddressAlt.focus();
			validBOOL = false;
		} else if(formElement.CityAlt.value == '') {
			alert('Please enter your Gift Subscription City');
			formElement.CityAlt.focus();
			validBOOL = false;
		} else if(formElement.StateAlt.value == '') {
			alert('Please enter your Gift Subscription State');
			formElement.StateAlt.focus();
			validBOOL = false;
		} else if(formElement.ZipAlt.value == '') {
			alert('Please enter your Gift Subscription Postal Code');
			formElement.ZipAlt.focus();
			validBOOL = false;
		} else if(formElement.CountryAlt.value == "Other" && formElement.CountryAlt_input.value == ""){		
			alert('Please enter the Gift Subscription Other Country text.');
			formElement.CountryAlt_input.focus();
			validBOOL = false;						
		}
	}
	
	//if valid up this far, check CC
	if(validBOOL == true) {
		if(!CheckCardNumber(formElement))	{
			validBOOL = false;
		} 			
	}	
	
	//return switchSubscribeSubmit(validBOOL,formElement.submitMe);
	if(validBOOL == true) {
		if(switchSubscribeSubmit(validBOOL,formElement.submitMe)){			
			formElement.submit();
		}
	}
		
}

function checkOrder(formElement) {
	if(CheckCardNumber(formElement)) {
		formElement.submit();
	} 
}