//Product 10 : Retiresurance (IRDA Cap)
var elRPPProposerName = "ProposerName";
var elRPPInsuredName = "NameofthePersontobeInsured";
var elRPPInsuredDOB = "DateofBirthofthePersontobeInsured";
var elRPPAttainedageagelastbirthday = "Attainedageagelastbirthday";
var elRPPGender = "Gender";
var elRPPModeofPremiumPayment = "ModeofPremiumPayment";
var elRPPTerm = "Terminyears";
var elRPPPremPayTerm = "PremiumPaymentTerminyears";
var elRPPInstallmentPremium = "AmountofInstallmentpremiuminRs";
var elRPPAnnualPremium = "AnnualisedPremiuminRs";
var elRPPVestingage = "Vestingage";
var elRPPGuaranteedReturnFundPercentage = "GuaranteedReturnFundPercentage";
var elRPPDynamicGuaranteedFundPercentage = "DynamicGuaranteedFundPercentage";
var elRPPEquityOptimiserFundPensioninPercentage = "EquityGrowthfundPensioninPercentage";
var elRPPNiftyIndexfundPensioninPercentage = "NiftyIndexfundPensioninPercentage";
var elRPPIncomefundPensioninPercentage = "IncomefundPensioninPercentage";
var elRPPBondfundPensioninPercentage = "BondfundPensioninPercentage";
var elRPPLiquidfundPensioninPercentage = "LiquidfundPensioninPercentage";
var elRPPMidcapequity = "MidcapfundPercentage";

var elRppIRDAIsapplicantastaffmember="Isapplicantastaffmember";
var elRppIRDAPleaseentertheemployeecodenumber="Pleaseentertheemployeecodenumber";

