/* This Array is used to populate the source Id */

strSourceIdArray = new Array();
strSourceIdArray["RMWEB1"] = {referralSource:"RMWEB1",product:"Lead Capture Forms",tcmpageId:"forms"}
strSourceIdArray["RMWEB2"] = {referralSource:"RMWEB2",product:"Lead Capture Forms",tcmpageId:"lead-capture-ml"}
strSourceIdArray["RMWLD1"] = {referralSource:"RMWLD1",product:"Lead Capture Forms",tcmpageId:"freekit-vid1"}
strSourceIdArray["RMWLD2"] = {referralSource:"RMWLD2",product:"Lead Capture Forms",tcmpageId:"freekit-vid2"}
strSourceIdArray["RMWLD3"] = {referralSource:"RMWLD3",product:"Lead Capture Forms",tcmpageId:"freekit-vid3"}
strSourceIdArray["RMWLD4"] = {referralSource:"RMWLD4",product:"Lead Capture Forms",tcmpageId:"freekit-vid4"}
strSourceIdArray["RMWLD5"] = {referralSource:"RMWLD5",product:"Lead Capture Forms",tcmpageId:"freekit-vid5"}
strSourceIdArray["RMWLD6"] = {referralSource:"RMWLD6",product:"Lead Capture Forms",tcmpageId:"freekit-vid6"}
strSourceIdArray["RMWLD7"] = {referralSource:"RMWLD7",product:"Lead Capture Forms",tcmpageId:"freekit-vid7"}
strSourceIdArray["RMWLD8"] = {referralSource:"RMWLD8",product:"Lead Capture Forms",tcmpageId:"freekit-vid8"}
strSourceIdArray["RMWLD1A"] = {referralSource:"RMWLD1A",product:"Lead Capture Forms",tcmpageId:"freekit-vid1a"}
strSourceIdArray["RMWLD2A"] = {referralSource:"RMWLD2A",product:"Lead Capture Forms",tcmpageId:"freekit-vid2a"}
strSourceIdArray["RMWLD3A"] = {referralSource:"RMWLD3A",product:"Lead Capture Forms",tcmpageId:"freekit-vid3a"}
strSourceIdArray["RMWLD4A"] = {referralSource:"RMWLD4A",product:"Lead Capture Forms",tcmpageId:"freekit-vid4a"}
strSourceIdArray["RMWLD5A"] = {referralSource:"RMWLD5A",product:"Lead Capture Forms",tcmpageId:"freekit-vid5a"}
strSourceIdArray["RMWLD6A"] = {referralSource:"RMWLD6A",product:"Lead Capture Forms",tcmpageId:"freekit-vid6a"}
strSourceIdArray["RMWLD7A"] = {referralSource:"RMWLD7A",product:"Lead Capture Forms",tcmpageId:"freekit-vid7a"}
strSourceIdArray["RMWLD8A"] = {referralSource:"RMWLD8A",product:"Lead Capture Forms",tcmpageId:"freekit-vid8a"}
strSourceIdArray["RMCWEB1"] = {referralSource:"RMCWEB1",product:"Lead Capture Forms",tcmpageId:"lead-capture-rmc1"}
strSourceIdArray["RMCWEB2"] = {referralSource:"RMCWEB2",product:"Lead Capture Forms",tcmpageId:"lead-capture-rmc2"}




