// JavaScript Document
var reqSelect;var fund_str="";var sub_cnt=1;var err_state=false;var ph1=false; var ph2=false;
function Calc_Pension() {
	var theForm=el_get('pensions1');
	var err_state=false;var error_msg="";

reqSelect=el_val('Requirements');

if(reqSelect==""){
input_err('Requirements_err','Please select the type of advice you require');
//el_get('Requirements_lbl').style.background="#ff0000";
err_state=true;
}
if(reqSelect=="SetUp-Own"){

	if(el_val('empStatus')==""){
	input_err('empStatus_err','Please tell us your current employment status');err_state=true;
	}else{hide_input_err('empStatus_err');}
	if(el_val('monthlyCont')==""){
	input_err('monthlyCont_err','What contributions per month would you like to make');err_state=true;
	}else{hide_input_err('monthlyCont_err');}
	if(!radio_sel('lumpSum')){
	input_err('lumpSum_err','Please indicate your intentions regarding a lump sum');err_state=true;
	}else{hide_input_err('lumpSum_err');}
}

if(reqSelect=="Improve"){
	if(el_val('numFunds')==0){input_err('numFunds_err','Please indicate the number of pension funds you currently hold');err_state=true;}
	else{hide_input_err('numFunds_err');}

}

if(reqSelect=='SetUp-Company'){
	if(el_val('numEmployees')==""){
	input_err('numEmployees_err','Please tell us the number of employees at your company');err_state=true;
	}else{hide_input_err('numEmployees_err');}

	if(el_val('typeCompScheme')==""){
	input_err('typeCompScheme_err','Please tell us the the type of scheme you are interested in');err_state=true;
	}else{hide_input_err('typeCompScheme_err');}
	
	if(!radio_sel('hasCompScheme')){
	input_err('hasCompScheme_err','Please tell us if you have an existing scheme');err_state=true;
	}else{hide_input_err('hasCompScheme_err');}
}

if(reqSelect=='About to retire'){
	if(!radio_sel('buyAnnuity')){
	input_err('buyAnnuity_err','Please indicate your intentions regarding Annuities');err_state=true;
	}else{hide_input_err('buyAnnuity_err');}
	if(!radio_sel('drawDown')){
	input_err('drawDown_err','Please indicate your intentions regarding Draw Down');err_state=true;
	}else{hide_input_err('drawDown_err');}
}

if(reqSelect=='Other'){
	if(!chk_grp('generalAdvice','childPension','splitPension','otherOther')){input_err('otherDontKnowGroup_err','Please select at least one of the above');err_state=true;
	}else{hide_input_err('otherDontKnowGroup_err');}
	if(el_get('otherOther').checked && !el_val('otherDetail')){input_err('otherDontKnowGroup_err','Please tell us what kind of advice you are looking for');err_state=true;
	}
}

if(reqSelect!='SetUp-Company'){enable_control('DOBDay','DOBMonth','DOBYear');}else{disable_control('DOBDay','DOBMonth','DOBYear');hide_input_err('DOB_ErrorAdvice');}

if(err_state){
	show_all('Calc_Err');
	el_get('Calc_Err').innerHTML="Please correct the items indicated before continuing";
}else{
		hide_all('Calc_Err');
		el_get('Calc_Err').innerHTML="";
		show_step("Contact_form","pension_calc");
		el_get('Calc_Err').innerHTML='';	
		el_get('Calc_Err').style.display='none';
		if(reqSelect=='SetUp-Company'){el_get('First_Name_Label').innerHTML="Company Name:";el_get('Surname_Label').innerHTML="Contact Name:";el_get('Home_Phone_Label').innerHTML="Contact Phone number";}
		else{
			el_get('Home_Phone_Label').innerHTML="Home Phone number";
			el_get('First_Name_Label').innerHTML="First Name:";
			el_get('Surname_Label').innerHTML="Surname:";
			}
	}
}



function backto_step2(){
show_step("pension_calc","Contact_form");
}