function callRetiresuranceIRDAValidation(){

    var selectedName ="Retiresurance (IRDA Cap)";

	document.getElementById(elRPPAttainedageagelastbirthday).readOnly=true;
	document.getElementById(elRPPAnnualPremium).readOnly=true;
	document.getElementById(elRPPVestingage).readOnly=true;
	
	document.getElementById("validationWealthsurance").style.visiblity="hidden";
	document.getElementById("validationWealthsurance").style.display = "none";
	document.getElementById("validationHomesurance").style.visiblity="hidden";
	document.getElementById("validationHomesurance").style.display = "none";
	
	document.getElementById("validationHPP").style.visiblity="hidden";
	document.getElementById("validationHPP").style.display = "none";
	document.getElementById("validationTermsurance").style.visiblity="hidden"
	document.getElementById("validationTermsurance").style.display = "none";
	document.getElementById("validationIncomesurance").style.visiblity="hidden"
	document.getElementById("validationIncomesurance").style.display = "none";
	 document.getElementById(elRppIRDAIsapplicantastaffmember).value="No";

	if(document.getElementById(elRPPProposerName)!=null)
	{	    
		document.getElementById(elRPPProposerName).onblur = function()
		{
		  document.getElementById(elRPPProposerName).value = getStartsWithCaps(document.getElementById(elRPPProposerName).value);
		  
		};
	}

	if(document.getElementById(elRPPInsuredName)!=null)
	{	    
		document.getElementById(elRPPInsuredName).onblur = function()
		{
		  document.getElementById(elRPPInsuredName).value = getStartsWithCaps(document.getElementById(elRPPInsuredName).value);
		  
		};
	}

	if(document.getElementById(elRPPInsuredDOB)!=null){
		if(document.getElementById(elRPPInsuredDOB).value!=null || 
			document.getElementById(elRPPInsuredDOB).value!=""){
			   document.getElementById(elRPPInsuredDOB).onblur=function()
			   {
				  calculateAge(selectedName,elRPPInsuredDOB,elRPPAttainedageagelastbirthday)
				  //Validation
				  if(document.getElementById(elRPPAttainedageagelastbirthday).value!=""){
					  if(parseInt(document.getElementById(elRPPAttainedageagelastbirthday).value)>70){
						alert("Maximum Age at entry is 70 years");
						//document.getElementById(elRPPInsuredDOB).value ="";
						document.getElementById(elRPPAttainedageagelastbirthday).value="";
						document.getElementById(elRPPInsuredDOB).select();
						document.getElementById(elRPPInsuredDOB).focus();
					  }
					  else if(parseInt(document.getElementById(elRPPAttainedageagelastbirthday).value)<18){
						alert("Minimum Age at entry is 18 years");
						//document.getElementById(elRPPInsuredDOB).value ="";
						document.getElementById(elRPPAttainedageagelastbirthday).value="";
						document.getElementById(elRPPInsuredDOB).select();
						document.getElementById(elRPPInsuredDOB).focus();
					  }
					  else{
						 checkRPPIRDATerm();
					  }
				  }
				  
				  //Validation
			   };
		}
	}


	if(document.getElementById(elRPPModeofPremiumPayment)!=null)
	{
		if(document.getElementById("paymentFrequencyValidate").value!=""){
			document.getElementById(elRPPModeofPremiumPayment).value=document.getElementById("paymentFrequencyValidate").value;
		}
		else{
    		document.getElementById(elRPPModeofPremiumPayment).selectedIndex = 0;
		}
     
	}	

			if(document.getElementById(elRPPDynamicGuaranteedFundPercentage)!=null){
				checkRetireCapCautiousFund();
			}
			
			if(document.getElementById(elRPPTerm)!=null){
				document.getElementById(elRPPTerm).onblur=function(){checkRPPIRDATerm()};
			}
			

			if(document.getElementById(elRPPPremPayTerm)!=null){
				document.getElementById(elRPPPremPayTerm).onblur=function(){checkRPPIRDAPremPayTerm();checkRetireCapCautiousFund();};
			}
			
			if(document.getElementById(elRPPModeofPremiumPayment)!=null){
				document.getElementById(elRPPModeofPremiumPayment).onchange=function(){checkRPPIRDAInstallmentPremium();checkRetireCapCautiousFund();checkRPPIRDATerm();};
			}

			if(document.getElementById(elRPPInstallmentPremium)!=null){
				document.getElementById(elRPPInstallmentPremium).onchange=function(){checkRPPIRDAInstallmentPremium();};
			}
			
			if(document.getElementById(elRPPGuaranteedReturnFundPercentage)!=null){
				document.getElementById(elRPPGuaranteedReturnFundPercentage).onblur=function(){checkRPPIRDAFundValue(this);};
			}

			if(document.getElementById(elRPPDynamicGuaranteedFundPercentage)!=null){
				document.getElementById(elRPPDynamicGuaranteedFundPercentage).onblur=function(){checkRPPIRDAFundValue(this);};
			}


			if(document.getElementById(elRPPEquityOptimiserFundPensioninPercentage)!=null){
				document.getElementById(elRPPEquityOptimiserFundPensioninPercentage).onblur=function(){checkRPPIRDAFundValue(this);};
			}

			if(document.getElementById(elRPPNiftyIndexfundPensioninPercentage)!=null){
				document.getElementById(elRPPNiftyIndexfundPensioninPercentage).onblur=function(){checkRPPIRDAFundValue(this);};
			}

			if(document.getElementById(elRPPIncomefundPensioninPercentage)!=null){
				document.getElementById(elRPPIncomefundPensioninPercentage).onblur=function(){checkRPPIRDAFundValue(this);};
			}

			if(document.getElementById(elRPPBondfundPensioninPercentage)!=null){
				document.getElementById(elRPPBondfundPensioninPercentage).onblur=function(){checkRPPIRDAFundValue(this);};
			}

			if(document.getElementById(elRPPLiquidfundPensioninPercentage)!=null){
				document.getElementById(elRPPLiquidfundPensioninPercentage).onblur=function(){checkRPPIRDAFundValue(this);};
			}
			
			if(document.getElementById(elRPPMidcapequity)!=null){
				document.getElementById(elRPPMidcapequity).onblur=function(){checkRPPIRDAFundValue(this);};
			}
			
			if(document.getElementById(elRppIRDAIsapplicantastaffmember) != null ) {
			    document.getElementById(elRppIRDAIsapplicantastaffmember).onchange = function(){
			    	checkIsStaff(elRppIRDAIsapplicantastaffmember,elRppIRDAPleaseentertheemployeecodenumber);
			    }
		    }
			if(document.getElementById(elRppIRDAIsapplicantastaffmember).value!="" && document.getElementById(elRppIRDAPleaseentertheemployeecodenumber).value==""){
				 document.getElementById(elRppIRDAIsapplicantastaffmember).value="No";
			}	
				checkIsStaff(elRppIRDAIsapplicantastaffmember,elRppIRDAPleaseentertheemployeecodenumber);

	////////////Retiresurance Pension Plan ends///////////




}