function validateRMLead(form) {
	// required check
	if (form.first_name_box.value == "") {
		alert("Please enter your First name.");
		form.first_name_box.focus();
		form.first_name_box.select();
		return false;
	}
	if (form.last_name_box.value == "") {
		alert("Please enter your Last name.");
		form.last_name_box.focus();
		form.last_name_box.select();
		return false;
	}
	if (form.street_box.value == "") {
		alert("Please enter a Street.");
		form.street_box.focus();
		form.street_box.select();
		return false;
	}
	if (form.city_box.value == "") {
		alert("Please enter a City.");
		form.city_box.focus();
		form.city_box.select();
		return false;
	}
	if (form.state_box[form.state_box.selectedIndex].value == "0") {
		alert("Please select a State.");
		form.state_box.focus();
		//form.state_box.select();
		return false;
	}
	if (form.zip_box.value == "") {
		alert("Please enter a valid Zip Code.");
		form.zip_box.focus();
		form.zip_box.select();
		return false;
	}
	// zip should be a number and 5 digits
	if (!isNum(form.zip_box.value)
			|| form.zip_box.value.length < 5) {
		alert("Please enter a valid Zip Code.");
		form.zip_box.focus();
		form.zip_box.select();
		return false;
	}
	// check for phone number
	if (form.areaCode_box.value != ""
		|| form.lineNumber_box.value != ""
		|| form.prefix_box.value != "")
	{
		// if phone number present, check for validity
		if (!isNum(form.areaCode_box.value)) 
		{
			alert("Please enter a valid Phone Number.");
			form.areaCode_box.focus();
			form.areaCode_box.select();
			return false;
		}
		if (!isNum(form.lineNumber_box.value)) 
		{
			alert("Please enter a valid Phone Number.");
			form.lineNumber_box.focus();
			form.lineNumber_box.select();
			return false;
		}
		if (!isNum(form.prefix_box.value)) 
		{
			alert("Please enter a valid Phone Number.");
			form.prefix_box.focus();
			form.prefix_box.select();
			return false;
		}
		if (form.areaCode_box.value.length < 3) 
		{
			alert("Please enter a valid Phone Number.");
			form.areaCode_box.focus();
			form.areaCode_box.select();
			return false;
		}
				if (form.prefix_box.value.length < 3) 
		{
			alert("Please enter a valid Phone Number.");
			form.prefix_box.focus();
			form.prefix_box.select();
			return false;
		}
				if (form.lineNumber_box.value.length < 4) 
		{
			alert("Please enter a valid Phone Number.");
			form.lineNumber_box.focus();
			form.lineNumber_box.select();
			return false;
		}
	}
	else {
	alert("Please enter a valid Phone Number.");
			form.areaCode_box.focus();
			form.areaCode_box.select();
			return false;	
	}
	
	if ((form.email_box.value != "") && ((form.email_box.value.indexOf("@",0)<0) || (form.email_box.value.indexOf(".",0)<0))){
		alert("Please enter a valid e-mail address.");
		form.email_box.focus();
		form.email_box.select();
		return false;
	}
	// check for date of birth
	//First convert date into valid format
	formatDate(form.dob_box);
	if (form.dob_box.value == "") {
		alert("Please enter a Date of Birth.");
		form.dob_box.focus();
		form.dob_box.select();
		return false;
	}
	if (form.dob_box.value != "") {
		// check for date of birth format
		if (!checkDate(form.dob_box.value)) {
			form.dob_box.focus();
	  		form.dob_box.select();
		 	return false;
		 }
	}
	// check against current date
	var year = splitDate(form.dob_box.value, "Y");
	var month = splitDate(form.dob_box.value, "M");
	var day = splitDate(form.dob_box.value, "D");
	var birthDate = new Date(year, month - 1, day);
	var currentDate = new Date();
	if (!(birthDate < currentDate)) {
		alert("Date of Birth is greater than Current Date.");
		form.dob_box.focus();
		form.dob_box.select();
		return false;
	}
	/*if (form.antispam_box.value == "") {
			alert("Please enter the required security code as displayed.");
			form.antispam_box.focus();
	  		form.antispam_box.select();
		 	return false;
	}*/
	
}

var numb = '0123456789';

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);
}
function checkDate(dtStr){
	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strMonth=dtStr.substring(0,pos1)
	var strDay=dtStr.substring(pos1+1,pos2)
	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		alert("Please enter valid date format (mm/dd/yyyy). Year must be between" + minYear + " and current date.")
		return false
	}
	if (strMonth.length<1 || month<1 || month>12){
		alert("Please enter valid date format (mm/dd/yyyy). Year must be between" + minYear + " and current date.")
		return false
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		alert("Please enter valid date format (mm/dd/yyyy). Year must be between" + minYear + " and current date.")
		return false
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		alert("Please enter valid date format (mm/dd/yyyy). Year must be between" + minYear + " and current date.")
		return false
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		alert("Please enter valid date format (mm/dd/yyyy). Year must be between" + minYear + " and current date.")
		return false
	}
	return true
}
function checkLen(form,x,y) {	
	if (y.length==x.maxLength) {
		var next=x.tabIndex;		
		for (i=0; i < form.length; i++) {
			if (form.elements[i].tabIndex > next) {
				form.elements[i].focus();
				return true;
			}
		}
	}
}
function validateAntiSpam(formField, serverValue) {
	if (formField.value != serverValue) {
		alert("Please enter the Anti Spam Code as you see it.");
		formField.setFocus();
		formField.select();
		return false;
	}
}
function clearForm() {
	//Clear all form fields
	// Clear Screen fields
	document.forms[0].first_name_box.value = "";
	document.forms[0].last_name_box.value = "";
	document.forms[0].street_box.value = "";
	document.forms[0].city_box.value = "";
	document.forms[0].state_box.selectedIndex = 0;
	document.forms[0].zip_box.value = "";
	document.forms[0].areaCode_box.value = "";
	document.forms[0].prefix_box.value = "";
	document.forms[0].lineNumber_box.value = "";
	document.forms[0].email_box.value = "";
	document.forms[0].format_box[0].checked = "checked";
	document.forms[0].dob_box.value = "";
	document.forms[0].ownership_box[0].checked = "checked";	
	document.forms[0].antispam_box.value = "";
	// Clear hidden fields
	document.forms[0].firstName.value = "";
	document.forms[0].lastName.value = "";
	document.forms[0].street.value = "";
	document.forms[0].city.value = "";
	document.forms[0].state.value = "";
	document.forms[0].zip.value = "";
	document.forms[0].areaCode.value = "";
	document.forms[0].prefix.value = "";
	document.forms[0].lineNumber.value = "";
	document.forms[0].format.value = "";
	document.forms[0].email.value = "";
	document.forms[0].dob.value = document.forms[0].dob_box.value;
	document.forms[0].homeOwn.value = "";
	document.forms[0].antispam.value = "";
}

