$(document).ready(function() {
	$('#dreaddiseaseresult').attr("disabled", true); 
	$('#dreaddisabilityresult').attr("disabled", true); 
	$('#lifecoverresult').attr("disabled", true); 
	$('#lifecovertextresult').attr("disabled", true); 
	$('#dreaddiseasetextresult').attr("disabled", true); 
	$('#disabilitytextresult').attr("disabled", true); 
	
	$('.submitcalc > input').click(function() {
		var current_age = $("#ageval").val();
		var retirement_age = $("#retireval").val();
		var income = currencyToFloat($("#incomevalue").val());
		var dread_disease_cover = currencyToFloat($("#dreadcover").val());
		var disability_cover = currencyToFloat($("#disabilitycover").val());
		var life_cover = currencyToFloat($("#lifecoverval").val()); 
		
		//form validations	
		retirementage = $("#retireval").val().replace(/[0-9]*/g, "");
		if (retirementage!=''){
			alert('Retirement Age Value Should Contain Integer Values Only');
			$(this).css('background','#FF0000');
			$(this).css('color','white');
			return true;
		}
		if($("#retireval").val() > 67){
			alert('Retirement Age Should Not Be Greater Than 67')
			return true;
		}
		
		
		//Life Cover Result - Start
		var lifecover_result;
		if(income=='' || income=='0'){
			lifecover_result = 0;
		}else{
			var sub = (((income*(12))*((retirement_age)-(current_age)))-life_cover);
			if(sub < 0){
				lifecover_result = 0;
			}else{
				lifecover_result = formatCurrency((((income*12)*(retirement_age-current_age)))-life_cover);
				
				$("#lifecoverresult").val(lifecover_result); 
			}
		}
		//Life Cover Result End
		
		//Disability Cover Start
		var disabilitycover_result;
		if(income=='' || income=='0'){
			disabilitycover_result = 0;
		}else{
			var sub = (((income*(12)*0.75)*((retirement_age)-(current_age)))-disability_cover);
			if(sub < 0){
				disabilitycover_result = 0;
			}else{
				disabilitycover_result = formatCurrency((((income*12*0.75)*(retirement_age-current_age)))-disability_cover);
				$("#dreaddisabilityresult").val(disabilitycover_result); 
			}
		}
		//Disability Cover Start

		//Dread Disease Start
		var dreaddisease_result;
		if(income=='' || income=='0'){
			dreaddisease_result = 0;
		}else{
			var sub = (((income*(12))*((retirement_age)-(current_age)))-dread_disease_cover);
			if(sub < 0){
				dreaddisease_result = 0;
			}else{
				dreaddisease_result = formatCurrency((((income*12)*(retirement_age-current_age)))-dread_disease_cover);
				$("#dreaddiseaseresult").val(dreaddisease_result); 
			}
		}
		//Dread Disease End

		//Text Descrip - Life Cover
		var lcovertext='';
		var lc = currencyToFloatText($("#lifecoverresult").val()); 
		if((lc - life_cover) == '' || (lc - life_cover) < 0){
			var lcovertext = 'You have have excess life cover';
		}else{
			if((lc - life_cover) > 0){
				lcovertext += 'You are underinsured on life cover';
			}else{
				lcovertext += 'You are sufficiently insured on life cover';
			}
		}
		//Text Descri - Disability  
		var distext='';
		var dd = currencyToFloatText($("#dreaddisabilityresult").val()); 
		if((dd - disability_cover) == '' || (dd - disability_cover) < 0){
			var distext = 'You haveeee excess disability cover';
		}else{
			if((dd - disability_cover) > 0){
				distext += 'You are underinsured on disability cover';
			}else{
				distext += 'You are sufficiently insured on disability cover';
			}
		}
		//Text Descri - Dread Disease
		var dreadtext='';
		var ddi = currencyToFloatText($("#dreaddiseaseresult").val()); 
		if((ddi - dread_disease_cover) == '' || (ddi - dread_disease_cover) < 0){
			var dreadtext = 'You have excess dread disease cover';
		}else{
			if((ddi- dread_disease_cover) > 0){
				dreadtext += 'You are underinsured on dread disease cover';
			}else{
				dreadtext += 'You are sufficiently insured on dread disease cover';
			}
		}
		$('.lifecovertext').text(lcovertext);
		$('.disabilitytext').text(distext);
		$('.dreadtext').text(dreadtext);
		
		return false;
	});
});

function currencyToFloat(val){
	
	var valueFloat = val.substr(1);
	valueFloat = valueFloat.replace(new RegExp(",", "g"), '');
	//valueFloat = parseFloat(valueFloat,2);
	return valueFloat;

}

function currencyToFloatText(val){
	var valueFloat = val.substr(1).trim();
	valueFloat = valueFloat.replace(new RegExp(",", "g"), '');
	return valueFloat;

}

function formatCurrency(num) {
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
		num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
		cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+','+ num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') + 'R' + num + '.' + cents);
}
