// JavaScript Document


function calculate()
{
	var txtPrincipal = document.forms["aspnetForm"].txtPrincipal;
	var txtInRate = document.forms["aspnetForm"].txtInRate;
	var ddlDays = document.forms["aspnetForm"].ddlDays;
	var isValid = true;
	
	document.getElementById("valPrincipal").style.display = "none";
	document.getElementById("valInRate").style.display = "none";
	document.getElementById("valddlDays").style.display = "none";
	
	if(txtPrincipal.value == "")
	{
		document.getElementById("valPrincipal").innerHTML = "Principal Amount cannot be empty";
		document.getElementById("valPrincipal").style.display = "block";
		isValid = false;
	}
	else if(isNaN(txtPrincipal.value))
	{
		document.getElementById("valPrincipal").innerHTML = "Principal Amount has to be a number";
		document.getElementById("valPrincipal").style.display = "block";
		isValid = false;
	}
	
	if(txtInRate.value == "")
	{
		document.getElementById("valInRate").innerHTML = "Interest Rate cannot be empty";
		document.getElementById("valInRate").style.display = "block";
		isValid = false;
	}
	else if(isNaN(txtInRate.value))
	{
		document.getElementById("valInRate").innerHTML = "Interest Rate has to be a number";
		document.getElementById("valInRate").style.display = "block";
		isValid = false;
	}
	else if(txtInRate.value > 100)
	{
		document.getElementById("valInRate").innerHTML = "Interest Rate cannot be more than 100";
		document.getElementById("valInRate").style.display = "block";
		isValid = false;
	}
	
	if(ddlDays.selectedIndex == 0)
	{
		document.getElementById("valddlDays").innerHTML = "Select days";
		document.getElementById("valddlDays").style.display = "block";
		isValid = false;
	}
	
	if(isValid)
	{
	    var calRate = parseFloat(txtInRate.value) / 100;
		var calPeriod = parseFloat(ddlDays.options[ddlDays.selectedIndex].text) / 365;
		
		var InterestAmount  = parseFloat(txtPrincipal.value) * calRate * calPeriod;
		
		document.getElementById("calIA").innerHTML = addCommas(roundNumber(InterestAmount, 2));
		document.getElementById("calTotal").innerHTML = addCommas(roundNumber( (parseFloat(txtPrincipal.value) + InterestAmount), 2));
	}
	
	
}

function clearCals()
{
    document.getElementById("valPrincipal").innerHTML = "";
	document.getElementById("calIA").innerHTML = "-";
	document.getElementById("calTotal").innerHTML = "-";
	document.getElementById("valInRate").innerHTML = "";
	document.getElementById("valddlDays").innerHTML = "";
}

function roundNumber(rnum, rlength) { // Arguments: number to round, number of decimal places
  var newnumber = Math.round(rnum*Math.pow(10,rlength))/Math.pow(10,rlength);
 return newnumber; // Output the result to the form field (change for your purposes)
}

function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}
