// Validate Entry of Required Fields
function formCheck(){

if (document.getElementById)
  {
  	var f = document.getElementById("usergen");
  }
  else if (document.all)
  {
	var f = document.all['usergen'];
  }
  else if (document.layers)
  {
   	var f = document.forms['usergen'];
  }
  else
  {
        var f = document.usergen;
  }

  	errMsg = false
	errTxt = " "	
/*
	if (f.Salutation.value == ""){
		errMsg = true
		errTxt+="Salutation \n"
	}
*/	
	if (f.this_lname.value == ""){
		errMsg = true
		errTxt+="last name \n"
	}
	
	if (f.this_fname.value == ""){
		errMsg = true
		errTxt+="first name \n"
	}
/*
	if (f.this_MI.value == ""){
		errMsg = true
		errTxt+="Middle Initial \n"
	}
	
	if (f.this_title.value == ""){
		errMsg = true
		errTxt+="title \n"
	}
	
	if (f.this_company.value == ""){
		errMsg = true
		errTxt+="company \n"
	}
*/
	if (f.this_street_addr1.value == ""){
		errMsg = true
		errTxt+="address 1 \n"
	}
	
	if (f.this_city.value == ""){
		errMsg = true
		errTxt+="city \n"
	}
	

var this_stateChoice = f.this_state.selectedIndex;
  if (f.this_state.options[this_stateChoice].value == ""){
  //	if (f.this_state.value == ""){
		errMsg = true
		errTxt+="state \n"
	}
	
	if (f.this_zipcode.value == ""){
		errMsg = true
		errTxt+="zipcode \n"
	}
	
var this_countryChoice = f.this_country.selectedIndex;
  if (f.this_country.options[this_countryChoice].value == ""){
//	if (f.this_country.value == ""){
		errMsg = true
		errTxt+="country \n"
	}
	
	if (f.this_phone.value == ""){
		errMsg = true
		errTxt+="phone \n"
	}
	
/*	
	if (f.Fax.value == ""){
		errMsg = true
		errTxt+="Fax \n"
	}
*/	
	if (f.this_email.value == ""){
		errMsg = true
		errTxt+="email \n"
	}
	
	
	if (f.this_email.value != ""){
	if((f.this_email.value.indexOf(".") > 2) && (f.this_email.value.indexOf("@") > 0)){
	//email is good
	} else {
		errMsg = true
		errTxt+="please enter a valid email address \n"
		}
	}	
	
	
/*
	if (f.Biographical_info.value == ""){
		errMsg = true
		errTxt+="Biographical_info \n"
	}
*/
	
/*
	if (f.this_url.value == ""){
		errMsg = true
		errTxt+="website \n"
	}
*/

//payment method
function checkPaymentmethod(){
var p=false;
for(i=0;i<f.paymentmethod.length;i++){
if(f.paymentmethod[i].checked) { p=true; 
//below closes if paymentmethod is checked
}
//below closes loop through paymentmethod
}

if(!p){
//no donation amount has been selected
		errMsg = true
		errTxt+="please select a payment method. \n"
}

//below closes paymentmethod function
}

//if it's a new or renewing member a donation amount must be selected

//begin check for donation amount information.
function checkDonationamt(){
var b=false;

for(i=0;i<f.donationamount.length;i++){
if(f.donationamount[i].checked) { b=true; 

//donation amount has been selected
//if this is an artist
if (f.artistmember.checked == 1){
//if the value is less than the required amount
  
if(f.donationamount[i].value < 25){
		errMsg = true
		errTxt+="artist membership requires a donation. \n"
//below closes if donation amount is 25
}
//below closes if artist member is checked
}

checkPaymentmethod();

if (f.artistmember.checked != 1){
//if not an artist
	checkMemberstatus();
//below closes if is not an artist member
}

break; }
}

if(!b){
//no donation amount has been selected

//if they are an artist select the minimum amount
if (f.artistmember.checked == 1){
		errMsg = true
		errTxt+="please select a donation amount to become an artist member. \n"
		} else {

//not artistmember but submitting donation so check if they've selected member status
var c=false;
for(i=0;i<f.memberstatus.length;i++){
if(f.memberstatus[i].checked) { c=true; break; }
}

if(c){
//no membership has been selected although memberstatus has been selected
		errMsg = true
		errTxt+="please select a donation amount to become a member. \n"
}
}
		
//below closes if none are checked
}
}
//end check for donation amount information.



//begin check for memberstatus information.
function checkMemberstatus(){
var c=false;

for(i=0;i<f.memberstatus.length;i++){
if(f.memberstatus[i].checked) { c=true; break; }
}

if(!c){
//no memberstatus has been selected
		errMsg = true
		errTxt+="please tell us your member status. \n"
}
}
//end check for memberstatus information.


//begin check for donation amount information.
function checkMemberstatusALONE(){
var d=false;

for(i=0;i<f.memberstatus.length;i++){
if(f.memberstatus[i].checked) { d=true; break; }
}

if(d){
//if member status is set check if they have made a donation
checkDonationamt();
}
}
//end check for donation amount information.


//begin check for artist member information.
//if artist, donation must be checked and at least $35
function checkArtistmember(){
  if (f.artistmember.checked == 1){

	checkDonationamt();
	checkMemberstatus();
	
	if (f.this_email.value == ""){
		errMsg = true
		errTxt+="artist members must have an email address \n"
	}
	if (f.this_u_pass.value == ""){
		errMsg = true
		errTxt+="artist members must create a password \n"
	}
	
	if (f.this_u_pass.value != ""){
	
	if (f.this_u_pass.value != f.this_passwordconfirm.value){	
		errMsg = true
		errTxt+="your password does not match your confirmation please check that it is correct \n"
		}

	if (f.security_answer.value == ""){
		errMsg = true
		errTxt+="please enter a security answer \n"
	}		
		
		
	}
	
//now see if they are donating but not an artist member
    } else {
    checkDonationamt();
    }
//end check for artist member information.
}


//run the function to see if they are or aren't artist members
checkArtistmember();
//check if they've selected a member status
if (f.artistmember.checked != 1){
checkMemberstatusALONE();
}


	if (errMsg==true){
	alert("Certain Required Field(s) Missing: \n" + "\n" + errTxt +  "\n" + "   Please enter information");
	return false
	}
	if (errMsg==false){return true}

}


// begin integer check for certainfields
// copyright 1999 Idocs, Inc. http://www.idocs.com
// Distribute this script freely but keep this notice in place
function numbersonly(myfield, e, dec)
{
var key;
var keychar;

if (window.event)
   key = window.event.keyCode;
else if (e)
   key = e.which;
else
   return true;
keychar = String.fromCharCode(key);

// control keys
if ((key==null) || (key==0) || (key==8) ||
    (key==9) || (key==13) || (key==27) )
   return true;

// numbers
else if ((("0123456789.").indexOf(keychar) > -1))
   return true;

// decimal point jump
/*else if (dec && (keychar == "."))
   {
   myfield.form.elements[dec].focus();
   return false;
   }
   */
else
   return false;
}

//end integer check for certainfields


