/*
The isEmpty and isWhitespace functions were taken straight from Netscape's JavaScript development site, http://developer
.netscape.com.
*/

var numb = '0123456789';
var lwr = 'abcdefghijklmnopqrstuvwxyz';
var upr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';

function isValid(parm,val) {
	if (parm == "")
		return true;
	for (i=0; i<parm.length; i++) {
		if (val.indexOf(parm.charAt(i),0) == -1)
			return false;
	}
	return true;
}

function isNum(parm) {return isValid(parm,numb);}

// whitespace characters
var whitespace = " \t\n\r";

/****************************************************************/
function leftpad(theItem, thePad, minSize) {
	newItem = new String(theItem);
	while (newItem.length < minSize) {
		newItem = thePad + newItem;
	}
	return newItem;
}

/****************************************************************/
function isEmpty(s) {
// Check whether string s is empty.
	return ((s == null) || (s.length == 0))
}

/****************************************************************/
function isWhitespace(s) {
	var i;

// Is s empty?
	if (isEmpty(s))
		return true;

// Search through string's characters one by one
// until we find a non-whitespace character.
// When we do, return false; if we don't, return true.

	for (i = 0; i < s.length; i++)
	{
// Check that current character isn't whitespace.
	var c = s.charAt(i);
	if (whitespace.indexOf(c) == -1)
		return false;
	}

// All characters are whitespace.
	return true;
}

/****************************************************************/
function ForceEntry(val, str) {
	var strInput = new String(val.value);

	if (isWhitespace(strInput)) {
		alert(str);
		return false;
	}
	else
		return true;
}

/****************************************************************/
function ValidateCommonData() {
var USA="USA";
var CANADA="Canada";
	if (document.webform.State.selectedIndex == 0) {
		if ((document.webform.Country.value != USA) && (document.webform.Country.value != CANADA))
			document.webform.State.selectedIndex=1;
	}
	if (isEmpty(document.webform.Street_Address.value)) {
		alert("Please enter your Street Address.");
		document.webform.Street_Address.focus();
		return false;
	}

//	if ((isEmpty(document.webform.City.value)) || (document.webform.State.selectedIndex == 0) || (isEmpty(document.webform.Zip_Code.value)) || (document.webform.Country.selectedIndex == 0)) {

	if (isEmpty(document.webform.City.value)) {
		alert("Please enter your City.");
		document.webform.City.focus();
		return false;
	}
	if (document.webform.State.selectedIndex == 0) {
		alert("Please enter your State/Province.");
		document.webform.State.focus();
		return false;
	}
	if (isEmpty(document.webform.Zip_Code.value)) {
		alert("Please enter your Zip Code.");
		document.webform.Zip_Code.focus();
		return false;
	}
/*
	if (document.webform.Country.selectedIndex == 0) {
		alert("Please enter your Country.");
		document.webform.Country.focus();
		return false;
	}
*/
	return true;

}

/****************************************************************/
function ValidateMembershipData() {

/*
	if ((document.webform.MemberType[0].checked == false) && (document.webform.MemberType[1].checked == false)) {
		alert("Please indicate the type of membership you are interested in: join, renew");
		document.webform.MemberType[0].focus();
		return false;
	}
	else {
*/
		update_dues();
/*
		amtdue=0;
		if ((document.webform.Country.value == USA) || (document.webform.Country.value == CANADA))
			amtdue+=parseFloat(document.webform.membership.value);
		document.webform.amtdue.value=amtdue;
*/
/*
	}
*/
/*
	if ((document.webform.PaymentMethod[0].checked == false) && (document.webform.PaymentMethod[1].checked == false)) {
		alert("Please indicate your payment method: mail a check or pay online");
		document.webform.PaymentMethod[0].focus();
		return false;
	}
*/
	return true;

}

/****************************************************************/
function update_dues() {

USA="USA";
CANADA="CANADA";

	if (document.webform.contribution.value == "")
		document.webform.contribution.value=0;
	if (document.webform.scholarship_fund.value == "")
		document.webform.scholarship_fund.value=0;
	contribution=parseFloat(document.webform.contribution.value);
	scholarship_fund=parseFloat(document.webform.scholarship_fund.value);
	if (!isNum(contribution)) {
		alert("You entered an invalid amount for your contribution (" + document.webform.contribution.value + "). Please enter a numeric value.");
		document.webform.contribution.focus();
		return false;
	}
	if (!isNum(scholarship_fund)) {
		alert("You entered an invalid amount for your donation to the scholarship fund (" + document.webform.scholarship_fund.value + "). Please enter a numeric value.");
		document.webform.scholarship_fund.focus();
		return false;
	}
	amtdue=0;
	membership=parseFloat(document.webform.membership.value);
	membership_assoc=parseFloat(document.webform.membership_assoc.value);
	if (document.webform.MemberLevel[0].checked == true)
		amtdue=membership;
	else
		amtdue=membership_assoc;
	document.webform.duesamt.value=amtdue;
	amtdue+=contribution+scholarship_fund;
/*
	if ((document.webform.Country.value == USA) || (document.webform.Country.value == CANADA))
		amtdue+=parseFloat(document.webform.membership.value);
	else
		amtdue+=parseFloat(document.webform.membership_other_countries.value);
*/
	document.webform.total_amtdue.value=amtdue;
	document.webform.total_amtdue.value=amtdue.toFixed(2);
	document.webform.amtdue.value=amtdue;
	document.webform.amtdue.value=amtdue.toFixed(2);
	return true;

}

/****************************************************************/
function ValidateJoinData() {

//<input type=hidden name="required" value="realname,email,Phone_Number,Country,Street_Address,City,State,Zip_Code">

	if ((document.webform.MemberLevel[0].checked == false) && (document.webform.MemberLevel[1].checked == false)) {
		alert("Please indicate the type of membership you are requesting (Professional or Associate).");
		document.webform.MemberLevel[0].focus();
		return false;
	}
	if (!isNum(document.webform.contribution.value)) {
		alert("You entered an invalid amount for your contribution (" + document.webform.contribution.value + "). Please enter a numeric value.");
		document.webform.contribution.focus();
		return false;
	}
	if (!isNum(document.webform.scholarship_fund.value)) {
		alert("You entered an invalid amount for your donation to the scholarship fund (" + document.webform.scholarship_fund.value + "). Please enter a numeric value.");
		document.webform.scholarship_fund.focus();
		return false;
	}
	if (isEmpty(document.webform.realname.value)) {
		alert("Please enter your Name.");
		document.webform.realname.focus();
		return false;
	}
	if (isEmpty(document.webform.email.value)) {
		alert("Please enter your Email Address.");
		document.webform.email.focus();
		return false;
	}
	else {
		email=document.webform.email.value;
		if ((email.indexOf("@") == -1) || (email.indexOf(".") == -1)) {
			alert("Invalid email address: '" + email + "'");
			document.webform.email.focus();
			return false;
		}
	}
	if (!ValidateCommonData())
		return false;
	if (isEmpty(document.webform.Phone_Number.value)) {
		alert("Please enter your Phone Number.");
		document.webform.Phone_Number.focus();
		return false;
	}
	if (!ValidateMembershipData())
		return false;

}

/****************************************************************/
function ValidateCircleData() {

//<input type=hidden name="required" value="realname,email">

	if (isEmpty(document.webform.realname.value)) {
		alert("Please enter your Name.");
		document.webform.realname.focus();
		return false;
	}
	if (isEmpty(document.webform.email.value)) {
		alert("Please enter your Email Address.");
		document.webform.email.focus();
		return false;
	}
}