function checkRetireCapCautiousFund(){
	if(document.getElementById(elRPPModeofPremiumPayment)!=null){
		if(document.getElementById(elRPPModeofPremiumPayment).value=="Single"){
			document.getElementById(elRPPDynamicGuaranteedFundPercentage).readOnly=false;
		}
		else{
			if(document.getElementById(elRPPPremPayTerm).value!=""){
				if(parseInt(document.getElementById(elRPPPremPayTerm).value)<=5){
					document.getElementById(elRPPDynamicGuaranteedFundPercentage).readOnly=false;
				}
				else{
					document.getElementById(elRPPDynamicGuaranteedFundPercentage).readOnly=true;
				}
			}
			else{
					document.getElementById(elRPPDynamicGuaranteedFundPercentage).readOnly=true;
			}
		}
	}
}


function checkRPPIRDATerm(){
	if(document.getElementById("valueRPPTracker").value!=""){
		callRetireRemove(document.getElementById("valueRPPTracker").value);
	}

			if(document.getElementById(elRPPTerm).value!=""){
					var vestingAge;
					var validTerm = true;
					var tmpelRPPTerm;
					var policyInvalid=false;
					var modeOfPremiumPayment = document.getElementById(elRPPModeofPremiumPayment).value;
					if(document.getElementById(elRPPAttainedageagelastbirthday).value!=""){
						vestingAge=parseInt(document.getElementById(elRPPTerm).value)
							+ parseInt(document.getElementById(elRPPAttainedageagelastbirthday).value);
						document.getElementById(elRPPVestingage).value = vestingAge;
					}

					
						var minimumTerm=0;
						var maximumTerm =0;
						var reminderValue=0;
						
						var calcMinimum=40-parseInt(document.getElementById(elRPPAttainedageagelastbirthday).value);

						var  calcMaximum = 75-parseInt(document.getElementById(elRPPAttainedageagelastbirthday).value);

						if(calcMaximum%5==0){
							maximumTerm = calcMaximum;
						}else{
						    reminderValue=calcMaximum%5;
							maximumTerm = calcMaximum - reminderValue;
						}
						
						if(modeOfPremiumPayment=="Single"){
							if(maximumTerm<5){
								policyInvalid=true;
							}
						}else{
							if(maximumTerm<10){
								policyInvalid=true;
							}
						}

						if(parseInt(calcMinimum)>5){
							minimumTerm=parseInt(calcMinimum);
							reminderTerm=minimumTerm%5;
							if(reminderTerm!=0){
								minimumTerm = minimumTerm - reminderTerm + 5;
							}
						}else{
							if(modeOfPremiumPayment=="Single"){
								minimumTerm=5;
							}else{
								minimumTerm=10;
							}	
						}
						
						
						if(document.getElementById(elRPPTerm).value<parseInt(minimumTerm)){
							alert("Minimum Term allowed is "+minimumTerm);
							document.getElementById(elRPPTerm).focus();
							document.getElementById(elRPPTerm).value="";
							document.getElementById(elRPPPremPayTerm).value = "";
							document.getElementById(elRPPVestingage).value = "";
							validTerm = false; 
						}
						else if(document.getElementById(elRPPTerm).value>maximumTerm){
							alert("Maximum Term allowed is "+maximumTerm+" (as the maximum vesting age is 75 years)");
							document.getElementById(elRPPTerm).focus();
							document.getElementById(elRPPTerm).value="";
							document.getElementById(elRPPPremPayTerm).value = "";
							document.getElementById(elRPPVestingage).value = "";
							validTerm = false; 
						}else if(policyInvalid){
						   if(modeOfPremiumPayment=="Single"){
								alert("Not able to buy policy as minimum term for single premium is 5");
						   }else{
						   		alert("Not able to buy policy as minimum term for regular premium is 10");
						   }
							document.getElementById(elRPPTerm).value="";
							document.getElementById(elRPPPremPayTerm).value = "";
							document.getElementById(elRPPVestingage).value = "";
							document.getElementById(elRPPTerm).focus();
							validTerm = false; 
						   		
						}else if(document.getElementById(elRPPTerm).value>10){
								tmpelRPPTerm = 	document.getElementById(elRPPTerm).value;
								if(tmpelRPPTerm%5!=0){
									alert("Plan Term should be Multiples of 5");
									document.getElementById(elRPPTerm).focus();
									validTerm = false; 
								}else{
									validTerm = true;
								}	 

						 }
						 
						 if(validTerm){
							document.getElementById("valueRPPTracker").value=document.getElementById(elRPPTerm).value;
							generateRetireTopSection(document.getElementById(elRPPTerm).value);

							checkRetireIRDATopUpLoop(document.getElementById(elRPPTerm).value);
							checkRetireIRDAWithdrawalLoop(document.getElementById(elRPPTerm).value);
							checkRetireIRDAWithdrawal10Loop(document.getElementById(elRPPTerm).value);
							checkRetireIRDAPremiumReduction(document.getElementById(elRPPTerm).value);
						 }
					
	
			}
			else{
				document.getElementById("headerExpandingBoxTopupDetails").style.visibility="hidden";
				document.getElementById("divExpandingBoxTopupDetails").style.visibility="hidden";
				document.getElementById("headerExpandingBoxWithdrawalDetails").style.visibility="hidden";
				document.getElementById("divExpandingBoxWithdrawalDetails").style.visibility="hidden";
				

				validTerm = false; 
			}
			
}