function form_submit(){
	theForm=el_get('pension1');var err_con=false;
	var valid_Name=/^\D{2,25}$/;var valid_address=/^([a-zA-Z0-9 _-]+){2,25}$/;
	reqSelect=el_val('Requirements');
	ph1=false;ph2=false;
	if(vs_natemp>=matemp || el_val('seesid')>=matemp){el_get('Con_Err').innerHTML="<br>Too many invalid phone numbers submitted<br>We are sorry but we are unable to find you an advisor<br> at this time";show_all('Con_Err');
	return;
	}
	var firstname=trim_input('First_Name');
	if(!valid_Name.test(firstname)){
		if(reqSelect=='SetUp-Company'){e_m='Please enter your company name';}else{e_m='Please enter your Firstname';}
		input_err('First_Name_ErrorAdvice',e_m);err_con=true;}else{hide_input_err('First_Name_ErrorAdvice');}
	
	var surname=trim_input('Surname');
	if(!valid_Name.test(surname)){
		if(reqSelect=='SetUp-Company'){e_m='Please enter your contact name';}else{e_m='Please enter your Surname';}
		input_err('Surname_ErrorAdvice',e_m);err_con=true;}else{hide_input_err('Surname_ErrorAdvice');}

	var UkPhoneNumberErrorMessages = ["Please enter Telephone No.<br> without country code or +", "Telephone No. should be 10 or 11 digits", "Telephone No. should start with a zero", "06 / 070 Telephone Nos. not accepted", "Please enter Telephone Nos.","Telephone No. should<br> contain numbers only","Please enter at least 1 Alternative No."];
	errorcode=UkPhoneNumber(el_get('Home_Phone').value);
	if(errorcode!=-1){
		input_err('Home_Phone_ErrorAdvice',UkPhoneNumberErrorMessages[errorcode]);
		err_con=true;}else{hide_input_err('Home_Phone_ErrorAdvice');ph1=true;}
	errorcode=UkPhoneNumber(el_get('Mobile_Phone').value);
	if(errorcode!=-1){
		input_err('Mobile_Phone_ErrorAdvice',UkPhoneNumberErrorMessages[errorcode]);
		err_con=true;}else{hide_input_err('Mobile_Phone_ErrorAdvice');ph2=true;}	
	if(ph1 && ph2 && el_val('Home_Phone')!=el_val('Mobile_Phone')){input_err('Mobile_Phone_ErrorAdvice','Please check telephone numbers match');
		err_con=true;}
	if(last_no==el_val('Home_Phone') && !dupnum){input_err('Home_Phone_ErrorAdvice','Please try another phone number');
		err_con=true;}	

if(reqSelect!='SetUp-Company'){
	if(el_val('DOBDay')=="" || el_val('DOBMonth')=="" || el_val('DOBYear')==""){input_err('DOB_ErrorAdvice','Please select your Date of Birth');err_con=true;}else{hide_input_err('DOB_ErrorAdvice');}
}
	if(!el_get('Email').value || !isValidEmail(el_get('Email').value)){input_err('Email_ErrorAdvice','Please enter a valid email');err_con=true;}else{hide_input_err('Email_ErrorAdvice');}
	
	var address=trim_input('Add1');
	if(!valid_address.test(address)){input_err('Add1_ErrorAdvice','Please enter 1st line of your address');err_con=true;}else{hide_input_err('Add1_ErrorAdvice');}
	
	if(postcodeTest(el_val('Postcode'))!=0){el_get('Postcode').value=postcodeTest(el_val('Postcode'));
	hide_input_err('Postcode_ErrorAdvice');
	}else{input_err('Postcode_ErrorAdvice','Please enter a valid Postcode');err_con=true;}
	
	if(vs_natemp>=matemp || el_val('seesid')>=matemp){err_con=true;}
	
	if(err_con){
		show_all('Con_Err');
		if(vs_natemp>=matemp || el_val('seesid')>=matemp){el_get('Con_Err').innerHTML="<br>Too many invalid phone numbers submitted<br>We are sorry but we are unable to find you an advisor<br> at this time";}
		else{alert('Please correct the indicated items before continuing');el_get('Con_Err').innerHTML="<br>Please correct the items indicated before continuing";}
	}else{
		hide_all('Con_Err');
		el_get("splash1").style.display='block';
		//el_get("splash1").innerHTML='<img src="images/SpinningCircle.gif" alt="" /><b>Searching for advice based <br>on your location and phone number</b>';
		call_sent=false;
		//makeVCALLRequest(vs_mode);
		//theForm.submit();
		call_init();
	}
}



