function valid_email(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   //alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   //alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    //alert("Invalid E-mail ID")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    //alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    //alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    //alert("Invalid E-mail ID")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    //alert("Invalid E-mail ID")
		    return false
		 }

 		 return true					
	}
	
function checkNewsEmail(){
	if (document.newsletter_subscribe.email.value == "") {
		error = "Please enter your email address and try again.\n";
		document.newsletter_subscribe.email.focus();
		alert(error);
		return false;
	}else{ 
	}
	if (valid_email(document.newsletter_subscribe.email.value) == false){
		error = "Please enter a valid email address and try again.\n";
		document.newsletter_subscribe.email.focus();
		alert(error);
		return false;
	}else{
		document.newsletter_subscribe.submit()
	}
}

function checkSubscription(){
	if (document.requestform.email.value == "") {
		error = "Please enter your email address and try again.\n";
		document.requestform.email.focus();
		alert(error);
		return false;
	}else{ 
	}
	if (document.requestform.email.value != document.requestform.confirm_email.value) {
		error = "The email addresses do not match.  Please confirm your email address and try again.\n";
		document.requestform.confirm_email.focus();
		alert(error);
		return false;
	}else{
	}
	if (valid_email(document.requestform.email.value) == false){
		error = "Please enter a valid email address and try again.\n";
		document.requestform.email.focus();
		alert(error);
		return false;
	}else{
	}
}

function checkNewAcct(){
	if (document.requestform.name.value == "") {
		error = "Please enter your name and try again.\n";
		document.requestform.name.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.phone.value == "") {
		error = "Please enter your phone number and try again.\n";
		document.requestform.phone.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.email.value == "") {
		error = "Please enter your email address and try again.\n";
		document.requestform.email.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.email.value != document.requestform.confirm_email.value) {
		error = "The email addresses do not match.  Please confirm your email address and try again.\n";
		document.requestform.confirm_email.focus();
		alert(error);
		return false;
	}else{
	}
	if (valid_email(document.requestform.email.value) == false){
		error = "Please enter a valid email address and try again.\n";
		document.requestform.email.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.username.value == "") {
		error = "Please select a username and try again.\n";
		document.requestform.username.focus();
		alert(error);
		return false;
	}else{
	}
}

function checkStandard(){
	if (document.requestform.name.value == "") {
		error = "Please enter your name and try again.\n";
		document.requestform.name.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.phone.value == "") {
		error = "Please enter your phone number and try again.\n";
		document.requestform.phone.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.email.value == "") {
		error = "Please enter your email address and try again.\n";
		document.requestform.email.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.email.value != document.requestform.confirm_email.value) {
		error = "The email addresses do not match.  Please confirm your email address and try again.\n";
		document.requestform.confirm_email.focus();
		alert(error);
		return false;
	}else{
	}
	if (valid_email(document.requestform.email.value) == false){
		error = "Please enter a valid email address and try again.\n";
		document.requestform.email.focus();
		alert(error);
		return false;
	}else{
	}
}

function checkDemo(){
	if (document.requestform.name.value == "") {
		error = "Please enter your name and try again.\n";
		document.requestform.name.focus();
		alert(error);
		return false;
	}else{
	}
	var regxp = /^[A-Za-z0-9 ]+$/;
	var fullname = document.requestform.name.value;
	if (!regxp.test(fullname)){
		error = "Invalid character in the name field. Please edit and try again.\n";
		document.requestform.name.focus();
		alert(error);
		return false;
	}
	if (document.requestform.phone.value == "") {
		error = "Please enter your phone number and try again.\n";
		document.requestform.phone.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.email.value == "") {
		error = "Please enter your email address and try again.\n";
		document.requestform.email.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.email.value != document.requestform.confirm_email.value) {
		error = "The email addresses do not match.  Please confirm your email address and try again.\n";
		document.requestform.confirm_email.focus();
		alert(error);
		return false;
	}else{
	}
	if (valid_email(document.requestform.email.value) == false){
		error = "Please enter a valid email address and try again.\n";
		document.requestform.email.focus();
		alert(error);
		return false;
	}else{
	}
	var walkthrough_yes = document.getElementById("walkthrough_yes");
	var walkthrough_no = document.getElementById("walkthrough_no");
	if (!(walkthrough_yes.checked) && !(walkthrough_no.checked)){
		error = "Would you like to receive a platform walkthrough? Please specify in the request form.\n";
		alert(error);
		return false;
	}
}
	
