//Product 11 : Termsurance Grameen Bachat Yojana
var elTermsurancegbyPlanOption="TermsurancePlanOption";
var elTermsurancegbyinsuredname="NameofInsuredPerson";
var elTermsurancegbyinsuredDOB="DateofBirthofthePersontobeInsured";
var elTermsurancegbyinsuredAge="AgeofthePersontobeInsuredinyrs";
var elTermsurancegbyinsuredGender="GenderofthePersontobeInsured";

var elTermsurancegbypolicyTerminyrs="TermsurancePolicyTerminyrs";
var elTermsurancegbypremiumpaymentmode="TermsurancePremiumPaymentMode";
var elTermsurancegbypremiumPaymentTerm="TermsurancePremiumPaymentTerminyrs";
var elTermsurancegbysumInsured="SumInsuredinRs";
var elTermsurancePremiumType="TermsurancePremiumType";
var elTermsurancegbyinstalmentPremium="InstalmentPremiuminRs";
var elTermsurancegbyserviceTax="ServiceTaxandEducationCessinRs";
var elTermsurancegbyBenefitOption="BenefitOption";
var elTermsurancegbyPremiumTotal="TotalInstallmentPremiuminRs"
var elTermEMR="EMR";
var elTermPerMile="PerMile"
	
	
function callTermsuranceGareemBachatValidation()
{
	var selectedName =	"Termsurance Grameen Bachat Yojana";
	if(document.getElementById(elTermsurancegbyinsuredAge)!=null){
		document.getElementById(elTermsurancegbyinsuredAge).readOnly=true;
		
	}
	if(document.getElementById(elTermsurancegbyinstalmentPremium)!=null){
		document.getElementById(elTermsurancegbyinstalmentPremium).readOnly=true;
		
	}
	if(document.getElementById(elTermsurancegbyserviceTax)!=null){
		document.getElementById(elTermsurancegbyserviceTax).readOnly=true;
		
	}
	if(document.getElementById(elTermsurancegbyPremiumTotal)!=null){
		document.getElementById(elTermsurancegbyPremiumTotal).readOnly=true;
		
	}
	if(document.getElementById(elTermsurancegbyinsuredname)!=null){	    
		document.getElementById(elTermsurancegbyinsuredname).onblur = function(){
		  document.getElementById(elTermsurancegbyinsuredname).value = getStartsWithCaps(document.getElementById(elTermsurancegbyinsuredname).value);
		};
	}
	if(document.getElementById(elTermEMR) != null ) {
	    document.getElementById(elTermEMR).onchange = function(){
	       ajaxTermGBYInstalmentPremium();
	    }
    }
	if(document.getElementById(elTermPerMile) != null ) {
		document.getElementById(elTermPerMile).onchange=function(){
			 ajaxTermGBYInstalmentPremium();
		}
	} 
	if(document.getElementById(elTermsurancegbyPlanOption) != null ) {
	    document.getElementById(elTermsurancegbyPlanOption).onchange = function(){
	       ajaxTermGBYInstalmentPremium();
	    }
    }
    if(document.getElementById(elTermsurancegbyBenefitOption) != null ) {
	    document.getElementById(elTermsurancegbyBenefitOption).onchange = function(){
	       ajaxTermGBYInstalmentPremium();
	    }
    }
    if(document.getElementById(elTermsurancegbyinsuredGender) != null ) {
	    document.getElementById(elTermsurancegbyinsuredGender).onchange = function(){
	    	ajaxTermGBYInstalmentPremium();
	    }
    }

       document.getElementById(elTermsurancegbypolicyTerminyrs).onblur=function(){
	    var calAge = parseInt(document.getElementById(elTermsurancegbyinsuredAge).value) + parseInt(document.getElementById(elTermsurancegbypolicyTerminyrs).value) ;
			 if(calAge > 60){
				alert(" Maximum age at maturity is 60 ");
				document.getElementById(elTermsurancegbypolicyTerminyrs).focus();
			 }
			 
			 termsuranceGBYCheckPremiumPaymentTerm(elTermsurancePremiumType,elTermsurancegbypremiumPaymentTerm,elTermsurancegbypolicyTerminyrs);
			 ajaxTermGBYInstalmentPremium();
		}
	if(document.getElementById(elTermsurancegbyinsuredDOB)!=null){
		if(document.getElementById(elTermsurancegbyinsuredDOB).value !=null || document.getElementById(elTermsurancegbyinsuredDOB).value !="")
		{
			document.getElementById(elTermsurancegbyinsuredDOB).onblur=function(){
				 calculateAge(selectedName,elTermsurancegbyinsuredDOB,elTermsurancegbyinsuredAge)
				 
				 if(document.getElementById(elTermsurancegbyinsuredAge)!="")
				 {
					 var annuityage=document.getElementById(elTermsurancegbyinsuredAge).value;
					 calcAge = parseInt(document.getElementById(elTermsurancegbyinsuredAge).value) + 
				        parseInt(document.getElementById(elTermsurancegbypolicyTerminyrs).value) ;
					 if(parseInt(document.getElementById(elTermsurancegbyinsuredAge).value)<18)
					 {
						 alert("Minimum Age of Entry is 18");
						 document.getElementById(elTermsurancegbyinsuredDOB).select();
						 document.getElementById(elTermsurancegbyinsuredAge).value="";
						 document.getElementById(elTermsurancegbyinsuredDOB).focus();
					 }
					 else if(parseInt(document.getElementById(elTermsurancegbyinsuredAge).value)>50)
					 {
						 alert("Maximum Age of Entry is 50");
						 document.getElementById(elTermsurancegbyinsuredDOB).select();
						 document.getElementById(elTermsurancegbyinsuredAge).value="";
						 document.getElementById(elTermsurancegbyinsuredDOB).focus();
					 }
					 if(parseInt(calcAge)>60)
					 {
						 alert("Maximum Age of maturity is 60");
						 document.getElementById(elTermsurancegbyinsuredDOB).select();
						 document.getElementById(elTermsurancegbyinsuredAge).value="";
						 document.getElementById(elTermsurancegbyinsuredDOB).focus();
					 }
				 }
			}
		}
}
	if(document.getElementById(elTermsurancegbysumInsured)!=null && document.getElementById(elTermsurancegbysumInsured)!="")
	{
		document.getElementById(elTermsurancegbysumInsured).onblur = function()
		{
			if(parseInt(document.getElementById(elTermsurancegbysumInsured).value)!=null && parseInt(document.getElementById(elTermsurancegbysumInsured).value)!="")
			{
				if(parseInt(document.getElementById(elTermsurancegbysumInsured).value)<5000)
				{
					alert("Minimum SumInsured is 5000");
					document.getElementById(elTermsurancegbysumInsured).select();
					document.getElementById(elTermsurancegbysumInsured).focus();
				}
				else if(parseInt(document.getElementById(elTermsurancegbysumInsured).value)>100000)
				{
					alert("Maximum SumInsured is 100000");
					document.getElementById(elTermsurancegbysumInsured).select();
					document.getElementById(elTermsurancegbysumInsured).focus();
				}
				ajaxTermGBYInstalmentPremium();
			}
		}
	}
	
	document.getElementById(elTermsurancegbypremiumpaymentmode).onblur=function(){
		 document.getElementById(elTermsurancegbypremiumpaymentmode).readOnly=false;
		if(document.getElementById(elTermsurancePremiumType).value=='Single'){
			document.getElementById(elTermsurancegbypremiumpaymentmode).value='Single';
			document.getElementById(elTermsurancegbypremiumpaymentmode).readOnly=true;
		}
		checkPremiumPaymentMode(elTermsurancePremiumType,elTermsurancegbypremiumpaymentmode);
		ajaxTermGBYInstalmentPremium();
	}
	
	document.getElementById(elTermsurancePremiumType).onblur=function(){
	     document.getElementById(elTermsurancegbypremiumPaymentTerm).readOnly=false;
	     document.getElementById(elTermsurancegbypremiumpaymentmode).readOnly=false;
	     
	    if(document.getElementById(elTermsurancePremiumType).value == 'Regular'){
	      document.getElementById(elTermsurancegbypremiumPaymentTerm).value= document.getElementById(elTermsurancegbypolicyTerminyrs).value
	      document.getElementById(elTermsurancegbypremiumPaymentTerm).readOnly=true;
	    }
	    else if(document.getElementById(elTermsurancePremiumType).value == 'Single'){
	      document.getElementById(elTermsurancegbypremiumPaymentTerm).value= 1;
	      document.getElementById(elTermsurancegbypremiumPaymentTerm).readOnly=true;
	      document.getElementById(elTermsurancegbypremiumpaymentmode).value='Single';
	      document.getElementById(elTermsurancegbypremiumpaymentmode).readOnly=true;
	    }
	    checkPremiumPaymentMode(elTermsurancePremiumType,elTermsurancegbypremiumpaymentmode);
	    ajaxTermGBYInstalmentPremium();
	}
}