/****************************************************************/
function ValidateOrderData() {

//<input type=hidden name="required" value="realname,email,Phone_Number,Country,Street_Address,City,State,Zip_Code">

	if ((document.webform.MemberLevel[0].checked == false) && (document.webform.MemberLevel[1].checked == false) && (document.webform.MemberLevel[2].checked == false)) {
		alert("Please indicate your membership status (Professional, Associate, nonmember).");
		document.webform.MemberLevel[0].focus();
		return false;
	}
	if (isEmpty(document.webform.realname.value)) {
		alert("Please enter your Name.");
		document.webform.realname.focus();
		return false;
	}
	if (isEmpty(document.webform.email.value)) {
		alert("Please enter your Email Address.");
		document.webform.email.focus();
		return false;
	}
	else {
		email=document.webform.email.value;
		if ((email.indexOf("@") == -1) || (email.indexOf(".") == -1)) {
			alert("Invalid email address: '" + email + "'");
			document.webform.email.focus();
			return false;
		}
	}
	if (!ValidateCommonData())
		return false;
	if (isEmpty(document.webform.Phone_Number.value)) {
		alert("Please enter your Phone Number.");
		document.webform.Phone_Number.focus();
		return false;
	}

	if ((document.webform.PaymentMethod[0].checked == false) && (document.webform.PaymentMethod[1].checked == false)) {
		alert("Please indicate your payment method (send a check or pay online, via Paypal).");
		document.webform.PaymentMethod[0].focus();
		return false;
	}
	if (!update_order())
		return false;
	if (document.webform.numitems.value == 0) {
		alert("Please select the item(s) you want to order.");
		document.webform.num_book1.focus();
		return false;
	}
}

