// JavaScript Document

//Make an alert when someone tries to click on the non-functioning video picture

function cm_needtoregister() {
	alert("Hi - This is just a picture of a video...  Please enter your email in the box below to access the actual Free 5-video Capital Mastery Fundamentals training program - Mark");
}

//validate a common INFUSIONSOFT SIGNUP form
function cm_validate_infusion(thisform) {
	with (thisform) {
			whichform = (thisform.name);
			iserr = false;
			focusset = false;
//			alert(whichform);
//		if (validate_required_field(Contact0FirstName,"Please enter your first name")==false) {iserr = true;}
			
//		if (whichform == "FreeSession") {	
//			if (validate_required_field(Contact0LastName,"Please enter your last name")==false) {iserr = true;}
//		}
			
		if (email_check(Contact0Email, "Please enter a valid email address")==false) {iserr = true;}
  
//		if (whichform == "FreeSession") {	
//			if (validate_required_field(Contact0Phone1,"Please enter your phone number")==false) {iserr = true;}
//		}

		if (iserr == true) {return false;}
	}
}

//validate a common INFUSIONSOFT SIGNUP form
function es_validate_infusion(thisform) {
	with (thisform) {
			whichform = (thisform.name);
			iserr = false;
			focusset = false;
//			alert(whichform);
		if (validate_required_field(Contact0FirstName,"Please enter your first name")==false) {iserr = true;}
			
		if (whichform == "FreeSession") {	
			if (validate_required_field(Contact0LastName,"Please enter your last name")==false) {iserr = true;}
		}
			
		if (email_check(Contact0Email, "Please enter a valid email address")==false) {iserr = true;}
  
		if (whichform == "FreeSession") {	
			if (validate_required_field(Contact0Phone1,"Please enter your phone number")==false) {iserr = true;}
		}

		if (iserr == true) {return false;}
	}
}
//unhide the error label
function expose_error_msg(field, alerttxt) {
	with (field) {
		errorfield=(field.name+"_err");
//		alert(errorfield);
		document.getElementById(errorfield).innerHTML = alerttxt;
		document.getElementById(errorfield).style.display = "block";
		if (focusset == false) {
			field.focus();
			focusset = true;
		}
		return false;
	}
}
//rehide the error label
function hide_error_msg(field) {
	with (field) {
		errorfield=(field.name+"_err");
		document.getElementById(errorfield).style.display = "none";
		return true;
	}
}
		

//require data in a field
function validate_required_field(field,alerttxt) {
	with (field) {
	  if (value==null||value=="") {
		  expose_error_msg(field, alerttxt);
		  return false;
	  }
	  else {
		   hide_error_msg(field);	
	       return true;
	  }
	}
}

//check for valid email address in Infusionsoft form
function email_check(field, alerttxt) {
	with (field) {
		str = field.value;
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		  expose_error_msg(field, alerttxt);
		}
	
		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		  expose_error_msg(field, alerttxt);
		  return false;
		}
	
		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		  expose_error_msg(field, alerttxt);
  		  return false;
		}
	
		 if (str.indexOf(at,(lat+1))!=-1){
		  expose_error_msg(field, alerttxt);
  		  return false;
		 }
	
		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		  expose_error_msg(field, alerttxt);
  		  return false;
		 }
	
		 if (str.indexOf(dot,(lat+2))==-1){
		  expose_error_msg(field, alerttxt);
  		  return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		  expose_error_msg(field, alerttxt);
  		  return false;
		 }
//		 alert("it's valid");
         hide_error_msg(field);	
		 return true;	
	}
}


//validates both the membership cart form and the Checkout form
function es_validate_EIA_cart(thisform) {
	
	rawdollar = (thisform).amount;
	if ((rawdollar.value==null)||(rawdollar.value=="")){
		alert("Please enter a gift amount");
		rawdollar.focus()
		return false;
	}
	
	rawdollarval = rawdollar.value;
// 	alert(rawdollarval);
	dollars = parseFloat(rawdollarval.replace(/\$/,""));
//	alert(dollars);
	if (isNaN(dollars)) {
		alert("Please enter a dollar amount");
		rawdollar.value=""
		rawdollar.focus()
		return false;
	}

	if (dollars < 1) {
		alert("Minimum gift is $1.00");
		rawdollar.focus()
		return false;
	}	

	with (thisform) {
		
		if ((thisform).id =="DoDirectPaymentForm") {
			
			if (echeck(email.value)==false){
			  	email.focus();return false;}
	  
			if (email.value != confirmemail.value) {
				alert("Confirmation email does not match. Please check your email address for accuracy");
				email.focus();return false;
			}
			
			if (validate_required(firstName,"Please enter your first name")==false)
			  {firstName.focus();return false;}

			if (validate_required(lastName,"Please enter your last name")==false)
			  {lastName.focus();return false;}
			  
			if (validate_required(phone,"Please enter your telephone number")==false)
			  {phone.focus();return false;}
			
//			(thisform).paynow.disabled=true;
//			return true;
		}

	}
}
		

	

//validate a common INFUSIONSOFT SIGNUP form
function es_validate_form(thisform) {
	with (thisform) {
		if (validate_required(Contact0FirstName,"Please enter your first name")==false)
		  {Contact0FirstName.focus();return false;}

		if (echeck(Contact0Email.value)==false){
			Contact0Email.focus();return false;}
  
//		if (validate_required(lname,"Please enter your last name")==false)
//		  {lname.focus();return false;}
	}
}