function termsuranceGBYCheckPremiumPaymentTerm(elTermsurancePremiumType,elTermPPT){
	 if(document.getElementById(elTermsurancePremiumType).value == 'Single'){
		      document.getElementById(elTermPPT).value= 1;
		      document.getElementById(elTermPPT).readOnly=true;
		      document.getElementById(elTermsurancegbypremiumpaymentmode).value='Single';
		      document.getElementById(elTermsurancegbypremiumpaymentmode).readOnly=true;
	  }else if(document.getElementById(elTermsurancePremiumType).value == 'Regular'){
		      document.getElementById(elTermPPT).value= document.getElementById(elTermsurancegbypolicyTerminyrs).value
		      document.getElementById(elTermPPT).readOnly=true;
	  }
	    
	}
function checkPremiumPaymentMode(elTermsurancePremiumType,elTermsurancegbypremiumpaymentmode){
	  if(document.getElementById(elTermsurancePremiumType).value == 'Single')
	  {
			if(document.getElementById(elTermsurancegbypremiumpaymentmode).value != ""){		 	  
			    if(document.getElementById(elTermsurancegbypremiumpaymentmode).value != 'Single'){
			        alert('Premium Payment Mode should be Single if Premium Type is Single');
			  	    document.getElementById(elTermsurancegbypremiumpaymentmode).focus();
			  	}
			}  	
	  }else if(document.getElementById(elTermsurancePremiumType).value == 'Regular'){
		    if(document.getElementById(elTermsurancegbypremiumpaymentmode).value == 'Single'){
		        alert('Premium Payment Mode should not be Single if Premium Type is Regular');
		  	    document.getElementById(elTermsurancegbypremiumpaymentmode).focus();
		  	}
	  }
	  
}
function ajaxTermGBYInstalmentPremium(){
	var request;
	var modeval;
	var url;
	var responseString;

	var planOption = document.getElementById(elTermsurancegbyPlanOption).value;
	var benefitOption=document.getElementById(elTermsurancegbyBenefitOption).value;
	var age = document.getElementById(elTermsurancegbyinsuredAge).value;
	var gender = document.getElementById(elTermsurancegbyinsuredGender).value;
	var policyTerm = document.getElementById(elTermsurancegbypolicyTerminyrs).value;
	var premType = document.getElementById(elTermsurancePremiumType).value;
	var ppt = document.getElementById(elTermsurancegbypremiumPaymentTerm).value;
	var ppm = document.getElementById(elTermsurancegbypremiumpaymentmode).value;
	var sumIns = document.getElementById(elTermsurancegbysumInsured).value;
	var doBrith=document.getElementById(elTermsurancegbyinsuredDOB).value;
    var emr = document.getElementById(elTermEMR).value;
    var perMile = document.getElementById(elTermPerMile).value;

   if( age != "" && policyTerm != "" && ppt != "" && sumIns !=""){
	   url = "/INSDC/validateTermsuranceGBY.do?mode=installmentPremiumTermsuranceGBY&planOption="+planOption+"&benefitOption="+benefitOption
		+"&age="+age+"&doBrith="+doBrith
		+"&gender="+gender
		+"&policyTerm="+policyTerm
		+"&premType="+premType
		+"&ppt="+ppt
		+"&ppm="+ppm
		+"&sumIns="+sumIns
		+"&emr="+emr
		+"&perMile="+perMile;
		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
					var jsonText = request.responseText;
					if( jsonText.length > 0 && jsonText != "null")
					{
					   var jsonObject = eval( "(" + jsonText + ")" ) ;
					   if(jsonObject["displayInstallmentPremium"].length>0){
							document.getElementById(elTermsurancegbyinstalmentPremium).value = jsonObject["displayInstallmentPremium"];
					   }
					   
					   if(jsonObject["displayServiceTax"].length>0){
							document.getElementById(elTermsurancegbyserviceTax).value = jsonObject["displayServiceTax"];
					   }

					   if(jsonObject["displayTotalInstallmentPremium"].length>0){
							document.getElementById(elTermsurancegbyPremiumTotal).value = jsonObject["displayTotalInstallmentPremium"];
					   }
				   }					   
			  }
			}
			}
			request.open("POST",url,true);
			request.setRequestHeader("content-type","application/x-www-form-urlencoded");
			request.send(null); 
		}
   }
}