/****************************************************************/
function update_order() {

USA="USA";
CANADA="CANADA";

	bookorder="";
	amtdue=0;
	numitems=0;
	discountamt=0;
	discountnum=parseFloat(document.webform.discountnum.value);
//discount: 20% off for 1-4; 30% off for 5+ for assoc/pro members
	if (document.webform.MemberLevel[2].checked == true) {
		discount1=0;
		discount2=0;
	}
	else {
		discount1=parseFloat(document.webform.discount1.value);
		discount2=parseFloat(document.webform.discount2.value);
	}

//ITEM//
	if (document.webform.num_book1.value == "")
		document.webform.num_book1.value=0;
	num_book1=document.webform.num_book1.value;
	if (!isNum(num_book1)) {
		alert("You entered an invalid amount (" + document.webform.num_book1.value + ") for your order of '" + document.webform.title_book1.value + "'. Please enter a numeric value.");
		document.webform.num_book1.focus();
		return false;
	}
	else {
		num_book1=parseFloat(document.webform.num_book1.value);
	}
	if (num_book1 > 0) {
		cost_book1=parseFloat(document.webform.cost_book1.value);
		total_book1=num_book1*cost_book1;
		if (num_book1 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_book1=total_book1*discount;
		discountamt+=discount_book1;
		total_book1-=discount_book1;
		document.webform.total_book1.value=total_book1.toFixed(2);
		document.webform.amt_book1.value=total_book1.toFixed(2);
		amtdue+=total_book1;
		numitems+=num_book1;
		bookorder = bookorder + document.webform.title_book1.value + ";" + cost_book1 + ";" + num_book1 + ";" + discount_book1 + "|";
	}
	else {
		document.webform.total_book1.value=0;
		document.webform.amt_book1.value=0;
	}

//ITEM//
	if (document.webform.num_book2.value == "")
		document.webform.num_book2.value=0;
	num_book2=document.webform.num_book2.value;
	if (!isNum(num_book2)) {
		alert("You entered an invalid amount (" + document.webform.num_book2.value + ") for your order of '" + document.webform.title_book2.value + "'. Please enter a numeric value.");
		document.webform.num_book2.focus();
		return false;
	}
	else {
		num_book2=parseFloat(document.webform.num_book2.value);
	}
	if (num_book2 > 0) {
		cost_book2=parseFloat(document.webform.cost_book2.value);
		total_book2=num_book2*cost_book2;
		if (num_book2 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_book2=total_book2*discount;
		discountamt+=discount_book2;
		total_book2-=discount_book2;
		document.webform.total_book2.value=total_book2.toFixed(2);
		document.webform.amt_book2.value=total_book2.toFixed(2);
		amtdue+=total_book2;
		numitems+=num_book2;
		bookorder = bookorder + document.webform.title_book2.value + ";" + cost_book2 + ";" + num_book2 + ";" + discount_book2 + "|";
	}
	else {
		document.webform.total_book2.value=0;
		document.webform.amt_book2.value=0;
	}

//ITEM//
	if (document.webform.num_book3.value == "")
		document.webform.num_book3.value=0;
	num_book3=document.webform.num_book3.value;
	if (!isNum(num_book3)) {
		alert("You entered an invalid amount (" + document.webform.num_book3.value + ") for your order of '" + document.webform.title_book3.value + "'. Please enter a numeric value.");
		document.webform.num_book3.focus();
		return false;
	}
	else {
		num_book3=parseFloat(document.webform.num_book3.value);
	}
	if (num_book3 > 0) {
		cost_book3=parseFloat(document.webform.cost_book3.value);
		total_book3=num_book3*cost_book3;
		if (num_book3 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_book3=total_book3*discount;
		discountamt+=discount_book3;
		total_book3-=discount_book3;
		document.webform.total_book3.value=total_book3.toFixed(2);
		document.webform.amt_book3.value=total_book3.toFixed(2);
		amtdue+=total_book3;
		numitems+=num_book3;
		bookorder = bookorder + document.webform.title_book3.value + ";" + cost_book3 + ";" + num_book3 + ";" + discount_book3 + "|";
	}
	else {
		document.webform.total_book3.value=0;
		document.webform.amt_book3.value=0;
	}

//ITEM//
	if (document.webform.num_book4.value == "")
		document.webform.num_book4.value=0;
	num_book4=document.webform.num_book4.value;
	if (!isNum(num_book4)) {
		alert("You entered an invalid amount (" + document.webform.num_book4.value + ") for your order of '" + document.webform.title_book4.value + "'. Please enter a numeric value.");
		document.webform.num_book4.focus();
		return false;
	}
	else {
		num_book4=parseFloat(document.webform.num_book4.value);
	}
	if (num_book4 > 0) {
		cost_book4=parseFloat(document.webform.cost_book4.value);
		total_book4=num_book4*cost_book4;
		if (num_book4 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_book4=total_book4*discount;
		discountamt+=discount_book4;
		total_book4-=discount_book4;
		document.webform.total_book4.value=total_book4.toFixed(2);
		document.webform.amt_book4.value=total_book4.toFixed(2);
		amtdue+=total_book4;
		numitems+=num_book4;
		bookorder = bookorder + document.webform.title_book4.value + ";" + cost_book4 + ";" + num_book4 + ";" + discount_book4 + "|";
	}
	else {
		document.webform.total_book4.value=0;
		document.webform.amt_book4.value=0;
	}

//ITEM//
	if (document.webform.num_book5.value == "")
		document.webform.num_book5.value=0;
	num_book5=document.webform.num_book5.value;
	if (!isNum(num_book5)) {
		alert("You entered an invalid amount (" + document.webform.num_book5.value + ") for your order of '" + document.webform.title_book5.value + "'. Please enter a numeric value.");
		document.webform.num_book5.focus();
		return false;
	}
	else {
		num_book5=parseFloat(document.webform.num_book5.value);
	}
	if (num_book5 > 0) {
		cost_book5=parseFloat(document.webform.cost_book5.value);
		total_book5=num_book5*cost_book5;
		if (num_book5 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_book5=total_book5*discount;
		discountamt+=discount_book5;
		total_book5-=discount_book5;
		document.webform.total_book5.value=total_book5.toFixed(2);
		document.webform.amt_book5.value=total_book5.toFixed(2);
		amtdue+=total_book5;
		numitems+=num_book5;
		bookorder = bookorder + document.webform.title_book5.value + ";" + cost_book5 + ";" + num_book5 + ";" + discount_book5 + "|";
	}
	else {
		document.webform.total_book5.value=0;
		document.webform.amt_book5.value=0;
	}

//ITEM//
	if (document.webform.num_book6.value == "")
		document.webform.num_book6.value=0;
	num_book6=document.webform.num_book6.value;
	if (!isNum(num_book6)) {
		alert("You entered an invalid amount (" + document.webform.num_book6.value + ") for your order of '" + document.webform.title_book6.value + "'. Please enter a numeric value.");
		document.webform.num_book6.focus();
		return false;
	}
	else {
		num_book6=parseFloat(document.webform.num_book6.value);
	}
	if (num_book6 > 0) {
		cost_book6=parseFloat(document.webform.cost_book6.value);
		total_book6=num_book6*cost_book6;
		if (num_book6 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_book6=total_book6*discount;
		discountamt+=discount_book6;
		total_book6-=discount_book6;
		document.webform.total_book6.value=total_book6.toFixed(2);
		document.webform.amt_book6.value=total_book6.toFixed(2);
		amtdue+=total_book6;
		numitems+=num_book6;
		bookorder = bookorder + document.webform.title_book6.value + ";" + cost_book6 + ";" + num_book6 + ";" + discount_book6 + "|";
	}
	else {
		document.webform.total_book6.value=0;
		document.webform.amt_book6.value=0;
	}

//ITEM//
	if (document.webform.num_book7.value == "")
		document.webform.num_book7.value=0;
	num_book7=document.webform.num_book7.value;
	if (!isNum(num_book7)) {
		alert("You entered an invalid amount (" + document.webform.num_book7.value + ") for your order of '" + document.webform.title_book7.value + "'. Please enter a numeric value.");
		document.webform.num_book7.focus();
		return false;
	}
	else {
		num_book7=parseFloat(document.webform.num_book7.value);
	}
	if (num_book7 > 0) {
		cost_book7=parseFloat(document.webform.cost_book7.value);
		total_book7=num_book7*cost_book7;
		if (num_book7 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_book7=total_book7*discount;
		discountamt+=discount_book7;
		total_book7-=discount_book7;
		document.webform.total_book7.value=total_book7.toFixed(2);
		document.webform.amt_book7.value=total_book7.toFixed(2);
		amtdue+=total_book7;
		numitems+=num_book7;
		bookorder = bookorder + document.webform.title_book7.value + ";" + cost_book7 + ";" + num_book7 + ";" + discount_book7 + "|";
	}
	else {
		document.webform.total_book7.value=0;
		document.webform.amt_book7.value=0;
	}

//ITEM//
	if (document.webform.num_dvd1.value == "")
		document.webform.num_dvd1.value=0;
	num_dvd1=document.webform.num_dvd1.value;
	if (!isNum(num_dvd1)) {
		alert("You entered an invalid amount (" + document.webform.num_dvd1.value + ") for your order of '" + document.webform.title_dvd1.value + "'. Please enter a numeric value.");
		document.webform.num_dvd1.focus();
		return false;
	}
	else {
		num_dvd1=parseFloat(document.webform.num_dvd1.value);
	}
	if (num_dvd1 > 0) {
		cost_dvd1=parseFloat(document.webform.cost_dvd1.value);
		total_dvd1=num_dvd1*cost_dvd1;
		if (num_dvd1 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_dvd1=total_dvd1*discount;
		discountamt+=discount_dvd1;
		total_dvd1-=discount_dvd1;
		document.webform.total_dvd1.value=total_dvd1.toFixed(2);
		document.webform.amt_dvd1.value=total_dvd1.toFixed(2);
		amtdue+=total_dvd1;
		numitems+=num_dvd1;
		bookorder = bookorder + document.webform.title_dvd1.value + ";" + cost_dvd1 + ";" + num_dvd1 + ";" + discount_dvd1 + "|";
	}
	else {
		document.webform.total_dvd1.value=0;
		document.webform.amt_dvd1.value=0;
	}

//ITEM//
	if (document.webform.num_dvd2.value == "")
		document.webform.num_dvd2.value=0;
	num_dvd2=document.webform.num_dvd2.value;
	if (!isNum(num_dvd2)) {
		alert("You entered an invalid amount (" + document.webform.num_dvd2.value + ") for your order of '" + document.webform.title_dvd2.value + "'. Please enter a numeric value.");
		document.webform.num_dvd2.focus();
		return false;
	}
	else {
		num_dvd2=parseFloat(document.webform.num_dvd2.value);
	}
	if (num_dvd2 > 0) {
		cost_dvd2=parseFloat(document.webform.cost_dvd2.value);
		total_dvd2=num_dvd2*cost_dvd2;
		if (num_dvd2 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_dvd2=total_dvd2*discount;
		discountamt+=discount_dvd2;
		total_dvd2-=discount_dvd2;
		document.webform.total_dvd2.value=total_dvd2.toFixed(2);
		document.webform.amt_dvd2.value=total_dvd2.toFixed(2);
		amtdue+=total_dvd2;
		numitems+=num_dvd2;
		bookorder = bookorder + document.webform.title_dvd2.value + ";" + cost_dvd2 + ";" + num_dvd2 + ";" + discount_dvd2 + "|";
	}
	else {
		document.webform.total_dvd2.value=0;
		document.webform.amt_dvd2.value=0;
	}

//ITEM//
	if (document.webform.num_dvd3.value == "")
		document.webform.num_dvd3.value=0;
	num_dvd3=document.webform.num_dvd3.value;
	if (!isNum(num_dvd3)) {
		alert("You entered an invalid amount (" + document.webform.num_dvd3.value + ") for your order of '" + document.webform.title_dvd3.value + "'. Please enter a numeric value.");
		document.webform.num_dvd3.focus();
		return false;
	}
	else {
		num_dvd3=parseFloat(document.webform.num_dvd3.value);
	}
	if (num_dvd3 > 0) {
		cost_dvd3=parseFloat(document.webform.cost_dvd3.value);
		total_dvd3=num_dvd3*cost_dvd3;
		if (num_dvd3 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_dvd3=total_dvd3*discount;
		discountamt+=discount_dvd3;
		total_dvd3-=discount_dvd3;
		document.webform.total_dvd3.value=total_dvd3.toFixed(2);
		document.webform.amt_dvd3.value=total_dvd3.toFixed(2);
		amtdue+=total_dvd3;
		numitems+=num_dvd3;
		bookorder = bookorder + document.webform.title_dvd3.value + ";" + cost_dvd3 + ";" + num_dvd3 + ";" + discount_dvd3 + "|";
	}
	else {
		document.webform.total_dvd3.value=0;
		document.webform.amt_dvd3.value=0;
	}

//ITEM//
	if (document.webform.num_dvd4.value == "")
		document.webform.num_dvd4.value=0;
	num_dvd4=document.webform.num_dvd4.value;
	if (!isNum(num_dvd4)) {
		alert("You entered an invalid amount (" + document.webform.num_dvd4.value + ") for your order of '" + document.webform.title_dvd4.value + "'. Please enter a numeric value.");
		document.webform.num_dvd4.focus();
		return false;
	}
	else {
		num_dvd4=parseFloat(document.webform.num_dvd4.value);
	}
	if (num_dvd4 > 0) {
		cost_dvd4=parseFloat(document.webform.cost_dvd4.value);
		total_dvd4=num_dvd4*cost_dvd4;
		if (num_dvd4 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_dvd4=total_dvd4*discount;
		discountamt+=discount_dvd4;
		total_dvd4-=discount_dvd4;
		document.webform.total_dvd4.value=total_dvd4.toFixed(2);
		document.webform.amt_dvd4.value=total_dvd4.toFixed(2);
		amtdue+=total_dvd4;
		numitems+=num_dvd4;
		bookorder = bookorder + document.webform.title_dvd4.value + ";" + cost_dvd4 + ";" + num_dvd4 + ";" + discount_dvd4 + "|";
	}
	else {
		document.webform.total_dvd4.value=0;
		document.webform.amt_dvd4.value=0;
	}

//ITEM//
	if (document.webform.num_dvd5.value == "")
		document.webform.num_dvd5.value=0;
	num_dvd5=document.webform.num_dvd5.value;
	if (!isNum(num_dvd5)) {
		alert("You entered an invalid amount (" + document.webform.num_dvd5.value + ") for your order of '" + document.webform.title_dvd5.value + "'. Please enter a numeric value.");
		document.webform.num_dvd5.focus();
		return false;
	}
	else {
		num_dvd5=parseFloat(document.webform.num_dvd5.value);
	}
	if (num_dvd5 > 0) {
		cost_dvd5=parseFloat(document.webform.cost_dvd5.value);
		total_dvd5=num_dvd5*cost_dvd5;
		if (num_dvd5 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_dvd5=total_dvd5*discount;
		discountamt+=discount_dvd5;
		total_dvd5-=discount_dvd5;
		document.webform.total_dvd5.value=total_dvd5.toFixed(2);
		document.webform.amt_dvd5.value=total_dvd5.toFixed(2);
		amtdue+=total_dvd5;
		numitems+=num_dvd5;
		bookorder = bookorder + document.webform.title_dvd5.value + ";" + cost_dvd5 + ";" + num_dvd5 + ";" + discount_dvd5 + "|";
	}
	else {
		document.webform.total_dvd5.value=0;
		document.webform.amt_dvd5.value=0;
	}

//ITEM//
	if (document.webform.num_vhs1.value == "")
		document.webform.num_vhs1.value=0;
	num_vhs1=document.webform.num_vhs1.value;
	if (!isNum(num_vhs1)) {
		alert("You entered an invalid amount (" + document.webform.num_vhs1.value + ") for your order of '" + document.webform.title_vhs1.value + "'. Please enter a numeric value.");
		document.webform.num_vhs1.focus();
		return false;
	}
	else {
		num_vhs1=parseFloat(document.webform.num_vhs1.value);
	}
	if (num_vhs1 > 0) {
		cost_vhs1=parseFloat(document.webform.cost_vhs1.value);
		total_vhs1=num_vhs1*cost_vhs1;
		if (num_vhs1 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_vhs1=total_vhs1*discount;
		discountamt+=discount_vhs1;
		total_vhs1-=discount_vhs1;
		document.webform.total_vhs1.value=total_vhs1.toFixed(2);
		document.webform.amt_vhs1.value=total_vhs1.toFixed(2);
		amtdue+=total_vhs1;
		numitems+=num_vhs1;
		bookorder = bookorder + document.webform.title_vhs1.value + ";" + cost_vhs1 + ";" + num_vhs1 + ";" + discount_vhs1 + "|";
	}
	else {
		document.webform.total_vhs1.value=0;
		document.webform.amt_vhs1.value=0;
	}

//ITEM//
	if (document.webform.num_vhs2.value == "")
		document.webform.num_vhs2.value=0;
	num_vhs2=document.webform.num_vhs2.value;
	if (!isNum(num_vhs2)) {
		alert("You entered an invalid amount (" + document.webform.num_vhs2.value + ") for your order of '" + document.webform.title_vhs2.value + "'. Please enter a numeric value.");
		document.webform.num_vhs2.focus();
		return false;
	}
	else {
		num_vhs2=parseFloat(document.webform.num_vhs2.value);
	}
	if (num_vhs2 > 0) {
		cost_vhs2=parseFloat(document.webform.cost_vhs2.value);
		total_vhs2=num_vhs2*cost_vhs2;
		if (num_vhs2 >= discountnum)
			discount=discount2;
		else
			discount=discount2;
		discount_vhs2=total_vhs2*discount;
		discountamt+=discount_vhs2;
		total_vhs2-=discount_vhs2;
		document.webform.total_vhs2.value=total_vhs2.toFixed(2);
		document.webform.amt_vhs2.value=total_vhs2.toFixed(2);
		amtdue+=total_vhs2;
		numitems+=num_vhs2;
		bookorder = bookorder + document.webform.title_vhs2.value + ";" + cost_vhs2 + ";" + num_vhs2 + ";" + discount_vhs2 + "|";
	}
	else {
		document.webform.total_vhs2.value=0;
		document.webform.amt_vhs2.value=0;
	}

//ITEM//
	if (document.webform.num_vhs3.value == "")
		document.webform.num_vhs3.value=0;
	num_vhs3=document.webform.num_vhs3.value;
	if (!isNum(num_vhs3)) {
		alert("You entered an invalid amount (" + document.webform.num_vhs3.value + ") for your order of '" + document.webform.title_vhs3.value + "'. Please enter a numeric value.");
		document.webform.num_vhs3.focus();
		return false;
	}
	else {
		num_vhs3=parseFloat(document.webform.num_vhs3.value);
	}
	if (num_vhs3 > 0) {
		cost_vhs3=parseFloat(document.webform.cost_vhs3.value);
		total_vhs3=num_vhs3*cost_vhs3;
		if (num_vhs3 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_vhs3=total_vhs3*discount;
		discountamt+=discount_vhs3;
		total_vhs3-=discount_vhs3;
		document.webform.total_vhs3.value=total_vhs3.toFixed(2);
		document.webform.amt_vhs3.value=total_vhs3.toFixed(2);
		amtdue+=total_vhs3;
		numitems+=num_vhs3;
		bookorder = bookorder + document.webform.title_vhs3.value + ";" + cost_vhs3 + ";" + num_vhs3 + ";" + discount_vhs3 + "|";
	}
	else {
		document.webform.total_vhs3.value=0;
		document.webform.amt_vhs3.value=0;
	}

//ITEM//
	if (document.webform.num_vhs4.value == "")
		document.webform.num_vhs4.value=0;
	num_vhs4=document.webform.num_vhs4.value;
	if (!isNum(num_vhs4)) {
		alert("You entered an invalid amount (" + document.webform.num_vhs4.value + ") for your order of '" + document.webform.title_vhs4.value + "'. Please enter a numeric value.");
		document.webform.num_vhs4.focus();
		return false;
	}
	else {
		num_vhs4=parseFloat(document.webform.num_vhs4.value);
	}
	if (num_vhs4 > 0) {
		cost_vhs4=parseFloat(document.webform.cost_vhs4.value);
		total_vhs4=num_vhs4*cost_vhs4;
		if (num_vhs4 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_vhs4=total_vhs4*discount;
		discountamt+=discount_vhs4;
		total_vhs4-=discount_vhs4;
		document.webform.total_vhs4.value=total_vhs4.toFixed(2);
		document.webform.amt_vhs4.value=total_vhs4.toFixed(2);
		amtdue+=total_vhs4;
		numitems+=num_vhs4;
		bookorder = bookorder + document.webform.title_vhs4.value + ";" + cost_vhs4 + ";" + num_vhs4 + ";" + discount_vhs4 + "|";
	}
	else {
		document.webform.total_vhs4.value=0;
		document.webform.amt_vhs4.value=0;
	}

//ITEM//
	if (document.webform.num_cd1.value == "")
		document.webform.num_cd1.value=0;
	num_cd1=document.webform.num_cd1.value;
	if (!isNum(num_cd1)) {
		alert("You entered an invalid amount (" + document.webform.num_cd1.value + ") for your order of '" + document.webform.title_cd1.value + "'. Please enter a numeric value.");
		document.webform.num_cd1.focus();
		return false;
	}
	else {
		num_cd1=parseFloat(document.webform.num_cd1.value);
	}
	if (num_cd1 > 0) {
		cost_cd1=parseFloat(document.webform.cost_cd1.value);
		total_cd1=num_cd1*cost_cd1;
		if (num_cd1 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_cd1=total_cd1*discount;
		discountamt+=discount_cd1;
		total_cd1-=discount_cd1;
		document.webform.total_cd1.value=total_cd1.toFixed(2);
		document.webform.amt_cd1.value=total_cd1.toFixed(2);
		amtdue+=total_cd1;
		numitems+=num_cd1;
		bookorder = bookorder + document.webform.title_cd1.value + ";" + cost_cd1 + ";" + num_cd1 + ";" + discount_cd1 + "|";
	}
	else {
		document.webform.total_cd1.value=0;
		document.webform.amt_cd1.value=0;
	}

//ITEM//
	if (document.webform.num_cd2.value == "")
		document.webform.num_cd2.value=0;
	num_cd2=document.webform.num_cd2.value;
	if (!isNum(num_cd2)) {
		alert("You entered an invalid amount (" + document.webform.num_cd2.value + ") for your order of '" + document.webform.title_cd2.value + "'. Please enter a numeric value.");
		document.webform.num_cd2.focus();
		return false;
	}
	else {
		num_cd2=parseFloat(document.webform.num_cd2.value);
	}
	if (num_cd2 > 0) {
		cost_cd2=parseFloat(document.webform.cost_cd2.value);
		total_cd2=num_cd2*cost_cd2;
		if (num_cd2 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_cd2=total_cd2*discount;
		discountamt+=discount_cd2;
		total_cd2-=discount_cd2;
		document.webform.total_cd2.value=total_cd2.toFixed(2);
		document.webform.amt_cd2.value=total_cd2.toFixed(2);
		amtdue+=total_cd2;
		numitems+=num_cd2;
		bookorder = bookorder + document.webform.title_cd2.value + ";" + cost_cd2 + ";" + num_cd2 + ";" + discount_cd2 + "|";
	}
	else {
		document.webform.total_cd2.value=0;
		document.webform.amt_cd2.value=0;
	}

//ITEM//
	if (document.webform.num_cd3.value == "")
		document.webform.num_cd3.value=0;
	num_cd3=document.webform.num_cd3.value;
	if (!isNum(num_cd3)) {
		alert("You entered an invalid amount (" + document.webform.num_cd3.value + ") for your order of '" + document.webform.title_cd3.value + "'. Please enter a numeric value.");
		document.webform.num_cd3.focus();
		return false;
	}
	else {
		num_cd3=parseFloat(document.webform.num_cd3.value);
	}
	if (num_cd3 > 0) {
		cost_cd3=parseFloat(document.webform.cost_cd3.value);
		total_cd3=num_cd3*cost_cd3;
		if (num_cd3 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_cd3=total_cd3*discount;
		discountamt+=discount_cd3;
		total_cd3-=discount_cd3;
		document.webform.total_cd3.value=total_cd3.toFixed(2);
		document.webform.amt_cd3.value=total_cd3.toFixed(2);
		amtdue+=total_cd3;
		numitems+=num_cd3;
		bookorder = bookorder + document.webform.title_cd3.value + ";" + cost_cd3 + ";" + num_cd3 + ";" + discount_cd3 + "|";
	}
	else {
		document.webform.total_cd3.value=0;
		document.webform.amt_cd3.value=0;
	}

//ITEM//
	if (document.webform.num_cd4.value == "")
		document.webform.num_cd4.value=0;
	num_cd4=document.webform.num_cd4.value;
	if (!isNum(num_cd4)) {
		alert("You entered an invalid amount (" + document.webform.num_cd4.value + ") for your order of '" + document.webform.title_cd4.value + "'. Please enter a numeric value.");
		document.webform.num_cd4.focus();
		return false;
	}
	else {
		num_cd4=parseFloat(document.webform.num_cd4.value);
	}
	if (num_cd4 > 0) {
		cost_cd4=parseFloat(document.webform.cost_cd4.value);
		total_cd4=num_cd4*cost_cd4;
		if (num_cd4 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_cd4=total_cd4*discount;
		discountamt+=discount_cd4;
		total_cd4-=discount_cd4;
		document.webform.total_cd4.value=total_cd4.toFixed(2);
		document.webform.amt_cd4.value=total_cd4.toFixed(2);
		amtdue+=total_cd4;
		numitems+=num_cd4;
		bookorder = bookorder + document.webform.title_cd4.value + ";" + cost_cd4 + ";" + num_cd4 + ";" + discount_cd4 + "|";
	}
	else {
		document.webform.total_cd4.value=0;
		document.webform.amt_cd4.value=0;
	}

//ITEM//
	if (document.webform.num_audtp1.value == "")
		document.webform.num_audtp1.value=0;
	num_audtp1=document.webform.num_audtp1.value;
	if (!isNum(num_audtp1)) {
		alert("You entered an invalid amount (" + document.webform.num_audtp1.value + ") for your order of '" + document.webform.title_audtp1.value + "'. Please enter a numeric value.");
		document.webform.num_audtp1.focus();
		return false;
	}
	else {
		num_audtp1=parseFloat(document.webform.num_audtp1.value);
	}
	if (num_audtp1 > 0) {
		cost_audtp1=parseFloat(document.webform.cost_audtp1.value);
		total_audtp1=num_audtp1*cost_audtp1;
		if (num_audtp1 >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_audtp1=total_audtp1*discount;
		discountamt+=discount_audtp1;
		total_audtp1-=discount_audtp1;
		document.webform.total_audtp1.value=total_audtp1.toFixed(2);
		document.webform.amt_audtp1.value=total_audtp1.toFixed(2);
		amtdue+=total_audtp1;
		numitems+=num_audtp1;
		bookorder = bookorder + document.webform.title_audtp1.value + ";" + cost_audtp1 + ";" + num_audtp1 + ";" + discount_audtp1 + "|";
	}
	else {
		document.webform.total_audtp1.value=0;
		document.webform.amt_audtp1.value=0;
	}

//ITEM//
	if (document.webform.num_stkr.value == "")
		document.webform.num_stkr.value=0;
	num_stkr=document.webform.num_stkr.value;
	if (!isNum(num_stkr)) {
		alert("You entered an invalid amount (" + document.webform.num_stkr.value + ") for your order of '" + document.webform.title_stkr.value + "'. Please enter a numeric value.");
		document.webform.num_stkr.focus();
		return false;
	}
	else {
		num_stkr=parseFloat(document.webform.num_stkr.value);
	}
	if (num_stkr > 0) {
		cost_stkr=parseFloat(document.webform.cost_stkr.value);
		total_stkr=num_stkr*cost_stkr;
		if (num_stkr >= discountnum)
			discount=discount2;
		else
			discount=discount1;
		discount_stkr=total_stkr*discount;
		discountamt+=discount_stkr;
		total_stkr-=discount_stkr;
		document.webform.total_stkr.value=total_stkr.toFixed(2);
		document.webform.amt_stkr.value=total_stkr.toFixed(2);
		amtdue+=total_stkr;
		numitems+=num_stkr;
		bookorder = bookorder + document.webform.title_stkr.value + ";" + cost_stkr + ";" + num_stkr + ";" + discount_stkr + "|";
	}
	else {
		document.webform.total_stkr.value=0;
		document.webform.amt_stkr.value=0;
	}

	shipchg_merch=parseFloat(document.webform.shipchg_merch.value);
	shipchg1=parseFloat(document.webform.shipchg1.value);
	shipchg2=parseFloat(document.webform.shipchg2.value);
	shipchg3=parseFloat(document.webform.shipchg3.value);
	shipchg4=parseFloat(document.webform.shipchg4.value);
	shipchg5=parseFloat(document.webform.shipchg5.value);
	shipchgmax1=parseFloat(document.webform.shipchgmax1.value);
	shipchgmax2=parseFloat(document.webform.shipchgmax2.value);
	shipchgmax3=parseFloat(document.webform.shipchgmax3.value);
	shipchgmax4=parseFloat(document.webform.shipchgmax4.value);
	shipchgmax5=parseFloat(document.webform.shipchgmax5.value);
	shipchg_stkr=parseFloat(document.webform.shipchg_stkr.value);
	if ((numitems > 0) && (numitems == num_stkr)) {
		thisshipchg=shipchg_stkr;
	}
	else {
		thisshipchg=shipchg_merch;
		if (amtdue <= shipchgmax1)
			thisshipchg=shipchg1
		else if (amtdue <= shipchgmax2)
			thisshipchg=shipchg2
		else if (amtdue <= shipchgmax3)
			thisshipchg=shipchg3
		else if (amtdue <= shipchgmax4)
			thisshipchg=shipchg4
		else
			thisshipchg=shipchg5
	}
	subtotal=amtdue.toFixed(2);
	amtdue+=thisshipchg;
	amtdue=amtdue.toFixed(2);
	document.webform.total_subtotal.value=subtotal;
	document.webform.subtotal.value=subtotal;
	document.webform.total_amtdue.value=amtdue;
	document.webform.amtdue.value=amtdue;
	document.webform.total_numitems.value=numitems;
	document.webform.numitems.value=numitems;
	document.webform.bookorder.value=bookorder;
	document.webform.shipchg.value=thisshipchg.toFixed(2);
	document.webform.thisshipchg.value=thisshipchg.toFixed(2);
	return true;

}

/****************************************************************/
function ValidateProposalData() {

//<input type=hidden name="required" value="realname,email,Street_Address,City,State,Zip_Code,Phone_Number,Country,proposal_title,proposal_synopsis,proposal_benefits,proposal_methods">

	if (isEmpty(document.webform.realname.value)) {
		alert("Please enter your Name.");
		document.webform.realname.focus();
		return false;
	}
	if (isEmpty(document.webform.email.value)) {
		alert("Please enter your Email Address.");
		document.webform.email.focus();
		return false;
	}
	else {
		email=document.webform.email.value;
		if ((email.indexOf("@") == -1) || (email.indexOf(".") == -1)) {
			alert("Invalid email address: '" + email + "'");
			document.webform.email.focus();
			return false;
		}
	}
	if (!ValidateCommonData())
		return false;
	if (isEmpty(document.webform.Phone_Number.value)) {
		alert("Please enter your Phone Number.");
		document.webform.Phone_Number.focus();
		return false;
	}
	if (isEmpty(document.webform.proposal_title.value)) {
		alert("Please enter the title of your proposal.");
		document.webform.proposal_title.focus();
		return false;
	}
	if (isEmpty(document.webform.proposal_synopsis.value)) {
		alert("Please enter the synopsis of your proposal.");
		document.webform.proposal_synopsis.focus();
		return false;
	}
	if (isEmpty(document.webform.proposal_benefits.value)) {
		alert("Please enter the benefits of your proposal.");
		document.webform.proposal_benefits.focus();
		return false;
	}
	if (isEmpty(document.webform.proposal_methods.value)) {
		alert("Please enter the methods you will use in your presentation.");
		document.webform.proposal_methods.focus();
		return false;
	}

}

/****************************************************************/
function ValidateWkbookOrderData() {

//<input type=hidden name="required" value="realname,email,Phone_Number,Country,Street_Address,City,State,Zip_Code">

	if ((document.webform.MemberLevel[0].checked == false) && (document.webform.MemberLevel[1].checked == false) && (document.webform.MemberLevel[2].checked == false)) {
		alert("Please indicate your membership status (Professional, Associate, nonmember).");
		document.webform.MemberLevel[0].focus();
		return false;
	}
	if (isEmpty(document.webform.realname.value)) {
		alert("Please enter your Name.");
		document.webform.realname.focus();
		return false;
	}
	if (isEmpty(document.webform.email.value)) {
		alert("Please enter your Email Address.");
		document.webform.email.focus();
		return false;
	}
	else {
		email=document.webform.email.value;
		if ((email.indexOf("@") == -1) || (email.indexOf(".") == -1)) {
			alert("Invalid email address: '" + email + "'");
			document.webform.email.focus();
			return false;
		}
	}
	if (!ValidateCommonData())
		return false;
	if (isEmpty(document.webform.Phone_Number.value)) {
		alert("Please enter your Phone Number.");
		document.webform.Phone_Number.focus();
		return false;
	}

	if (!update_wkbook_order())
		return false;
	if (document.webform.numitems.value == 0) {
		alert("Please indicate the number of workbooks you want to order.");
		document.webform.num_book1.focus();
		return false;
	}
}

/****************************************************************/
function update_wkbook_order() {

USA="USA";
CANADA="CANADA";

	bookorder="";
	amtdue=0;
	numitems=0;
	discountamt=0;
	shipchg=0;
	discountnum=parseFloat(document.webform.discountnum.value);
//discount: 20% off for 1-4; 30% off for 5+ for assoc/pro members
	if (document.webform.MemberLevel[2].checked == true) {
		discount1=0;
		discount2=0;
	}
	else {
		discount1=parseFloat(document.webform.discount1.value);
		discount2=parseFloat(document.webform.discount2.value);
	}
	shipchg1=parseFloat(document.webform.shipchg1.value);
	shipchg2=parseFloat(document.webform.shipchg2.value);

//ITEM//
	if (document.webform.num_book1.value == "")
		document.webform.num_book1.value=0;
	num_book1=document.webform.num_book1.value;
	if (!isNum(num_book1)) {
		alert("You entered an invalid amount (" + document.webform.num_book1.value + ") for your order of '" + document.webform.title_book1.value + "'. Please enter a numeric value.");
		document.webform.num_book1.focus();
		return false;
	}
	else {
		num_book1=parseFloat(document.webform.num_book1.value);
	}
	if (num_book1 > 0) {
		cost_book1=parseFloat(document.webform.cost_book1.value);
		total_book1=num_book1*cost_book1;
		if (num_book1 >= discountnum) {
			discount=discount2;
			shipchg=shipchg2;
		}
		else {
			discount=discount1;
			shipchg=shipchg1;
		}
		discount_book1=discount*num_book1;
		discountamt+=discount_book1;
		total_book1-=discount_book1;
		document.webform.total_book1.value=total_book1.toFixed(2);
		document.webform.amt_book1.value=total_book1.toFixed(2);
		amtdue+=total_book1;
		numitems+=num_book1;
		bookorder = bookorder + document.webform.title_book1.value + ";" + cost_book1 + ";" + num_book1 + ";" + discount_book1 + "|";
	}
	else {
		document.webform.total_book1.value=0;
		document.webform.amt_book1.value=0;
	}

	subtotal=amtdue.toFixed(2);
	amtdue+=shipchg;
	shipchg=shipchg.toFixed(2);
	amtdue=amtdue.toFixed(2);
	document.webform.total_shipchg.value=shipchg;
	document.webform.shipchg.value=shipchg;
	document.webform.total_subtotal.value=subtotal;
	document.webform.subtotal.value=subtotal;
	document.webform.total_amtdue.value=amtdue;
	document.webform.amtdue.value=amtdue;
	document.webform.total_numitems.value=numitems;
	document.webform.numitems.value=numitems;
	document.webform.bookorder.value=bookorder;
//alert("cost_book1: " + cost_book1 + "; num_book1: " + num_book1 + "; discount_book1: " + discount_book1 + "; total_book1: " + total_book1);
//return false;
	return true;

}

function ValidateScholarshipData() {

//<input type=hidden name="required" value="realname,email,Phone_Number,Country,Street_Address,City,State,Zip_Code,SG_member">

	if (isEmpty(document.webform.realname.value)) {
		alert("Please enter your Name.");
		document.webform.realname.focus();
		return false;
	}
	if (isEmpty(document.webform.email.value)) {
		alert("Please enter your Email Address.");
		document.webform.email.focus();
		return false;
	}
	else {
		email=document.webform.email.value;
		if ((email.indexOf("@") == -1) || (email.indexOf(".") == -1)) {
			alert("Invalid email address: '" + email + "'");
			document.webform.email.focus();
			return false;
		}
	}
	if (!ValidateCommonData())
		return false;
	if (isEmpty(document.webform.Phone_Number.value)) {
		alert("Please enter your Phone Number.");
		document.webform.Phone_Number.focus();
		return false;
	}

	if ((document.webform.SG_member[0].checked == false) && (document.webform.SG_member[1].checked == false)) {
		alert("Please indicate your membership status (Professional, Associate, nonmember).");
		document.webform.SG_member[0].focus();
		return false;
	}
}

function ValidateConfRegData() {
//<input type=hidden name="required" value="realname,email,Phone_Number,Country,Street_Address,City,State,Zip_Code,SG_member,Discount_type">

	if (isEmpty(document.webform.realname.value)) {
		alert("Please enter your Name.");
		document.webform.realname.focus();
		return false;
	}
	if (isEmpty(document.webform.email.value)) {
		alert("Please enter your Email Address.");
		document.webform.email.focus();
		return false;
	}
	else {
		email=document.webform.email.value;
		if ((email.indexOf("@") == -1) || (email.indexOf(".") == -1)) {
			alert("Invalid email address: '" + email + "'");
			document.webform.email.focus();
			return false;
		}
	}
	if (!ValidateCommonData())
		return false;
	if (isEmpty(document.webform.Phone_Number.value)) {
		alert("Please enter your Phone Number.");
		document.webform.Phone_Number.focus();
		return false;
	}

	if ((document.webform.SG_member[0].checked == false) && (document.webform.SG_member[1].checked == false)) {
		alert("Please indicate your membership status (member, nonmember).");
		document.webform.SG_member[0].focus();
		return false;
	}
//
//Preconference
//
	if (document.webform.PreConference.checked == true) {
		if (document.webform.PreConference_Pref.selectedIndex == 0) {
			alert("Please indicate your preconference workshop preference.");
			document.webform.PreConference_Pref.focus();
			return false;
		}
	}
//
//Session1
//
	if ((document.webform.Session1_Pref1.selectedIndex == 0) || (document.webform.Session1_Pref2.selectedIndex == 0) || ((document.webform.Session1_Pref3.selectedIndex == 0) || document.webform.Session1_Pref4.selectedIndex == 0)) {
		alert("Please indicate your 1st, 2nd, 3rd, & 4th choice of workshops for Session 1.");
		if (document.webform.Session1_Pref1.selectedIndex == 0)
			document.webform.Session1_Pref1.focus();
		else if (document.webform.Session1_Pref2.selectedIndex == 0)
			document.webform.Session1_Pref2.focus();
		else if (document.webform.Session1_Pref3.selectedIndex == 0)
			document.webform.Session1_Pref3.focus();
		else
			document.webform.Session1_Pref4.focus();
		return false;
	}
	if ((((document.webform.Session1_Pref1.selectedIndex == document.webform.Session1_Pref2.selectedIndex) && (document.webform.Session1_Pref1.selectedIndex != 0)) || ((document.webform.Session1_Pref1.selectedIndex == document.webform.Session1_Pref3.selectedIndex) && (document.webform.Session1_Pref1.selectedIndex != 0)) || ((document.webform.Session1_Pref1.selectedIndex == document.webform.Session1_Pref4.selectedIndex) && (document.webform.Session1_Pref1.selectedIndex != 0)) || ((document.webform.Session1_Pref2.selectedIndex == document.webform.Session1_Pref3.selectedIndex) && (document.webform.Session1_Pref2.selectedIndex != 0)) || ((document.webform.Session1_Pref2.selectedIndex == document.webform.Session1_Pref4.selectedIndex) && (document.webform.Session1_Pref2.selectedIndex != 0)) || ((document.webform.Session1_Pref3.selectedIndex == document.webform.Session1_Pref4.selectedIndex) && (document.webform.Session1_Pref3.selectedIndex != 0))) && (document.webform.Session1_Pref1.selectedIndex != 5)) {
		alert("Your 1st, 2nd, 3rd, & 4th choice of workshops for Session 1 must all be different. Please choose again.");
		if (document.webform.Session1_Pref1.selectedIndex == document.webform.Session1_Pref2.selectedIndex)
			document.webform.Session1_Pref2.focus();
		else if (document.webform.Session1_Pref1.selectedIndex == document.webform.Session1_Pref3.selectedIndex)
			document.webform.Session1_Pref3.focus();
		else if (document.webform.Session1_Pref1.selectedIndex == document.webform.Session1_Pref4.selectedIndex)
			document.webform.Session1_Pref4.focus();
		else if (document.webform.Session1_Pref2.selectedIndex == document.webform.Session1_Pref3.selectedIndex)
			document.webform.Session1_Pref3.focus();
		else if (document.webform.Session1_Pref2.selectedIndex == document.webform.Session1_Pref4.selectedIndex)
			document.webform.Session1_Pref4.focus();
		else
			document.webform.Session1_Pref4.focus();
		return false;
	}
//
//Session2
//
	if ((document.webform.Session2_Pref1.selectedIndex == 0) || (document.webform.Session2_Pref2.selectedIndex == 0) || ((document.webform.Session2_Pref3.selectedIndex == 0) || document.webform.Session2_Pref4.selectedIndex == 0)) {
		alert("Please indicate your 1st, 2nd, 3rd, & 4th choice of workshops for Session 2.");
		if (document.webform.Session2_Pref1.selectedIndex == 0)
			document.webform.Session2_Pref1.focus();
		else if (document.webform.Session2_Pref2.selectedIndex == 0)
			document.webform.Session2_Pref2.focus();
		else if (document.webform.Session2_Pref3.selectedIndex == 0)
			document.webform.Session2_Pref3.focus();
		else
			document.webform.Session2_Pref4.focus();
		return false;
	}
	if ((((document.webform.Session2_Pref1.selectedIndex == document.webform.Session2_Pref2.selectedIndex) && (document.webform.Session2_Pref1.selectedIndex != 0)) || ((document.webform.Session2_Pref1.selectedIndex == document.webform.Session2_Pref3.selectedIndex) && (document.webform.Session2_Pref1.selectedIndex != 0)) || ((document.webform.Session2_Pref1.selectedIndex == document.webform.Session2_Pref4.selectedIndex) && (document.webform.Session2_Pref1.selectedIndex != 0)) || ((document.webform.Session2_Pref2.selectedIndex == document.webform.Session2_Pref3.selectedIndex) && (document.webform.Session2_Pref2.selectedIndex != 0)) || ((document.webform.Session2_Pref2.selectedIndex == document.webform.Session2_Pref4.selectedIndex) && (document.webform.Session2_Pref2.selectedIndex != 0)) || ((document.webform.Session2_Pref3.selectedIndex == document.webform.Session2_Pref4.selectedIndex) && (document.webform.Session2_Pref3.selectedIndex != 0))) && (document.webform.Session2_Pref1.selectedIndex != 5)) {
		alert("Your 1st, 2nd, 3rd, & 4th choice of workshops for Session 2 must all be different. Please choose again.");
		if (document.webform.Session2_Pref1.selectedIndex == document.webform.Session2_Pref2.selectedIndex)
			document.webform.Session2_Pref2.focus();
		else if (document.webform.Session2_Pref1.selectedIndex == document.webform.Session2_Pref3.selectedIndex)
			document.webform.Session2_Pref3.focus();
		else if (document.webform.Session2_Pref1.selectedIndex == document.webform.Session2_Pref4.selectedIndex)
			document.webform.Session2_Pref4.focus();
		else if (document.webform.Session2_Pref2.selectedIndex == document.webform.Session2_Pref3.selectedIndex)
			document.webform.Session2_Pref3.focus();
		else if (document.webform.Session2_Pref2.selectedIndex == document.webform.Session2_Pref4.selectedIndex)
			document.webform.Session2_Pref4.focus();
		else
			document.webform.Session2_Pref4.focus();
		return false;
	}
//
//Session3
//
	if ((document.webform.Session3_Pref1.selectedIndex == 0) || (document.webform.Session3_Pref2.selectedIndex == 0) || ((document.webform.Session3_Pref3.selectedIndex == 0) || document.webform.Session3_Pref4.selectedIndex == 0)) {
		alert("Please indicate your 1st, 2nd, 3rd, & 4th choice of workshops for Session 3.");
		if (document.webform.Session3_Pref1.selectedIndex == 0)
			document.webform.Session3_Pref1.focus();
		else if (document.webform.Session3_Pref2.selectedIndex == 0)
			document.webform.Session3_Pref2.focus();
		else if (document.webform.Session3_Pref3.selectedIndex == 0)
			document.webform.Session3_Pref3.focus();
		else
			document.webform.Session3_Pref4.focus();
		return false;
	}
	if ((((document.webform.Session3_Pref1.selectedIndex == document.webform.Session3_Pref2.selectedIndex) && (document.webform.Session3_Pref1.selectedIndex != 0)) || ((document.webform.Session3_Pref1.selectedIndex == document.webform.Session3_Pref3.selectedIndex) && (document.webform.Session3_Pref1.selectedIndex != 0)) || ((document.webform.Session3_Pref1.selectedIndex == document.webform.Session3_Pref4.selectedIndex) && (document.webform.Session3_Pref1.selectedIndex != 0)) || ((document.webform.Session3_Pref2.selectedIndex == document.webform.Session3_Pref3.selectedIndex) && (document.webform.Session3_Pref2.selectedIndex != 0)) || ((document.webform.Session3_Pref2.selectedIndex == document.webform.Session3_Pref4.selectedIndex) && (document.webform.Session3_Pref2.selectedIndex != 0)) || ((document.webform.Session3_Pref3.selectedIndex == document.webform.Session3_Pref4.selectedIndex) && (document.webform.Session3_Pref3.selectedIndex != 0))) && (document.webform.Session3_Pref1.selectedIndex != 5)) {
		alert("Your 1st, 2nd, 3rd, & 4th choice of workshops for Session 3 must all be different. Please choose again.");
		if (document.webform.Session3_Pref1.selectedIndex == document.webform.Session3_Pref2.selectedIndex)
			document.webform.Session3_Pref2.focus();
		else if (document.webform.Session3_Pref1.selectedIndex == document.webform.Session3_Pref3.selectedIndex)
			document.webform.Session3_Pref3.focus();
		else if (document.webform.Session3_Pref1.selectedIndex == document.webform.Session3_Pref4.selectedIndex)
			document.webform.Session3_Pref4.focus();
		else if (document.webform.Session3_Pref2.selectedIndex == document.webform.Session3_Pref3.selectedIndex)
			document.webform.Session3_Pref3.focus();
		else if (document.webform.Session3_Pref2.selectedIndex == document.webform.Session3_Pref4.selectedIndex)
			document.webform.Session3_Pref4.focus();
		else
			document.webform.Session3_Pref4.focus();
		return false;
	}
//
//Session4
//
	if ((document.webform.Session4_Pref1.selectedIndex == 0) || (document.webform.Session4_Pref2.selectedIndex == 0) || ((document.webform.Session4_Pref3.selectedIndex == 0) || document.webform.Session4_Pref4.selectedIndex == 0)) {
		alert("Please indicate your 1st, 2nd, 3rd, & 4th choice of workshops for Session 4.");
		if (document.webform.Session4_Pref1.selectedIndex == 0)
			document.webform.Session4_Pref1.focus();
		else if (document.webform.Session4_Pref2.selectedIndex == 0)
			document.webform.Session4_Pref2.focus();
		else if (document.webform.Session4_Pref3.selectedIndex == 0)
			document.webform.Session4_Pref3.focus();
		else
			document.webform.Session4_Pref4.focus();
		return false;
	}
	if ((((document.webform.Session4_Pref1.selectedIndex == document.webform.Session4_Pref2.selectedIndex) && (document.webform.Session4_Pref1.selectedIndex != 0)) || ((document.webform.Session4_Pref1.selectedIndex == document.webform.Session4_Pref3.selectedIndex) && (document.webform.Session4_Pref1.selectedIndex != 0)) || ((document.webform.Session4_Pref1.selectedIndex == document.webform.Session4_Pref4.selectedIndex) && (document.webform.Session4_Pref1.selectedIndex != 0)) || ((document.webform.Session4_Pref2.selectedIndex == document.webform.Session4_Pref3.selectedIndex) && (document.webform.Session4_Pref2.selectedIndex != 0)) || ((document.webform.Session4_Pref2.selectedIndex == document.webform.Session4_Pref4.selectedIndex) && (document.webform.Session4_Pref2.selectedIndex != 0)) || ((document.webform.Session4_Pref3.selectedIndex == document.webform.Session4_Pref4.selectedIndex) && (document.webform.Session4_Pref3.selectedIndex != 0))) && (document.webform.Session4_Pref1.selectedIndex != 5)) {
		alert("Your 1st, 2nd, 3rd, & 4th choice of workshops for Session 4 must all be different. Please choose again.");
		if (document.webform.Session4_Pref1.selectedIndex == document.webform.Session4_Pref2.selectedIndex)
			document.webform.Session4_Pref2.focus();
		else if (document.webform.Session4_Pref1.selectedIndex == document.webform.Session4_Pref3.selectedIndex)
			document.webform.Session4_Pref3.focus();
		else if (document.webform.Session4_Pref1.selectedIndex == document.webform.Session4_Pref4.selectedIndex)
			document.webform.Session4_Pref4.focus();
		else if (document.webform.Session4_Pref2.selectedIndex == document.webform.Session4_Pref3.selectedIndex)
			document.webform.Session4_Pref3.focus();
		else if (document.webform.Session4_Pref2.selectedIndex == document.webform.Session4_Pref4.selectedIndex)
			document.webform.Session4_Pref4.focus();
		else
			document.webform.Session4_Pref4.focus();
		return false;
	}
	if (!TotalConfRegAmt())
		return false;
	okdone=document.webform.okdone.value;
	if (okdone == 0) {
		amtdue=parseFloat(document.webform.amtdue.value);
		what_to_say="Thanks for registering!";
		if (amtdue > 0)
			what_to_say=what_to_say + " Info on how to pay your $" + amtdue + " registration fee will appear on the next screen.";
		alert(what_to_say);
//		document.webform.okdone.value=1;
	}
}

function TotalConfRegAmt() {
	amtdue=0;
	amtfullreg=0;
	amtpreconf=0;
	nonmemberfee=parseFloat(document.webform.nonmemberfee.value);
	latefee=parseFloat(document.webform.latefee.value);
	partial_discount=parseFloat(document.webform.partial_discount.value);
	discount=parseFloat(document.webform.discount.value);
	preconf=parseFloat(document.webform.preconf.value);
	regfee=parseFloat(document.webform.regfee.value);
	amtfullreg=regfee;
	if (document.webform.latereg.value != "") {
		if (document.webform.SG_member[0].checked == true)
			amtfullreg+=latefee;
		document.webform.whichregpd.value="late";
	}
	else
		document.webform.whichregpd.value="regular";
	if (document.webform.SG_member[0].checked == false) {
		amtfullreg+=nonmemberfee;
		document.webform.memornot.value="non-member";
	}
	else
		document.webform.memornot.value="member";
	if (document.webform.PreConference.checked == true)
		amtpreconf=preconf;

	amtdue=amtfullreg+amtpreconf;
	amtdiscount=0;

	if (document.webform.Discount_type[0].checked == true) {
		document.webform.discountornot.value="non-discounted";
	}
	else {
		document.webform.discountornot.value="discounted";
		if ((document.webform.Discount_type[4].checked == true) || (document.webform.Discount_type[5].checked == true)) {
			amtdiscount=amtdue;
		}
		else {
			amtdiscount=partial_discount;
		}
	}
	amtdue-=amtdiscount;
	document.webform.amtfullreg.value=amtfullreg.toFixed(2);
	document.webform.amtpreconf.value=amtpreconf.toFixed(2);
	document.webform.discount.value=amtdiscount;
	document.webform.amtdiscount.value=amtdiscount.toFixed(2);
	document.webform.total_amtdue.value=amtdue;
	document.webform.total_amtdue.value=amtdue.toFixed(2);
	document.webform.amtdue.value=amtdue;
	document.webform.amtdue.value=amtdue.toFixed(2);
	return true;
}

/****************************************************************/
function ValidateConfRideShareData() {

//<input type=hidden name="required" value="realname,email,ride_preference,arrival_day,arrival_time,departure_day,departure_time">

	if (document.webform.realname.selectedIndex == 0) {
		alert("Please select your Name.");
		document.webform.realname.focus();
		return false;
	}
	if (isEmpty(document.webform.email.value)) {
//	if (document.webform.email.selectedIndex == 0) {
		alert("Please select your Email Address.");
		document.webform.email.focus();
		return false;
	}
	else {
		email=document.webform.email.value;
		if ((email.indexOf("@") == -1) || (email.indexOf(".") == -1)) {
			alert("Invalid email address: '" + email + "'");
			document.webform.email.focus();
			return false;
		}
	}
	if ((document.webform.ride_preference[0].checked == false) && (document.webform.ride_preference[1].checked == false)) {
		alert("Please indicate your ride preference.");
		document.webform.ride_preference[0].focus();
		return false;
	}
	if (document.webform.arrival_day.selectedIndex == 0) {
		alert("Please select your arrival day.");
		document.webform.arrival_day.focus();
		return false;
	}
	if (isEmpty(document.webform.arrival_time.value)) {
		alert("Please enter your arrival time.");
		document.webform.arrival_time.focus();
		return false;
	}
	if (document.webform.departure_day.selectedIndex == 0) {
		alert("Please select your departure day.");
		document.webform.departure_day.focus();
		return false;
	}
	if (isEmpty(document.webform.departure_time.value)) {
		alert("Please enter your departure time.");
		document.webform.departure_time.focus();
		return false;
	}
}