function checkConfEmail(){
	if (document.requestform.email.value != document.requestform.confirm_email.value) {
		error = "The email addresses do not match.  Please confirm your email address and try again.\n";
		document.requestform.confirm_email.focus();
		alert(error);
		return false;
	}else{
	}
}

function checkConfEmailPass(){
	if (document.requestform.email.value != document.requestform.confirm_email.value) {
		error = "The email addresses do not match.  Please confirm your email address and try again.\n";
		document.requestform.confirm_email.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.password.value != document.requestform.password_confirm.value) {
		error = "The passwords do not match.  Please confirm your password and try again.\n";
		document.requestform.password.focus();
		alert(error);
		return false;
	}else{
	}
}

function checkConfFXCM(){
	if (document.requestform.acct_type.selectedIndex == 0){
		error = "You must select an account type from the list to continue.\n";
		document.requestform.acct_type.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.country.selectedIndex == 0){
		error = "You must select your country from the list to continue.\n";
		document.requestform.country.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.language.selectedIndex == 0){
		error = "You must select your preferred language from the list to continue.\n";
		document.requestform.language.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.email.value != document.requestform.confirm_email.value) {
		error = "The email addresses do not match.  Please confirm your email address and try again.\n";
		document.requestform.confirm_email.focus();
		alert(error);
		return false;
	}else{
	}
}

function checkNonProEurex(){
	if (document.requestform.understand.checked == false) {
		error = "You must state that you understand the details in this agreement to continue.\n";
		document.requestform.account.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.acct_name.value == "") {
		error = "Please enter your account name and try again.\n";
		document.requestform.acct_name.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.account.value == "") {
		error = "Please enter your account number and try again.\n";
		document.requestform.account.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.ssn1.value == "") {
		error = "Please enter your social security or international passport id number and try again.\n";
		document.requestform.ssn1.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.signature1.value == "") {
		error = "You must electronically sign this agreement to continue.\n";
		document.requestform.signature1.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.agreement1.checked == false) {
		error = "You must agree to the terms of the electronic agreement to continue.\n";
		document.requestform.ssn1.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.signature2.value != "") {
		if (document.requestform.ssn2.value == "") {
			error = "Please enter the joint account holder's social security or international passport id number and try again. If there is no additional account holder, please be sure to leave the joint account holder signature blank before trying again.\n";
			document.requestform.ssn2.focus();
			alert(error);
			return false;
		}else{
		}
		if (document.requestform.agreement2.checked == false) {
			error = "The joint account holder must also agree to the terms of the electronic agreement to continue. If there is no additional account holder, please be sure to leave the joint account holder signature blank before trying again.\n";
			document.requestform.signature2.focus();
			alert(error);
			return false;
		}else{
		}
	}else{
	}
}

function checkSpecial01(){
	if (document.requestform.account.value == "") {
		error = "Please enter your account number and try again.  If you have not been assigned an account number yet, enter NEW ACCOUNT into this field.\n";
		document.requestform.account.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.email.value == "") {
		error = "Please enter your email address and try again.\n";
		document.requestform.email.focus();
		alert(error);
		return false;
	}else{
	}
	if (valid_email(document.requestform.email.value) == false){
		error = "Please enter a valid email address and try again.\n";
		document.requestform.email.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.signature1.value == "") {
		error = "Please electronically sign this agreement to continue.\n";
		document.requestform.signature1.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.ssn1.value == "") {
		error = "Please enter the last four digits of your social security number or enter your passport number if you are an international client.\n";
		document.requestform.ssn1.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.agreement1.checked == false) {
		error = "You must agree to the terms of the electronic agreement to continue.\n";
		document.requestform.ssn1.focus();
		alert(error);
		return false;
	}else{
	}
	if (document.requestform.signature2.value == ""){
	}else{
		if (document.requestform.ssn2.value == "") {
			error = "The joint account holder must also enter all required fields.";
			document.requestform.ssn2.focus();
			alert(error);
			return false;
		}else{
		}
		if (document.requestform.agreement2.checked == false) {
			error = "The joint account holder must also agree to the terms of the electronic agreement to continue.\n";
			document.requestform.ssn2.focus();
			alert(error);
			return false;
		}else{
		}
	}
}