function RequirementsShow(){
reqSelect=el_val('Requirements');
if(reqSelect=='SetUp-Own'){show_step('mySetUpGroup','improveGroup','valFundsField','compSetUpGroup','retireSoonGroup','releaseCashGroup','otherDontKnowGroup');}
if(reqSelect=='Improve'){show_all('improveGroup','valFundsField');hide_all('mySetUpGroup','compSetUpGroup','retireSoonGroup','releaseCashGroup','otherDontKnowGroup');}
//valFundsField compSetUp buyAnnuity
if(reqSelect=='SetUp-Company'){show_step('compSetUpGroup','mySetUpGroup','valFundsField','improveGroup','retireSoonGroup','releaseCashGroup','otherDontKnowGroup');}
if(reqSelect=='buyAnnuity'){show_all('valFundsField');hide_all('compSetUpGroup','mySetUpGroup','improveGroup','releaseCashGroup','otherDontKnowGroup','retireSoonGroup');}
if(reqSelect=='About to retire'){show_step('retireSoonGroup','compSetUpGroup','mySetUpGroup','valFundsField','improveGroup','releaseCashGroup','otherDontKnowGroup');}
if(reqSelect=='ReleaseCash'){show_all('releaseCashGroup','valFundsField');hide_all('retireSoonGroup','compSetUpGroup','mySetUpGroup','improveGroup','otherDontKnowGroup');}
if(reqSelect=='Other'){show_step('otherDontKnowGroup','retireSoonGroup','compSetUpGroup','mySetUpGroup','valFundsField','improveGroup','releaseCashGroup');}
if(reqSelect==''){hide_all('retireSoonGroup','compSetUpGroup','mySetUpGroup','improveGroup','otherDontKnowGroup','releaseCashGroup','valFundsField');}
hide_all('Calc_Err','Requirements_err');
}
function FundTypeShow(){
//improveGroup
}

function currentPensionChange(){
if(el_get('currentPensionYes').checked){show_all('additionalContField');}
}

function showOtherDetail(){
if (el_get('otherOther').checked){show_all('otherDetailField');hide_all('otherDontKnowGroup_err','Calc_Err');}else{hide_all('otherDetailField');}
}


function showFunds(){
var num_funds=el_fi('numFunds');
if (num_funds==1){show_step('FundTypeField','multiFundTypeField');}
else if (num_funds>1){show_step('multiFundTypeField','FundTypeField');}
else{hide_all('multiFundTypeField','FundTypeField');}
}