function checkRPPIRDAPremPayTerm(){
	if(document.getElementById(elRPPPremPayTerm).value != ""){
	      if(document.getElementById(elRPPModeofPremiumPayment).value=="Single"){
			 document.getElementById(elRPPPremPayTerm).value =1;
		  }else{ 	 
				if(parseInt(document.getElementById(elRPPPremPayTerm).value)<3){ 
					alert("Minimum Premium Payment Term is 3 ");
					document.getElementById(elRPPPremPayTerm).focus();
					document.getElementById(elRPPPremPayTerm).value = "";
					
				}
				else if(parseInt(document.getElementById(elRPPPremPayTerm).value)>parseInt(document.getElementById(elRPPTerm).value)){
					alert("Maximum Premium Payment Term should not exceed Plan Term ");
					document.getElementById(elRPPPremPayTerm).focus();
					document.getElementById(elRPPPremPayTerm).value = "";
				}
		 }		
	}
}


function checkRPPIRDAInstallmentPremium(){

	if(document.getElementById(elRPPInstallmentPremium).value!=null&&document.getElementById(elRPPInstallmentPremium).value!=""){
		if(document.getElementById(elRPPModeofPremiumPayment).value=="Single"){
			if(parseInt(document.getElementById(elRPPInstallmentPremium).value)>=20000){	
				  document.getElementById(elRPPAnnualPremium).value=parseInt(document.getElementById(elRPPInstallmentPremium).value);

				if(document.getElementById(elRPPPremPayTerm).value==""||document.getElementById(elRPPPremPayTerm).value>1){
					document.getElementById(elRPPPremPayTerm).value=1;
				}
				 
				 
			}
			else{
				alert("Installment Premium for Mode of Payment Single should be greater than or equal to 20000");
				document.getElementById(elRPPAnnualPremium).value = "";
				document.getElementById(elRPPInstallmentPremium).select();
				document.getElementById(elRPPInstallmentPremium).focus();
			}
		}
		else if(document.getElementById(elRPPModeofPremiumPayment).value=="Monthly"){
		

			if(parseInt(document.getElementById(elRPPInstallmentPremium).value)>=2000){	
			
			  	document.getElementById(elRPPAnnualPremium).value=parseInt(document.getElementById(elRPPInstallmentPremium).value)*12;
			}
			else{
				alert("Installment Premium for Mode of Payment Monthly should be greater than or equal to 2000");
				document.getElementById(elRPPAnnualPremium).value = "";
				document.getElementById(elRPPInstallmentPremium).select();
				document.getElementById(elRPPInstallmentPremium).focus();
			}
				
				
			
		}
		else if(document.getElementById(elRPPModeofPremiumPayment).value=="Quarterly"){
			if(parseInt(document.getElementById(elRPPInstallmentPremium).value)>=5000){	
				document.getElementById(elRPPAnnualPremium).value=parseInt(document.getElementById(elRPPInstallmentPremium).value)*4;

				
			}
			else{
				alert("Installment Premium for Mode of Payment Quarterly should be greater than or equal to 5000");
				document.getElementById(elRPPAnnualPremium).value = "";
				document.getElementById(elRPPInstallmentPremium).select();
				document.getElementById(elRPPInstallmentPremium).focus();
			}

			
				
		}
		else if(document.getElementById(elRPPModeofPremiumPayment).value=="Halfyearly"){
			if(parseInt(document.getElementById(elRPPInstallmentPremium).value)>=10000){		
				document.getElementById(elRPPAnnualPremium).value=parseInt(document.getElementById(elRPPInstallmentPremium).value)*2;
	
			}
			else{
				alert("Installment Premium for Mode of Payment Halfyearly should be greater than or equal to 10000");
				document.getElementById(elRPPAnnualPremium).value = "";
				document.getElementById(elRPPInstallmentPremium).select();
				document.getElementById(elRPPInstallmentPremium).focus();
			}

			
				
		}
		else if(document.getElementById(elRPPModeofPremiumPayment).value=="Annual"){
		
			if(parseInt(document.getElementById(elRPPInstallmentPremium).value)>=20000){				  				
				document.getElementById(elRPPAnnualPremium).value=parseInt(document.getElementById(elRPPInstallmentPremium).value);
			}
			else{
				alert("Installment Premium for Mode of Payment Annual should be greater than or equal to 20000");
				document.getElementById(elRPPAnnualPremium).value = "";
				document.getElementById(elRPPInstallmentPremium).select();
				document.getElementById(elRPPInstallmentPremium).focus();
				
			}
	
		}
			
	}
}