//validate an email field
function validate_email(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@");
dotpos=value.lastIndexOf(".");
if (apos<1||dotpos-apos<2) 
  {alert(alerttxt);return false;}
else {return true;}
}
}

//require data in a field
function validate_required(field,alerttxt)
{
with (field)
{
  if (value==null||value=="")
  {
  alert(alerttxt);return false;
  }
  else
  {
  return true;
  }
}
}

//unhide and hide a Division
function toggleIt(divname){
	var status = document.getElementById(divname).style.display;
	if(status == "block") {
		document.getElementById(divname).style.display = "none";
		var status = document.getElementById(divname).style.display;
		}
	else {
		document.getElementById(divname).style.display = "block";
		var status = document.getElementById(divname).style.display;
		}
	}
	
function hideIt(divname){
	document.getElementById(divname).style.display = "none";
	}

function showIt(divname){
	document.getElementById(divname).style.display = "block";
	}
	
//builds the cart
//fc_tb_WIDTH = 650;
//fc_tb_HEIGHT = 400;

//This has been used before to deal with getting the focus back to a form.
//function fc_BuildFoxyCart() {
//	$j('input[@name="subscription_email"]').focus();
//	$j('input[@name="subscription_email"]').blur();
//}

//Set the Start Date for a 14 day trial Subscription
function set_start_date() {
	var adate=new Date();
//	alert(adate);
	d=new Date(adate.getTime() + (14 * 86400000));
	
	var day=d.getDate();
	if(day<10) {
		day = ("0" + day);
		}
	var month=d.getMonth() + 1;
	if(month < 10) {
		month = ("0" + month);
		}
	
	var year=d.getFullYear();
	
	var datecode = year + month + day;
//	alert(datecode);
	document.getElementById("gscform").sub_startdate.value=datecode;
	}

//validate a payment form
function fc_PreProcess(){
	
	
//	emailID = (document.getElementById("gscform").subscription_email);
//	if ((emailID.value==null)||(emailID.value=="")){
//		alert("Please enter your email address");
//		emailID.focus();
//		return false;
//	}
//	if (echeck(emailID.value)==false){
//		emailID.value=""
//		emailID.focus()
//		return false
//	}
	
	rawdollar = (document.getElementById("gscform").price);
	if ((rawdollar.value==null)||(rawdollar.value=="")){
		alert("Please enter a contribution amount");
		rawdollar.focus()
		return false;
	}
	rawdollarval = rawdollar.value;
// 	alert(rawdollarval);
	dollars = parseFloat(rawdollarval.replace(/\$/,""));
//	alert(dollars);
 	if (isNaN(dollars)) {
 		alert("Please enter a dollar amount");
		rawdollar.value=""
		rawdollar.focus()
 		return false;
 	}
	
	payments = (12/parseFloat(document.getElementById("gscform").sub_frequency.value));
	yeartotal = dollars * payments;

	if (dollars < 1) {
		alert("Minimum contribution is $1.00");
		return false;
	}	
	
	if (yeartotal <1) {
		alert("Minimum contribution is $1.00 per year. Please adjust your contribution amount and/or frequency. Thanks!");
		return false;
	}
	return true;
}

function echeck(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("Please enter a valid email address")
	   return false
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   alert("Please enter a valid email address")
	   return false
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		alert("Please enter a valid email address")
		return false
	}

	 if (str.indexOf(at,(lat+1))!=-1){
		alert("Please enter a valid email address")
		return false
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		alert("Please enter a valid email address")
		return false
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
		alert("Please enter a valid email address")
		return false
	 }
	
	 if (str.indexOf(" ")!=-1){
		alert("Please enter a valid email address")
		return false
	 }
	 return true					
}

function blankIt() {
	document.SearchAll.Keyword.value = '';
	return false;
}


	function generateCC(){
		var cc_number = new Array(16);
		var cc_len = 16;
		var start = 0;
		var rand_number = Math.random();

		switch(document.DoDirectPaymentForm.creditCardType.value)
        {
			case "Visa":
				cc_number[start++] = 4;
				break;
			case "Discover":
				cc_number[start++] = 6;
				cc_number[start++] = 0;
				cc_number[start++] = 1;
				cc_number[start++] = 1;
				break;
			case "MasterCard":
				cc_number[start++] = 5;
				cc_number[start++] = Math.floor(Math.random() * 5) + 1;
				break;
			case "Amex":
				cc_number[start++] = 3;
				cc_number[start++] = Math.round(Math.random()) ? 7 : 4 ;
				cc_len = 15;
				break;
        }

        for (var i = start; i < (cc_len - 1); i++) {
			cc_number[i] = Math.floor(Math.random() * 10);
        }

		var sum = 0;
		for (var j = 0; j < (cc_len - 1); j++) {
			var digit = cc_number[j];
			if ((j & 1) == (cc_len & 1)) digit *= 2;
			if (digit > 9) digit -= 9;
			sum += digit;
		}

		var check_digit = new Array(0, 9, 8, 7, 6, 5, 4, 3, 2, 1);
		cc_number[cc_len - 1] = check_digit[sum % 10];

		document.DoDirectPaymentForm.creditCardNumber.value = "";
		for (var k = 0; k < cc_len; k++) {
			document.DoDirectPaymentForm.creditCardNumber.value += cc_number[k];
		}
	}
