﻿function Comma(number) {
number = '' + number;
if (number.length > 3) {
var mod = number.length % 3;
var output = (mod > 0 ? (number.substring(0,mod)) : '');
for (i=0 ; i < Math.floor(number.length / 3); i++) {
if ((mod == 0) && (i == 0))
output += number.substring(mod+ 3 * i, mod + 3 * i + 3);
else
output+= ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);
}
return (output);
}
else return number;
}

function ChangePropertyValue(v)
{
    var obj = document.getElementById("PropertyValue");
    obj.innerHTML = "";
    obj.innerHTML = Comma(v);
}

    var repaymentValues = [0,25];


function ChangeRePropertyValues(v)
{
    var obj = document.getElementById("RePaymentValue");
    obj.innerHTML = "";
    obj.innerHTML = v + " Years";
}


			
function ChangeInterestValue(v)
{
    var obj = document.getElementById("InterestValue");
    obj.innerHTML = "";
    obj.innerHTML = v;
}



function ChangeDownPaymentValue(v)
{
    var obj = document.getElementById("DownPaymentValue");
    obj.innerHTML = "";
    obj.innerHTML = Comma(v);
}

function CalculateMortgage()
{
   var propertyvaluenew = document.getElementById("PropertyValue").innerHTML;
   var downPaymentvaluenew = document.getElementById("DownPaymentValue").innerHTML;
   var temp1 = new String();
   temp1 = propertyvaluenew.split(',');
   var newp = "";
   var i=0;
   for(i=0;i<temp1.length;i++)
   {
        newp += temp1[i];
   }
   propertyvaluenew = newp;
      
   var temp2 = new String();
   temp2 =  downPaymentvaluenew.split(',');
   var newdown = "";
   var k=0;
   for(k=0;k<temp2.length;k++)
   {
        newdown += temp2[k];
   }
   downPaymentvaluenew = newdown;
   if(propertyvaluenew == 0)
    {
        alert("Please select property value");
        return;
    }
    if(downPaymentvaluenew == 0)
    {
        alert("Please select down payment value");
        return;
    }
    var mortgageAmount = propertyvaluenew - downPaymentvaluenew;
    if(mortgageAmount <= 0 || mortgageAmount == 0)
    {
        alert("Down payment should be less than property value");
        var mortgageAmountDiv = document.getElementById("MortgageAmountDiv");
        mortgageAmountDiv.innerHTML = "";
        mortgageAmountDiv.innerHTML = "0";
        return;
    }
    else
    {
        var mortgageAmountDiv = document.getElementById("MortgageAmountDiv");
        mortgageAmountDiv.innerHTML = "";
        mortgageAmountDiv.innerHTML = Comma(mortgageAmount);
    }
}

function ResetValues()
{
    document.getElementById("PropertyValuehandle").style.left = "0px"; 
    document.getElementById("PropertyValue").innerHTML = "";
    document.getElementById("PropertyValue").innerHTML = "0";
    document.getElementById("Repaymenthandle").style.left = "0px"
    document.getElementById("RePaymentValue").innerHTML = "";
    document.getElementById("RePaymentValue").innerHTML = "1 Years";
    document.getElementById("Interesthandle").style.left = "0px";
    document.getElementById("InterestValue").innerHTML = "";
    document.getElementById("InterestValue").innerHTML = "2";
    document.getElementById("DownPaymenthandle").style.left = "0px";
    document.getElementById("DownPaymentValue").innerHTML = "";
    document.getElementById("DownPaymentValue").innerHTML = "0";
    document.getElementById("MortgageAmountDiv").innerHTML = "";
    document.getElementById("MortgageAmountDiv").innerHTML = "0";
    document.getElementById("txtMortgage").value = "";
}