function checkRPPIRDAFundValue( fieldId )
{
    if( fieldId.value.length == 0 || fieldId.value == " " )
    {
      return;
    }

	//Added by shameer
	fieldId.value=Math.round(fieldId.value);
    
    if( fieldId.value > 100 )
    {	
       alert("Investment % in any fund should not exceed 100%");       
       fieldId.focus();
       return;
    }
    
    if( fieldId.value < 15 )
    {
       alert("Investment % in any fund should not be Lesser than 15%");       
       fieldId.focus();
       return;      
    }
   
    var fundTotal = getRPPIRDASumOfFundOptions();
        
    if( fundTotal > 100 )
    {
       var x = (fundTotal-fieldId.value) - 100;
       if( x < 0 )
       x = -x;
       
       alert("Total investment % should not exceed 100, Remaining fund can be allocated is " + x +
		   "\n Please arrange the funds accordingly");
       fieldId.value = "";
       fieldId.focus();
       return;
    }
}


function getRPPIRDASumOfFundOptions()
{
    var sum = 
    giveInt(document.getElementById(elRPPGuaranteedReturnFundPercentage).value) +
    giveInt(document.getElementById(elRPPDynamicGuaranteedFundPercentage).value) +
    giveInt(document.getElementById(elRPPEquityOptimiserFundPensioninPercentage).value) +
    giveInt(document.getElementById(elRPPNiftyIndexfundPensioninPercentage).value) +
    giveInt(document.getElementById(elRPPIncomefundPensioninPercentage).value) +
    giveInt(document.getElementById(elRPPBondfundPensioninPercentage).value) +
    giveInt(document.getElementById(elRPPLiquidfundPensioninPercentage).value) +
    giveInt(document.getElementById(elRPPMidcapequity).value) ;

    return sum;
}