function doSubmit(form) {
   var returnVal= validateRMLead(form);
   var formName= form.name;
  
   if (returnVal == false) {
             
       return false;
   } else if(typeof returnVal =="undefined") {
       // save in hidden fields
       	form.firstName.value = form.first_name_box.value;
       	form.lastName.value = form.last_name_box.value;
       	form.street.value = form.street_box.value;
       	form.city.value = form.city_box.value;
       	form.state.value = form.state_box.value;
       	form.zip.value = form.zip_box.value;
       	form.areaCode.value = form.areaCode_box.value;
       	form.prefix.value = form.prefix_box.value;
       	form.lineNumber.value = form.lineNumber_box.value;
       	if (form.format_box[0].checked) form.format.value = form.format_box[0].value;
       	if (form.format_box[1].checked) form.format.value = form.format_box[1].value;
       	form.email.value = form.email_box.value;
       	form.dob.value = form.dob_box.value;
       	if (form.ownership_box[0].checked) form.homeOwn.value = form.ownership_box[0].value;
       	if (form.ownership_box[1].checked) form.homeOwn.value = form.ownership_box[1].value;
       	//form.antispam.value = form.antispam_box.value;
       	// initialize the screen fields
       	form.first_name_box.value = "";
       	form.last_name_box.value = "";
       	form.street_box.value = "";
       	form.city_box.value = "";
       	form.state_box.selectedIndex = 0;
       	form.zip_box.value = "";
       	form.areaCode_box.value = "";
       	form.prefix_box.value = "";
       	form.lineNumber_box.value = "";
       	form.email_box.value = "";
       	form.format_box[0].checked = "checked";
       	form.dob_box.value = "";
       	form.ownership_box[0].checked = "checked";	
       	//form.antispam_box.value = "";	
       	
       	//Set the Referral source
       	for (var i in strSourceIdArray){
	    if (strSourceIdArray[i].product == subContentGroup) {
	         console.debug(strSourceIdArray[i].product )
	           var arrtcmid= strSourceIdArray[i].tcmpageId;
	                  if (tcmPageID.indexOf(arrtcmid) != -1 ) {
	                        console.debug(arrtcmid);
	                        var refSourceID = strSourceIdArray[i].referralSource;
	                        console.debug(refSourceID);
	                        form.referralSource.value= refSourceID
	
	                   }
	       }
       }
	
       
       submitLeadCaptureForm(formName,'RMWebform','RMWebformthankyou','RMWebformerror','RMWebformexception');
       return false;
   }

}