function CalculteBtnMortgageAmount() {
        CalculateMortgage();
        
        var newMortgageValue = document.getElementById("MortgageAmountDiv").innerHTML;
        var temp1 = new String();
        temp1 = newMortgageValue.split(',');
        var newp = "";
        var i=0;
        for(i=0;i<temp1.length;i++)
        {
               newp += temp1[i];
         }
           newMortgageValue = newp;
        
        if(newMortgageValue == "0")
        {
            return;
        }
        else
        {
        var A = newMortgageValue; // document.getElementById("MortgageAmountDiv").innerHTML;
	    var T = document.getElementById("RePaymentValue").innerHTML;    
		var R = document.getElementById("InterestValue").innerHTML; 
		
		// maths et al to be computed
        var P = Pmt(R, T, A, 0, 0);
        document.getElementById("txtMortgage").value = Comma(P);
      	}
	}

 function roundOff(value, dplaces){
    value=value.toString()
    if((value.indexOf(".")!=-1)&&(value.length>(value.indexOf(".")+dplaces))){
        three=value.substring(value.indexOf(".")+dplaces+1,value.indexOf(".")+dplaces+2)
        one=value.substring(0,value.indexOf(".")+dplaces)
        two=value.substring(value.indexOf(".")+dplaces,value.indexOf(".")+dplaces+1)
        if (parseInt(three)>=5) {
          value=one+(parseInt(two)+1);value=parseFloat(value)
        }
        else {
          value=one+two;value=parseFloat(value)
        }
    }
    return value;
  } 
    
  function Pmt(r,np,pv,fv) {
    np = parseInt(np);
    np = np * 12;
    r = r/1200;
    if (!fv) fv = 0;
    pmt=(r * (fv+Math.pow((1+r),np)*pv)/(-1+Math.pow((1+r),np)));
    finalPmt=roundOff(pmt,0);
    return finalPmt;
  }
  
  function Hide()
  {
    document.getElementById("mor-container").style.display = "none";
  }
  
 function MortgageHide()
{
   MortgageHide1();
}
function createSliders()
{
        try{
        var propertyValues = [0, 20000000];
     	new Control.Slider('PropertyValuehandle', 'PropertyValuetrack', {
				range: $R(0, 20000000,false),
				values: [0, 100000, 200000, 400000, 600000, 800000, 1000000, 1200000, 1400000, 1600000, 1800000, 2000000, 2200000, 2400000, 2600000, 2800000, 3000000, 3200000, 3400000, 3600000, 3800000, 4000000, 4200000, 4400000, 4600000, 4800000, 5000000, 5200000, 5400000, 5600000, 5800000, 6000000, 6200000, 6400000, 6600000, 6800000, 7000000, 7200000, 7400000, 7600000, 7800000, 8000000, 8200000, 8400000, 8600000, 8800000, 9000000, 9200000, 9400000, 9600000, 9800000, 10000000, 10200000, 10400000, 10600000, 10800000, 11000000, 11200000, 11400000, 11600000, 11800000, 12000000, 12200000, 12400000, 12600000, 12800000, 13000000, 13200000, 13400000, 13600000, 13800000, 14000000, 14200000, 14400000, 14600000, 14800000, 15000000, 15200000, 15400000, 15600000, 15800000, 16000000, 16200000, 16400000, 16600000, 16800000, 17000000, 17200000, 17400000, 17600000, 17800000, 18000000, 18200000, 18400000, 18600000, 18800000, 19000000, 19200000, 19400000, 19600000, 19800000, 20000000],
				restricted:true,
				increment: 0.5,
				step: 0.5,
				sliderValue: propertyValues, // won't work if set to 0 due to a bug(?) in script.aculo.us
			    onSlide: ChangePropertyValue
			});
			
		new Control.Slider('Repaymenthandle', 'Repaymenttrack', {
				range: $R(1, 25,false),
				values: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],
				restricted:true,
				sliderValue: repaymentValues, 
			    onSlide: ChangeRePropertyValues
			});
			
        var InterestValues = [2,12];
        new Control.Slider('Interesthandle', 'Interesttrack', {
				range: $R(2, 12,false),
				values: [2, 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 2.8, 2.9, 3, 3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.7, 4.8, 4.9, 5, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 5.8, 5.9, 6.0, 6.1, 6.2, 6.3, 6.4, 6.5, 6.6, 6.7, 6.8, 6.9, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 7.6, 7.7, 7.8, 7.9, 8.0, 8.1, 8.2, 8.3, 8.4, 8.5,8.6,8.7,8.8,8.9,9,9.1,9.2,9.3,9.4,9.5,9.6,9.7,9.8,9.9,10,10.1,10.2,10.3,10.4,10.5,10.6,10.7,10.8,10.9,11,11.1,11.2,11.3,11.4,11.5,11.6,11.7,11.8,11.9,12],
				restricted:true,
				sliderValue: InterestValues,
			    onSlide: ChangeInterestValue
			});
			
		new Control.Slider('DownPaymenthandle', 'DownPaymenttrack', {
				range: $R(0, 20000000,false),
				values: [0, 100000, 200000, 400000, 600000, 800000, 1000000, 1200000, 1400000, 1600000, 1800000, 2000000, 2200000, 2400000, 2600000, 2800000, 3000000, 3200000, 3400000, 3600000, 3800000, 4000000, 4200000, 4400000, 4600000, 4800000, 5000000, 5200000, 5400000, 5600000, 5800000, 6000000, 6200000, 6400000, 6600000, 6800000, 7000000, 7200000, 7400000, 7600000, 7800000, 8000000, 8200000, 8400000, 8600000, 8800000, 9000000, 9200000, 9400000, 9600000, 9800000, 10000000, 10200000, 10400000, 10600000, 10800000, 11000000, 11200000, 11400000, 11600000, 11800000, 12000000, 12200000, 12400000, 12600000, 12800000, 13000000, 13200000, 13400000, 13600000, 13800000, 14000000, 14200000, 14400000, 14600000, 14800000, 15000000, 15200000, 15400000, 15600000, 15800000, 16000000, 16200000, 16400000, 16600000, 16800000, 17000000, 17200000, 17400000, 17600000, 17800000, 18000000, 18200000, 18400000, 18600000, 18800000, 19000000, 19200000, 19400000, 19600000, 19800000, 20000000],
				restricted:true,
				sliderValue: propertyValues,
			    onSlide: ChangeDownPaymentValue
			});

}

catch(err)
{}

 }