function retireIRDAatleastOneRPPFundOptionDetailGiven()
{
   var given = false;

   if ( trim(document.getElementById(elRPPGuaranteedReturnFundPercentage).value)>0 )
      given = true;
   if ( trim(document.getElementById(elRPPDynamicGuaranteedFundPercentage).value)>0 )
      given = true;
   if ( trim(document.getElementById(elRPPEquityOptimiserFundPensioninPercentage).value)>0 )
      given = true;
   if ( trim(document.getElementById(elRPPNiftyIndexfundPensioninPercentage).value)>0 )
      given = true;
   if ( trim(document.getElementById(elRPPIncomefundPensioninPercentage).value)>0 )
      given = true;
   if ( trim(document.getElementById(elRPPBondfundPensioninPercentage).value)>0 )
      given = true;
   if ( trim(document.getElementById(elRPPLiquidfundPensioninPercentage).value)>0 )
      given = true;
   if ( trim(document.getElementById(elRPPMidcapequity).value)>0 )
      given = true;
       
   return given;
}

function checkRetireIRDATopUpLoop(totalTerm){
	for(var topLoop=1;topLoop<=totalTerm;topLoop++){
			if(eval("document.getElementById('TopupAmountTerm"+topLoop+"')")!=null){
				
				var topValue=eval("document.getElementById('TopupAmountTerm"+topLoop+"')").value;
				
				eval("document.getElementById('TopupAmountTerm"+topLoop+"')").title = topLoop;
				eval("document.getElementById('TopupAmountTerm"+topLoop+"')").onblur=function(){checkRetireTopUpValue(this)};
				
			}
	}
}

function checkRetireIRDAWithdrawalLoop(totalTerm){
	for(var wTopLoop=4;wTopLoop<=totalTerm;wTopLoop++){
			if(eval("document.getElementById('Withdrawal6Term"+wTopLoop+"')")!=null){
				
				eval("document.getElementById('Withdrawal6Term"+wTopLoop+"')").title = wTopLoop;
				eval("document.getElementById('Withdrawal6Term"+wTopLoop+"')").onblur=function(){checkRetireIRDAWithdrawalValue(this,6)};
				
			}
	}
}

function checkRetireIRDAWithdrawal10Loop(totalTerm){
	for(var wTopLoop=4;wTopLoop<=totalTerm;wTopLoop++){
			if(eval("document.getElementById('Withdrawal10Term"+wTopLoop+"')")!=null){
				
				eval("document.getElementById('Withdrawal10Term"+wTopLoop+"')").title = wTopLoop;
				eval("document.getElementById('Withdrawal10Term"+wTopLoop+"')").onblur=function(){checkRetireIRDAWithdrawalValue(this,10)};
				
			}
	}
}

function checkRetireIRDAPremiumReduction(totalTerm){
	for(var premLoop=2;premLoop<=totalTerm;premLoop++){
			if(eval("document.getElementById('PremiumReductionOption"+premLoop+"')")!=null){
				
				var topValue=eval("document.getElementById('PremiumReductionOption"+premLoop+"')").value;
				
				eval("document.getElementById('PremiumReductionOption"+premLoop+"')").title = premLoop;
				eval("document.getElementById('PremiumReductionOption"+premLoop+"')").onblur=function(){checkRetireIRDAPremReductionValue(this)};
				
			}
	}
}

function setRetireIRDATopupWithdrawal(){
	if(document.getElementById("innerIRDARetireTopUpText").value.length > 0){
		document.getElementById('divExpandingBoxTopupDetails').style.visibility = 'visible';
		document.getElementById('headerExpandingBoxTopupDetails').style.visibility = 'visible';
		
		document.getElementById('divExpandingBoxTopupDetails').innerHTML = document.getElementById("innerIRDARetireTopUpText").value;

		checkRetireIRDATopUpLoop(document.getElementById(elRPPTerm).value);
						
	}

	if(document.getElementById("innerIRDARetireWithdrawalText").value.length > 0){

		document.getElementById('divExpandingBoxWithdrawalDetails').style.visibility = 'visible';
		document.getElementById('headerExpandingBoxWithdrawalDetails').style.visibility = 'visible';
		
		document.getElementById('divExpandingBoxWithdrawalDetails').innerHTML = document.getElementById("innerIRDARetireWithdrawalText").value;

		checkRetireIRDAWithdrawalLoop(document.getElementById(elRPPTerm).value);
		checkRetireIRDAWithdrawal10Loop(document.getElementById(elRPPTerm).value);
	}

	if(document.getElementById("innerRetirePremiumReductionText").value.length > 0){

		document.getElementById('divExpandingBoxPremiumReductionOption').style.visibility = 'visible';
		document.getElementById('headerExpandingBoxPremiumReductionOption').style.visibility = 'visible';
		
		document.getElementById('divExpandingBoxPremiumReductionOption').innerHTML = document.getElementById("innerRetirePremiumReductionText").value;

		
		checkRetireIRDAPremiumReduction(document.getElementById(elRPPTerm).value);
	}
}


