function validate() {
	var form = document.theForm;
	var global = document.globals;
	var nextInstallmentDate = "";
	if ( form.lname.value == "" ) {
		alert( "You must enter your name" );
		return false;
	}
	if ( form.level[4].checked && form.sname.value == "" ) {
		alert( "You must enter spouse name for a Couples membership" );
		return false;
	}
	form.bname.value = form.fname.value + " " + form.lname.value;
	if ( form.sname.value == "" ) {
		form.name.value = form.bname.value;
	} else {
		form.name.value = form.bname.value + " & " + form.sname.value;
	}
	if ( form.baddr1.value == "" || form.bcity.value == "" || form.bstate.value == "" || form.bzip.value == "" ) {
		alert( "You must enter your complete address" );
		return false;
	}
	if ( form.e_mail.value == "" ) {
		alert( "You must enter your e-mail address" );
		return false;
	}
	form.addr.value = form.baddr1.value;
	form.addr2.value = form.baddr2.value;
	form.citystzip.value = form.bcity.value + "," + form.bstate.value + "  " + form.bzip.value;
	form.email.value = form.e_mail.value;
	form.ecitystzip.value = form.ecity.value + "," + form.estate.value + "  " + form.ezip.value;
	var installment, amt, fullprice;
	amt = 0;
	fullprice = 0
	form.detail.value = "";
	if ( form.chargetype[1].checked ) {
		installment = "quarterly";
	} else if ( form.chargetype[2].checked ) {
		installment = "monthly";
	}
	if ( form.level[0].checked ) {
		switch ( installment ) {
		case "quarterly" :
			amt = 625;
			break;
		case "monthly" :
			amt = 208;
			break;
		default :
			amt = 2500;
			break;
		}
		fullprice = 2500;
		form.detail.value = "Trustee Club ";
	} else if ( form.level[3].checked ) {
		switch ( installment ) {
		case "quarterly" :
			amt = 250;
			break;
		case "monthly" :
			amt = 83;
			break;
		default :
			amt = 1000;
			break;
		}
		fullprice = 1000;
		form.detail.value = "President's Club ";
	} else if ( form.level[6].checked ) {
		switch ( installment ) {
		case "quarterly" :
			amt = 75;
			break;
		case "monthly" :
			amt = 25;
			break;
		default :
			amt = 300;
			break;
		}
		fullprice = 300;
		form.detail.value = "Eleanor Roosevelt Club ";
	} else if ( form.level[8].checked ) {
		switch ( installment ) {
		case "quarterly" :
			amt = 31;
			break;
		case "monthly" :
			amt = 10;
			break;
		default :
			amt = 125;
			break;
		}
		fullprice = 125;
		form.detail.value = "Century Club ";
	} else if ( form.level[1].checked ) {
		switch ( installment ) {
		case "quarterly" :
			amt = 19.5;
			break;
		case "monthly" :
			amt = 6.5;
			break;
		default :
			amt = 78;
			break;
		}
		fullprice = 78
		form.detail.value = "Neil Staebler Club ";
	} else if ( form.level[4].checked ) {
		switch ( installment ) {
		case "quarterly" :
		case "monthly" :
			alert( "Couples membership requires full payment" );
			return false;
		default :
			amt = 60;
			break;
		}
		form.detail.value = "Couples ";
	} else if ( form.level[7].checked ) {
		switch ( installment ) {
		case "quarterly" :
		case "monthly" :
			alert( "Supporter membership requires full payment" );
			return false;
		default :
			amt = 40;
			break;
		}
		form.detail.value = "Supporter ";
	} else if ( form.level[9].checked ) {
		switch ( installment ) {
		case "quarterly" :
		case "monthly" :
			alert( "Basic membership requires full payment" );
			return false;
		default :
			amt = 20;
			break;
		}
		form.detail.value = "Basic ";
	} else if ( form.level[2].checked ) {
		switch ( installment ) {
		case "quarterly" :
		case "monthly" :
			alert( "Retiree membership requires full payment" );
			return false;
		default :
			amt = 10;
			break;
		}
		form.detail.value = "Retiree ";
	} else if ( form.level[5].checked ) {
		switch ( installment ) {
		case "quarterly" :
		case "monthly" :
			alert( "Student membership requires full payment" );
			return false;
		default :
			amt = 10;
			break;
		}
		form.detail.value = "Student ";
	} else if ( form.level[10].checked ) {
		switch ( installment ) {
		case "quarterly" :
		case "monthly" :
			alert( "Other membership requires full payment" );
			return false;
		default :
			amt = parseInt( form.otheramount.value );
			if ( isNaN(amt) || amt < 1 ) {
				alert( "Amount must be entered for Other membership" );
				return false;
			}
			break;
		}
		form.detail.value = "Other ($" + amt + ") ";
	}
	if ( amt < 1 ) {
		alert( "You have not ordered a membership." );
		return false;
	}
	if ( fullprice < amt ) {
		fullprice = amt;
	}
	if ( form.twoyear.checked == true ) {
		form.detail.value = "Two year " + form.detail.value;
		if ( amt == fullprice ) {
			amt = amt * 2
		}
		fullprice = fullprice * 2;
	}
	form.detail.value += "Membership";
	if ( fullprice > 100 && ( form.occupation.value == "" || form.employer.value == "" || form.eaddr.value == "" ) && global.FirstWarning.value == "true" ) {
		alert ( "Your donation excedes $100.  Please enter your occupation and employer name and address" );
		global.FirstWarning.value = false;
		return false;
	}
	form.chargetotal.value = fullprice;
	switch ( installment ) {
	case "quarterly" :
		form.submode.value = "periodic";
		form.periodicity.value = "m3";
		var theDate = new Date();
		var yr = theDate.getFullYear();
		var nextyr = yr;
		var mo = theDate.getMonth() + 1;
		var nextmo = mo + 3;
		var dy = theDate.getDate();
		if ( nextmo > 12 ) {
			nextmo = nextmo - 12;
			nextyr = nextyr + 1;
		}
		if ( mo < 10 ) {
			mo = "0" + mo;
		}
		if ( nextmo < 10 ) {
			nextmo = "0" + nextmo;
		}
		if ( dy < 10 ) {
			dy = "0" + dy;
		}
		form.startdate.value = yr + mo + dy;
		nextInstallmentDate = nextmo + "/" + dy + "/" + nextyr;
		if ( form.twoyear.checked == true ) {
			form.installments.value = "8";
		} else {
			form.installments.value = "4";
		}
		form.chargetotal.value = amt;
		break;
	case "monthly" :
		form.submode.value = "periodic";
		form.periodicity.value = "m1";
		var theDate = new Date();
		var yr = theDate.getFullYear();
		var nextyr = yr;
		var mo = theDate.getMonth() + 1;
		var nextmo = mo + 1;
		var dy = theDate.getDate();
		if ( nextmo > 12 ) {
			nextmo = nextmo - 12;
			nextyr = nextyr + 1;
		}
		if ( mo < 10 ) {
			mo = "0" + mo;
		}
		if ( nextmo < 10 ) {
			nextmo = "0" + nextmo;
		}
		if ( dy < 10 ) {
			dy = "0" + dy;
		}
		form.startdate.value = yr + mo + dy;
		nextInstallmentDate = nextmo + "/" + dy + "/" + nextyr;
		if ( form.twoyear.checked == true ) {
			form.installments.value = "24";
		} else {
			form.installments.value = "12";
		}
		form.chargetotal.value = amt;
		break;
	}
	form.shipto.value = form.saddr1.value + "\n" + form.saddr2.value + "\n" + form.scity.value + ", " + form.sstate.value + "  " + form.szip.value;
	if ( amt == fullprice ) {
		return confirm( "You have ordered\n\n" + form.detail.value + "\nTotal cost: " + amt + "\nDo you wish to submit this order?" );
	} else {
		return confirm( "You have ordered\n\n" + form.detail.value + "\nTotal cost: " + fullprice + "\nAmount to be charged today: " + amt + 
							 "\nNext payment will be charged on " + nextInstallmentDate + "\nDo you wish to submit this order?" );
	}
}

function showBenefits() {
	open( "MembershipBenefits.html", "BenefitsWindow", "toolbar=0,location=0,menubar=0,scrollbars=1,status=0,resizable=1,width=500,height=400,top=50,left=50");
}

function SpouseFocus() {
	var form = document.theForm;
	if ( !form.level[4].checked ) {
		form.lname.focus();
	}
}

function removeSpouse() {
	var form = document.theForm;
	form.sname.value = "";
}
