function ErrorAlert(objField,sText)
{
    objField.select();
    alert(sText);
    return false;
}

function GetMonthlyValues(totalAmount, Number_Months)
{
    var aROI=new Array(0.00869,0.00793,0.00716,0.00639);
    var aPayment=new Array();
    var selectedAmt=0;
    var vAPR="";
    var posDecimal=0;
    var vPayment="";
    
    for (var i=0;i<5;i++)
    {
        aPayment[i]=(totalAmount * ( 1-( Math.pow((1 / (aROI[i] + 1)),(Number_Months)) ) ) / aROI[i]) + 0.005;
    }
    
    for (var c=0;c<5;c++)
    {
        if (aPayment[c]>=1000 && aPayment[c]<14999)
        {
            vAPR="10.9";
            selectedAmt=aPayment[0];
            break;
        }
        else if (aPayment[c]>=15000 && aPayment[c]<24999)
        {
            vAPR="9.9";
            selectedAmt=aPayment[1];
            break;
        }
        else if (aPayment[c]>=25000 && aPayment[c]<34999)
        {
            vAPR="8.9";
            selectedAmt=aPayment[2];
            break;
        }
        else if (aPayment[c]>=35000) 
        {
            vAPR="7.9";
            selectedAmt=aPayment[3];
            break;
        }
    }

    vPayment=String(selectedAmt);
    posDecimal=vPayment.indexOf(".");

    if (vPayment.charAt(posDecimal+2)=="") vPayment+="0";
    vPayment=vPayment.substring(0,posDecimal+3);

    return new Array(vPayment,vAPR);
     
   
}

function populateAPR() {


var f=document.frmCalc;

//get loan amount
var vLoanAmount= eval(f.Total_Loan.value);

		if (vLoanAmount<1000)
        {
            //null all options
	    for (s = f.APR.options.length; s >= 1; s--)
	    {	f.APR.options[s] = null;
	    f.APR.options[0] = new Option ("Select");
	    f.APR.options[0].value = "";}
	    }
		
		if (vLoanAmount>=1000 && vLoanAmount<14999)
        {
            //null all options
	    for (s = f.APR.options.length; s >= 1; s--)
	    {	f.APR.options[s] = null;}
	    
	    f.APR.options[0] = new Option ("10.9%");
	    f.APR.options[0].value = "0.00869";
	    f.APR.options[1] = new Option ("11.9%");
	    f.APR.options[1].value = "0.00945";
	    f.APR.options[2] = new Option ("12.9%");
	    f.APR.options[2].value = "0.00989";
	    f.APR.options[3] = new Option ("16.9%");
	    f.APR.options[3].value = "0.01310";
	    f.APR.options[4] = new Option ("19.9%");
	    f.APR.options[4].value = "0.01521";
        }
        else if (vLoanAmount>=15000 && vLoanAmount<24999)
        {
            //null all options
	    	    for (s = f.APR.options.length; s >= 1; s--)
	    	    {	f.APR.options[s] = null;}
	    	    
	    f.APR.options[0] = new Option ("9.9%");
	    f.APR.options[0].value = "0.00793";
	    f.APR.options[1] = new Option ("10.9%");
	    f.APR.options[1].value = "0.00869";
	    f.APR.options[2] = new Option ("12.9%");
	    f.APR.options[2].value = "0.00989";
	    f.APR.options[3] = new Option ("14.9%");
	    f.APR.options[3].value = "0.01167";
	    f.APR.options[4] = new Option ("19.9%");
	    f.APR.options[4].value = "0.01521";
        }
		
		else if (vLoanAmount>=25000 && vLoanAmount<34999)
        {
            //null all options
	    	    for (s = f.APR.options.length; s >= 1; s--)
	    	    {	f.APR.options[s] = null;}
	    	    
		f.APR.options[0] = new Option ("8.9%");
	    f.APR.options[0].value = "0.00716";
	    f.APR.options[1] = new Option ("10.9%");
	    f.APR.options[1].value = "0.00869";
	    f.APR.options[2] = new Option ("12.9%");
	    f.APR.options[2].value = "0.00989";
	    f.APR.options[3] = new Option ("13.9%");
	    f.APR.options[3].value = "0.01094";
	    f.APR.options[4] = new Option ("19.9%");
	    f.APR.options[4].value = "0.01521";
        }
        
        else if (vLoanAmount>=35000 && vLoanAmount<500001)
	        {
	    //null all options
		for (s = f.APR.options.length; s >= 1; s--)
		{	f.APR.options[s] = null;}
		f.APR.options[0] = new Option ("7.9%");
	    f.APR.options[0].value = "0.00639";
	    f.APR.options[1] = new Option ("8.9%");
	    f.APR.options[1].value = "0.00716";
	    f.APR.options[2] = new Option ("10.9%");
	    f.APR.options[2].value = "0.00869";
	    f.APR.options[3] = new Option ("12.9%");
	    f.APR.options[3].value = "0.00989";
	    f.APR.options[4] = new Option ("14.9%");
	    f.APR.options[4].value = "0.01167";
	    f.APR.options[5] = new Option ("19.9%");
	    f.APR.options[5].value = "0.01521";
        }


}


function GetMonthlyAmountFromLoanAmount(loanAmt, outstandingAmt, Number_Months, ppType,roi,apr)
{
     
    var aPayment=new Array();
    var selectedAmt=0;
    var posDecimal=0;
    var vPayment="";
    var totalPayable=0;
    
    roi= eval(roi);
    
    if (outstandingAmt==null) outstandingAmt=loanAmt;

    vPayment=String((outstandingAmt/((1-Math.pow(1/(1+roi),(Number_Months)))/roi))+0.005);
    
    posDecimal=vPayment.indexOf(".");
    if (posDecimal > 0)
    {
		if (vPayment.charAt(posDecimal+2)=="") 
		{
			vPayment+="0";
		}
		vPayment=vPayment.substring(0,posDecimal+3);
    }
    
    totalPayable = String(vPayment * Number_Months);
    posDecimal=totalPayable.indexOf(".");
    
    
    if (posDecimal > 0)
    {
		if (totalPayable.charAt(posDecimal+2)=="")
		{
		 totalPayable+="0";
		}
		totalPayable=totalPayable.substring(0,posDecimal+3);
	}
	


    return new Array(vPayment, apr, totalPayable);
}



function Calculate()
{

    var f=document.frmCalc;

    
    var loanAmt=f.Total_Loan.value;
    var Number_Months=f.Total_Number_Months.value;
    var ppType=3;
    var roi=f.APR.options[f.APR.selectedIndex].value; 
    var apr=f.APR.options[f.APR.selectedIndex].text; 
    
    var aReturn=GetMonthlyAmountFromLoanAmount(loanAmt,null,Number_Months,ppType,roi,apr);

    f.MonthlyPayment.value=String(aReturn[0]);
    f.TotalPayable.value=String(aReturn[2]);
 
}

function ClearResults()
{
    with (document.frmCalc)
    {
        Total_Loan.style.background="#FFFFFF";
        Total_Number_Months.style.background="#FFFFFF";

        MonthlyPayment.value="";
        //APR.value="";
    }
}