function checkRetireIRDAWithdrawalValue(currObj,percent){
	
	var percentage = percent;
	withdrawalValue=currObj.value;
	curValue=currObj.title;
	planValue=parseInt(document.getElementById(elRPPTerm).value)
	if(withdrawalValue!=""){
 		if(curValue<=planValue){	
			var currentAge=document.getElementById(elRPPAttainedageagelastbirthday).value;
			var ageToCheck=parseInt(currentAge)+parseInt(curValue);

	if(parseInt(ageToCheck)<=18){
		
		alert("Withdrawal not applicable for the age below 18");
		
		currObj.focus();
	}
	else{
	if(parseInt(withdrawalValue)>=10000){

		var request;
	    var modeval;
		var url;
		var responseString;

		var lifeInsuredDOB=document.getElementById(elRPPInsuredDOB).value;
		var lifedob =  getDateObject(lifeInsuredDOB,"-");	
		
		var age=document.getElementById(elRPPAttainedageagelastbirthday).value;
		var gender=document.getElementById(elRPPGender).value;
		var planTerm=parseInt(curValue);
		var isStaffMember=document.getElementById(elRppIRDAIsapplicantastaffmember).value;
		var employeeCode=document.getElementById(elRppIRDAPleaseentertheemployeecodenumber).value;

		var installmentPremium=document.getElementById(elRPPInstallmentPremium).value;
		var premiumPaymentFrequency=document.getElementById(elRPPModeofPremiumPayment).value;
		var premiumPaymentTerm=document.getElementById(elRPPPremPayTerm).value;
		var annualPremium=document.getElementById(elRPPAnnualPremium).value;

		var vestingAge=document.getElementById(elRPPVestingage).value;
		
		var guaranteedReturnFundPercentage=document.getElementById(elRPPGuaranteedReturnFundPercentage).value;
		var dynamicGuaranteedFundPercentage=document.getElementById(elRPPDynamicGuaranteedFundPercentage).value;
		var equityOptimiserFundPercentage=document.getElementById(elRPPEquityOptimiserFundPensioninPercentage).value;
		var niftyIndexFundPercentage=document.getElementById(elRPPNiftyIndexfundPensioninPercentage).value;
		var bondfundPercentage=document.getElementById(elRPPBondfundPensioninPercentage).value;
		var incomeFundPercentage=document.getElementById(elRPPIncomefundPensioninPercentage).value;
		var liquidFundPercentage=document.getElementById(elRPPLiquidfundPensioninPercentage).value;
		var midCapFundPercentage=document.getElementById(elRPPMidcapequity).value;		

		var topUpToCheck="";
		for(i=1;i<=planValue;i++){
			topAmountTerm=document.getElementById('TopupAmountTerm'+i).value;
			topUpToCheck=topUpToCheck+"&topA"+i+"="+topAmountTerm;
			
		}

		var withdrawalToCheck6="";
		var withdrawalToCheck10="";
		for(i=4;i<=planValue;i++){
			withdrawalAmount6Term=document.getElementById('Withdrawal6Term'+i).value;
			withdrawalToCheck6=withdrawalToCheck6+"&wd6A"+i+"="+withdrawalAmount6Term;
			withdrawalAmount10Term=document.getElementById('Withdrawal10Term'+i).value;
			withdrawalToCheck10=withdrawalToCheck10+"&wd10A"+i+"="+withdrawalAmount10Term;
		}

		var premiumOptionCheck="";
		for(i=2;i<=planValue;i++){
			premiumOptionTerm=document.getElementById('PremiumReductionOption'+i).value;
			premiumOptionCheck=premiumOptionCheck+"&pro"+i+"="+premiumOptionTerm;
			
		}
		
		var totalTopUp=0;
		for(j=(curValue-1);j>=(curValue-2);j--){
				var valToCheck=eval("document.getElementById('TopupAmountTerm"+j+"')").value;
				var valToPass=0;
				if(valToCheck!="")
					valToPass=valToCheck;
				totalTopUp=parseInt(totalTopUp)+parseInt(valToPass);
		}
		
		url="validateRetireIRDA.do?mode=retireCapWithdrawalCheck&age="+age+
			"&ldob="+lifedob+
			"&sex="+gender+
			"&isStaffMember="+isStaffMember+
			"&employeeCode="+employeeCode+
			"&term="+planTerm+
			"&aip="+installmentPremium+
			"&mopp="+premiumPaymentFrequency+
			"&ap="+annualPremium+
			"&ppt="+premiumPaymentTerm+
			"&va="+vestingAge+
			"&grfp="+guaranteedReturnFundPercentage+
			"&cgfp="+dynamicGuaranteedFundPercentage+
			"&nifp="+niftyIndexFundPercentage+
			"&bfp="+bondfundPercentage+
			"&ifp="+incomeFundPercentage+
			"&lfp="+liquidFundPercentage+
			"&eofp="+equityOptimiserFundPercentage+
			"&mcf="+midCapFundPercentage+
			"&watv="+withdrawalValue+
			"&percent="+percentage+
			"&lttv="+totalTopUp+topUpToCheck+withdrawalToCheck6+withdrawalToCheck10+premiumOptionCheck;


		if(window.XMLHttpRequest)
	  		request=new XMLHttpRequest();
	  	else if(window.ActiveXObject)
	  		request=new ActiveXObject("Microsoft.XMLHTTP");
	
		if(request){
	  	 	request.onreadystatechange=function(){
			if (request.readyState == 4) { // Complete

			  if (request.status == 200) { // OK response
					responseString = request.responseText;
					if(responseString.length>12){
						alert(responseString);
						currObj.value="";
						currObj.focus();
						
					}
			  }
			}
			}
			request.open("POST",url,true);
			request.setRequestHeader("content-type","application/x-www-form-urlencoded");
			request.send(null); 
		}



		
	}
	else{
		 alert("Minimum withdrawal amount is 10000");
		 currObj.value="";
		 currObj.focus();
	}
	}
}
 else{
	 alert("Withdrawal is not applicable for term "+currentValue);
	 currObj.value="";
	 currObj.focus();
 }
	
}
}