function chkFunds(){
var num_funds=el_fi('numFunds');
if (num_funds==1){fund_str=el_val('FundType');}
else if (num_funds>1){fund_str=build_sepStringChk('-','fundType1','fundType2','fundType3','fundType4','fundType5');}
else{fund_str="";}
return fund_str;
}
function build_str(){

	var	postString ="";
	postString += 'lead_src=' + el_val('lead_src');
	postString += '&lead_tag=' + el_val('lead_tag');	
	postString += '&lead_sub_tag=' + el_val('lead_sub_tag');		
	postString += '&sub_ID=' + el_val('sub_ID');	
	postString += '&Requirements=' + el_val('Requirements');
	postString += '&currentPension=';
//	postString += isChecked('currentPension') ? 'Y' : 'N';	
	postString += '&additionalCont=';
//	postString += isChecked('additionalCont') ? 'Y' : 'N';	
	postString += '&empStatus=' + el_val('empStatus');
	postString += '&buyAnnuity=';
	postString += radio_val('buyAnnuity');	
	postString += '&transferPension=';
	//postString += isChecked('transferPension') ? 'Y' : 'N';	
	postString += '&monthlyCont=' + el_val('monthlyCont');
	postString += '&lumpSum=';
	postString += radio_val('lumpSum');
	postString += '&annIncome=' + el_fi('annIncome');
	postString += '&numFunds=' + el_val('numFunds');
	postString += '&FundType=' + chkFunds();
	postString += '&numEmployees=' + el_val('numEmployees');
	postString += '&typeCompScheme=' + el_val('typeCompScheme');
	postString += '&typeContribute=' + el_val('typeContribute');
	postString += '&hasCompScheme=';
	postString += radio_val('hasCompScheme');
	postString += '&drawDown=';
	postString += radio_val('drawDown');
	postString += '&whenRetire=' + el_val('whenRetire');
	postString += '&valFunds=' + el_fi('valFunds');
	postString += '&generalAdvice=';
	postString += isChecked('generalAdvice') ? 'Y' : 'N';	
	postString += '&childPension=';
	postString += isChecked('childPension') ? 'Y' : 'N';
	postString += '&splitPension=';
	postString += isChecked('splitPension') ? 'Y' : 'N';
	postString += '&otherDetail=' + el_val('otherDetail');
	//postString += '&vs_stat=' + vs_status + ":" + vs_comment;
	postString += '&vs_id=' + el_val('callid');
	//postString += '&vs_kp=' + key_str;	


/*
	postString += '&=' + el_val('');
*/
	postString += '&Title=';
	postString += '&First_Name=' + el_val('First_Name');
	postString += '&Surname=' + el_val('Surname');
	postString += '&Home_Phone=' + el_val('Home_Phone');
	postString += '&Mobile_Phone=' + el_val('Mobile_Phone');
	postString += '&Add1=' + el_val('Add1');	
	postString += '&Postcode=' + el_val('Postcode');
	postString += '&Email=' + el_val('Email');
	postString += '&DOBDay=' + el_val('DOBDay');
	postString += '&DOBMonth=' + el_val('DOBMonth');
	postString += '&DOBYear=' + el_val('DOBYear');
	if(el_get('search_id')){postString += '&search_id=' + el_val('search_id');}
	if(el_get('ad_group')){postString += '&ad_group=' + el_val('ad_group');}
/**/
return postString;
}  

function makePOSTRequest(g_cmd) {
	
		if(g_cmd=='submit'){
	  		url="Get_Pension.php";
			parameters=build_str();//alert(parameters);
			}
  http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) {
         	// set type accordingly to anticipated content type
            //http_request.overrideMimeType('text/xml');
            http_request.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
 
 
      if(g_cmd=='submit'){
	  	http_request.onreadystatechange = get_solution;
	  	http_request.open('POST', url, true);
      	http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      	http_request.setRequestHeader("Content-length", parameters.length);
      	http_request.setRequestHeader("Connection", "close");
      	http_request.send(parameters);
		}
   
}

function get_solution() {
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            
            result = http_request.responseText;
            //alert(result);
			Lead_sent(result);
         //IDis=document.getElementById('_ID').value;alert(IDis);
		 } else {
			//alert('There was a problem with the request.');
   			 //document.getElementById('tmessage').innerHTML=sub_cnt;
			 if(sub_cnt<3){sub_cnt++;makePOSTRequest('submit');}
			 else{
			 BrokerText="Please accept our apologies.<Br>Our Server has been temporarily unable to respond.";
			 BrokerText+="<br>Please re-submit your request";
			 el_get('Contact_Err').innerHTML=BrokerText;
	  			sub_cnt=1;}// document.getElementById('LB_Consent').style.visibility = 'visible';
			 
			 

		 }
      }
   }
function Lead_sent(myXML) {
//read_xml(myXML);
//alert(myXML);
	var ret_error=get_str_data(myXML,'<QERRORNUMBER>','</QERRORNUMBER>');
	var t_page=get_str_data(myXML,'<THANKURL>','</THANKURL>');
	//alert("Error: " + ret_error);alert(t_page);
	if(ret_error==0){
		theForm = document.pension1;
		action=t_page;
		theForm.action=action;
		theForm.submit();
	}else{
	 //$ret_err_message=get_str_data(myXML,'<QERRORMESSAGE>','</QERRORMESSAGE>');
	 el_get('Contact_Err').innerHTML="Please accept our apologies.<br>Your submission appears to contain errors.<br>Please check all your entries in the form <br>and re-send your enquiry for your full solution.<br>";
	}
} 
function call_ended(){
		theForm = document.pension1;
		action='pensions_t.php';
		theForm.action=action;
		//theForm.submit();
		hide_all('submit_line','splash1','Con_Err','Contact_form','pension_calc');
		show_all('call_finished');
}