
// ZIP CODE VALIDATION - NUMBER ONLY!

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;
}


// CHECK LOGIN FORM

function checkLogin ( form )
{
  if (form.login.value == "") {
    alert( "Please enter your account Login ID." );
	form.login.style.background = 'Yellow';
	form.login.focus();
    return false ;
  }
  
  if (form.password.value == "") {
    alert( "Please enter your account Password." );
	form.password.style.background = 'Yellow';
	form.password.focus();
    return false ;
  }

  return true ;
}



// CHECK FOR CITY POPULATED FOR SEARCH

function checkFieldCity ()
{
  if ( document.getElementById("city").value == "") {
    alert( "Select a State from the State Drop Down\nThen select a City from the City List." );
	document.getElementById("city").style.background = 'Yellow';
	document.getElementById("city").focus();
    return false ;
  }
	return true ;
}



// CHECKING MAIN ACCOUNT SIGN UP FORM

function checkjoinform ( form ){

	if (form.company.value == "") {
		alert( "Please enter your Company or Driver Name." );
		form.company.style.background = 'Yellow';
		form.company.focus();
		return false ;
	  }
	
	if (form.firstname.value == "") {
		alert( "Please enter your First Name." );
		form.firstname.style.background = 'Yellow';
		form.firstname.focus();
		return false ;
	  }
	  
   if (form.lastname.value == "") {
		alert( "Please enter your Last Name." );
		form.lastname.style.background = 'Yellow';
		form.lastname.focus();
		return false ;
	  }
	
  if (form.address.value == "") {
		alert( "Please enter your Street Address." );
		form.address.style.background = 'Yellow';
		form.address.focus();
		return false ;
	  }
	 
	if (form.phone.value == "") {
		alert( "Please enter a Phone Number." );
		form.phone.style.background = 'Yellow';
		form.phone.focus();
		return false ;
	}
	
	if (form.phone.value.length < 10) {
		alert( "Please enter 10 digits for Phone Number." );
		form.phone.style.background = 'Yellow';
		form.phone.focus();
		return false ;
	  }
		
	if (form.state3.value == "") {
		alert( "Please enter your State" );
		form.state3.style.background = 'Yellow';
		form.state3.focus();
		return false ;
	}
	
	if (form.city2.value == "") {
		alert( "Please select at least 3 Cities to be found in.\nThis is how visitors find you!" );
		form.state.style.background = 'Yellow';
		document.getElementById("state").selectedIndex[0];
		form.state.focus();
		return false ;
	}
	
	if (form.city3.value == "") {
		alert( "Please enter your City." );
		form.city3.style.background = 'Yellow';
		form.city3.focus();
		return false ;
	}
	
	if (form.zip.value == "") {
		alert( "Please enter your Zip Code." );
		form.zip.style.background = 'Yellow';
		form.zip.focus();
		return false ;
	  }
	
	if (form.zip.value.length < 5) {
		alert( "Please enter 5 digits for Zip Code." );
		form.zip.style.background = 'Yellow';
		form.zip.focus();
		return false ;
	  }
	
	if (form.email.value == "") {
		alert( "Please enter an Email Address." );
		form.email.style.background = 'Yellow';
		form.email.focus();
		return false ;
	  }
	  
	if (form.login.value == "") {
		alert( "Please create a Login." );
		form.login.style.background = 'Yellow';
		form.login.focus();
		return false ;
	  }
	
	if (form.login.value.length < 5) {
		alert( "Please enter at least 5 letters \nor numbers for your Login." );
		form.login.style.background = 'Yellow';
		form.login.focus();
		return false ;
	  }
	
	if (form.password.value == "") {
		alert( "Please create a Password." );
		form.password.style.background = 'Yellow';
		form.password.focus();
		return false ;
	  }
	
	if (form.password.value.length < 5) {
		alert( "Please enter at least 5 letters \nor numbers for your Password." );
		form.password.style.background = 'Yellow';
		form.password.focus();
		return false ;
	  }
	
	if (form.url.value == "") {
		alert( "Please create your personal url on Elegant Journeys." );
		form.url.style.background = 'Yellow';
		form.url.focus();
		return false ;
	  }
	
//	if (form.ccname.value == "") {
//		alert( "Please enter the Name on your credit card." );
//		form.ccname.style.background = 'Yellow';
//		form.ccname.focus();
//		return false ;
//	  }
//	
//	if (form.ccnumber.value == "") {
//		alert( "Please enter your Credit Card Number." );
//		form.ccnumber.style.background = 'Yellow';
//		form.ccnumber.focus();
//		return false ;
//	  }
//	
//	if (form.ccmonth.value == "") {
//		alert( "Select Expiration Month on credit card." );
//		form.ccmonth.style.background = 'Yellow';
//		form.ccmonth.focus();
//		return false ;
//	  }  
//
//	if (form.ccyear.value == "") {
//		alert( "Select Expiration Year on credit card." );
//		form.ccyear.style.background = 'Yellow';
//		form.ccyear.focus();
//		return false;
//	}  

	if (form.email.value != "") {
	
		var error="";
		var tfld = trim(form.email.value); // value of field with whitespace trimmed off
		var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
		var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
	   
		if (form.email.value == "") {
			form.email.style.background = 'Yellow';
			form.email.focus();
			alert("You didn't enter an email address.\n");
			return false;
		} else if (!emailFilter.test(tfld)) { //test email for illegal characters
			form.email.style.background = 'Yellow';
			form.email.focus();
		    alert("Please enter a valid email address.\n");
			return false;
		} else if (form["submission[email]"].value.match(illegalChars)) {
			form.email.style.background = 'Yellow';
			form.email.focus();
			alert("The email address contains illegal characters.\n");
			return false;
		}
	}
	
	  return true ;
	}


// trim function

function trim(s){
	return s.replace(/^\s+|\s+$/, '');
}


/* MAKE FIRST FIELD FOCUS ON LOAD
	USAGE : <body onLoad="f_setfocus( document.form1 );"> */

function f_setfocus( aForm )
{
	if( aForm.elements[0]!=null) {
		var i;
		var max = aForm.length;
		for( i = 0; i < max; i++ ) {
			if( aForm.elements[ i ].type != "hidden" &&
				!aForm.elements[ i ].disabled &&
				!aForm.elements[ i ].readOnly ) {
				aForm.elements[ i ].focus();
				break;
			}
		}
	}
}