/* This method has been moved into productValidation.js
function getDateObject(dateString,dateSeperator)
{
	var values = dateString.split(dateSeperator);
	//alert("values::::::::::::::::::::::::::::"+values);
	//var date = new Date();
	var date="";
	values[1] = values[1] ;
	//date.setFullYear( values[2], values[1], values[0] );
	//alert("date::::::::::::::::::::::::::::"+date);
	date=values[0]+"/"+values[1]+"/"+values[2];
	return date;
}
*/

function checkRetireIRDAPremReductionValue(currentObj){
	var annPremium=0;

	premiumReductionValue=currentObj.value;
	currentValue=currentObj.title;
	planValue=parseInt(document.getElementById(elRPPPremPayTerm).value);
	var premiumValue = parseInt(document.getElementById(elRPPAnnualPremium).value)

	var minValue = 0.00;

	if(currentValue<=3){
		minValue = Math.round(premiumValue*0.75);
	}
	else{
		minValue = 20000;
	}

	var maxValue = premiumValue-1;



if(premiumReductionValue!=""){
   if(currentValue<=planValue){
		if(parseInt(premiumReductionValue)<parseInt(minValue)){ 
			alert("Minimum Premium Reduction Option for term "+currentValue+" is "+minValue);
			currentObj.value = "";
			currentObj.select();
		}

		if(parseInt(premiumReductionValue)>parseInt(maxValue)){
			alert("Maximum Premium Reduction Option for term "+currentValue+" is "+maxValue);
			currentObj.value = "";
			currentObj.select();
		}
		
	 }
	 else{
		 alert("Premium Reduction is not applicable for term "+currentValue);
		 currentObj.value="";
		 currentObj.select();
	 }
	}
}

