// JavaScript Document

      function ClearInput(form){

        form.price.value="";

        form.year.value="";

        form.rate.value="";

           form.deposit.value="";

        form.loan.value="";

        this.document.result.month1.value="";

           this.document.result.fortn1.value="";

        return true;

      }



      function help(helponwhat) {

                if (helponwhat == "value")

           alert("Enter the market value of the property (Purchase Price).")

                      else

           if (helponwhat == "year")

           alert("Enter the number of years you want to repay your home loan. ")

                     else


            if (helponwhat == "deposit")

            alert("Enter the down payment amount for your home. ")
 
                      else

            if (helponwhat == "loan")
  
            alert("Enter the total loan amount you require. ")  


                      else

                if (helponwhat == "rate")

           alert("Mortgage Express offers a variety of home loan rate to suit your needs.");

      }



      function CheckForm(form){

        if (form.price.value==null||form.price.value.length==0){

                alert("Please enter the purchase price of your house");

                return false;}

        else


        { if (form.year.value==null||form.year.value.length==0){

                alert("Please enter the length of your mortgage.");

                return false;}

        else

        { if (form.rate.value<2||form.rate.value>20){

                alert("The interest rate should be between 2% and 20%.");

                return false;}

        else

        { if (form.loan.value<1){

                alert("The Loan Amount cannot be less than $1.00.");

                return false;} 

        else


            document.result.price.value = ChkValue(document.result.price.value)
                 document.result.deposit.value = ChkValue(document.result.deposit.value)
                 document.result.loan.value = ChkValue(document.result.loan.value)
                 document.result.year.value = ChkValue(document.result.year.value)
                 

                {       return true;}

        }}}}





      function MakeMoney(numb){

        money='$';

        for (var i=0;i<numb.value.length; i++) {

          j=i+1;

          money+=numb.value.substring(i,j);

          if (numb.value==Math.round(numb.value))

                { pos=numb.value.length-j;}

          else

                { pos=numb.value.length-3-j;}

          tmp=Math.round(pos/3);

          if (pos == tmp*3 && pos != 0) money+=",";

        }

        return money;

      }



      function PVIFA(annual_rate, years, period){

        var monthly_rate=annual_rate/period;

        var factor=0;

        var base_rate=1+monthly_rate;

        var denominator=base_rate;

        for (var i=0;i<(years*period);i++){

                factor+=(1/denominator);

                denominator*=base_rate;}

        return factor;

      }



      function CalcLoan(){

        document.result.loan.value = (ChkValue(document.result.price.value) - ChkValue(document.result.deposit.value));
        
        
      }




                                                                                              
  function ChkValue(CheckValue) {                                                              
                                                                                              
   var TheLength = CheckValue.length;                                                         
   var Nmbrs = "0123456789";                                                                  
                                                                                              
   for (i2 = 0 ; i2 < TheLength ; i2++) {                                                     
                                                                                              
     if (CheckValue.charAt(i2) == ".") {                                                      
        NewValue = CheckValue.substring(0,i2);                                                
        CheckValue = NewValue;                                                                
        i2 = TheLength;                                                                       
                                                                                              
     } else {                                                                                 
                                                                                              
     if (Nmbrs.indexOf(CheckValue.charAt(i2)) == -1) {                                        
        var start = i2 + 1;                                                                   
        NewValue = (CheckValue.substring(0,i2) + CheckValue.substring(start,TheLength));      
        CheckValue = NewValue;                                                                
        i2 = i2 - 1;                                                                          
                                                                                              
     }                                 
     }                                 
   }                                   
                                       
   if (CheckValue == "") {             
      CheckValue = 0;                  
   }                                   
                                       
   return parseFloat(CheckValue);      
 }  
                                                                                              
                                    
                                       


      function Calculate(form){

        if (CheckForm(form)){

            form.loan.value = form.price.value - form.deposit.value;

                interest_rate=(form.rate.value/100);

                monthly_factor=PVIFA(interest_rate, form.year.value, 12);

                fortnightly_factor=PVIFA(interest_rate, form.year.value, 26);

                        var base_amount=form.loan.value;

                this.document.result.month1.value=Math.round(base_amount/monthly_factor);
            this.document.result.fortn1.value=Math.round(base_amount/fortnightly_factor);

                        form.price.value=MakeMoney(form.price);

                        form.deposit.value=MakeMoney(form.deposit);

                        form.loan.value=MakeMoney(form.loan);

                this.document.result.month1.value=MakeMoney(this.document.result.month1);

                this.document.result.fortn1.value=MakeMoney(this.document.result.fortn1);

                
            return true;

        }

      }

      