function validateRMLead_rate(form) {
	// required check
	if (form.first_name_box.value == "") {
		alert("Please enter your First name.");
		form.first_name_box.focus();
		form.first_name_box.select();
		return false;
	}
	if (form.last_name_box.value == "") {
		alert("Please enter your Last name.");
		form.last_name_box.focus();
		form.last_name_box.select();
		return false;
	}
	
	
/*	// check for phone number
	if (form.areaCode_box.value == ""
		|| form.lineNumber_box.value == ""
		|| form.prefix_box.value == "")
	{
		// if phone number present, check for validity
		if (!isNum(form.areaCode_box.value)) 
		{
			alert("Please enter a valid Phone Number.");
			form.areaCode_box.focus();
			form.areaCode_box.select();
			return false;
		}
		if (!isNum(form.lineNumber_box.value)) 
		{
			alert("Please enter a valid Phone Number.");
			form.lineNumber_box.focus();
			form.lineNumber_box.select();
			return false;
		}
		if (!isNum(form.prefix_box.value)) 
		{
			alert("Please enter a valid Phone Number.");
			form.prefix_box.focus();
			form.prefix_box.select();
			return false;
		}
		if (form.areaCode_box.value.length < 3) 
		{
			alert("Please enter a valid Phone Number.");
			form.areaCode_box.focus();
			form.areaCode_box.select();
			return false;
		}
				if (form.prefix_box.value.length < 3) 
		{
			alert("Please enter a valid Phone Number.");
			form.prefix_box.focus();
			form.prefix_box.select();
			return false;
		}
				if (form.lineNumber_box.value.length < 4) 
		{
			alert("Please enter a valid Phone Number.");
			form.lineNumber_box.focus();
			form.lineNumber_box.select();
			return false;
		}
	}
*/
// check for phone number
	if (form.areaCode_box.value == "" || form.lineNumber_box.value == "" || form.prefix_box.value == "") {
		alert("Please enter a valid Phone Number.");
		form.areaCode_box.focus();
		form.areaCode_box.select();
		return false;
	} else {	// if phone number present, check for validity
		if (!isNum(form.areaCode_box.value) || !isNum(form.lineNumber_box.value) || !isNum(form.prefix_box.value)) 	{
			alert("Please enter a valid Phone Number.");
			form.areaCode_box.focus();
			form.areaCode_box.select();
			return false;
		}
		if (form.areaCode_box.value.length < 3 || form.prefix_box.value.length < 3 || form.lineNumber_box.value.length < 4) {
			alert("Please enter Phone Number in xxx xxx xxxx format.");
			form.areaCode_box.focus();
			form.areaCode_box.select();
			return false;
		}
	}	
	if (form.email_box.value == "") 
	{
       alert("Please enter a valid e-mail address.");
		form.email_box.focus();
		form.email_box.select();
		return false;
	}	
     if ((form.email_box.value != "") && ((form.email_box.value.indexOf("@",0)<0) || (form.email_box.value.indexOf(".",0)<0))){
		alert("Please enter a valid e-mail address.");
		form.email_box.focus();
		form.email_box.select();
		return false;
	}
	
	
	if (form.zip_box.value == "") {
		alert("Please enter a valid Zip Code.");
		form.zip_box.focus();
		form.zip_box.select();
		return false;
	}
	// zip should be a number and 5 digits
	if (!isNum(form.zip_box.value)
			|| form.zip_box.value.length < 5) {
		alert("Please enter a valid Zip Code.");
		form.zip_box.focus();
		form.zip_box.select();
		return false;
	}
	

	/*if (form.antispam_box.value == "") {
			alert("Please enter the required security code as displayed.");
			form.antispam_box.focus();
	  		form.antispam_box.select();
		 	return false;
	}*/
	
}

function doSubmit_rate(form) {
   var returnVal= validateRMLead_rate(form);
   var formName= form.name;
  
      if (returnVal == false) {
       
		       return false;
   } else if(typeof returnVal =="undefined") {
   
         
       // save in hidden fields
       	form.firstName.value = form.first_name_box.value;
       	form.lastName.value = form.last_name_box.value;
       	form.areaCode.value = form.areaCode_box.value;
       	form.prefix.value = form.prefix_box.value;
       	form.lineNumber.value = form.lineNumber_box.value;
		form.email.value = form.email_box.value;
		form.zip.value = form.zip_box.value;
       	if (form.interest_box[0].checked) form.interest.value = form.interest_box[0].value;
       	if (form.interest_box[1].checked) form.interest.value = form.interest_box[1].value;
         	//form.antispam.value = form.antispam_box.value;
		
		eval("form.phone.value = '"+form.areaCode_box.value+"-"+form.prefix_box.value+"-"+form.lineNumber_box.value+"'");
					
       	// initialize the screen fields
       	form.first_name_box.value = "";
       	form.last_name_box.value = "";
       	form.areaCode_box.value = "";
       	form.prefix_box.value = "";
       	form.lineNumber_box.value = "";
       	form.email_box.value = "";
		form.zip_box.value = "";
       	form.interest_box[0].checked = "checked";
       
       	//form.antispam_box.value = "";	
       	
      	//Set the Referral source
       	for (var i in strSourceIdArray){
	    if (strSourceIdArray[i].product == subContentGroup) {
	         console.debug(strSourceIdArray[i].product )
	           var arrtcmid= strSourceIdArray[i].tcmpageId;
	                  if (tcmPageID.indexOf(arrtcmid) != -1 ) {
	                        console.debug(arrtcmid);
	                        var refSourceID = strSourceIdArray[i].referralSource;
	                        console.debug(refSourceID);
	                        form.referralSource.value= refSourceID
	
	                   }
	       }
       }

       
       formProcessorSubmit(formName,'RMWebform','RMWebformthankyou','RMWebformerror','RMWebformexception');
       return false;
   }

}


function mask(str,textbox,loc,delim){
var locs = loc.split(',');

for (var i = 0; i <= locs.length; i++){
		for (var k = 0; k <= str.length; k++){
		 if (k == locs[i]){
		  if (str.substring(k, k+1) != delim){
			str = str.substring(0,k) + delim + str.substring(k,str.length)
		  }
		 }
		}
	}
	textbox.value = str
}

