var loan = { init:function(){ $("#calculate").bind({ "click":function(){ loan.displayBasic(); } }); loan.inputCheck(); }, displayBasic:function(){ if(loan.formCheck()) { var P = $("#p").val(); var period = $("#period").val(); var R = $("#r").val()/100; P = parseFloat(P); period = parseInt(period); var principalLoanAmount= loan.calPrincipalLoanAmount(P,period,R); $("#pDisplay").html(extraMath.formatMoney($("#p").val(),2,".",",")); $("#periodDisplay").html($("#period").val()); $("#rDisplay").html(extraMath.formatMoney($("#r").val(),4,".",",")+"%"); console.log(principalLoanAmount); //$("#PrincipalLoanAmountDisplay").html(extraMath.formatMoney(principalLoanAmount,2,".",",")); $("#PrincipalLoanAmountDisplay").html(loan.unknownFormatbyCNCBI(extraMath.formatMoney(principalLoanAmount,8,".",","))); } }, calPrincipalLoanAmount:function(P,period,R){ var monthlyInterest = R / 12.00; var var1 = loan.raiseP(( 1 + monthlyInterest), period); var result = (P / monthlyInterest * (1-1/ var1 )*100.00 )/100.00; return result; }, unknownFormatbyCNCBI:function(result){ //this function from https://ibanking.cncbinternational.com/CKWPortal/appmanager/Portal/CKWPersonPopup?_nfpb=true&_pageLabel=ckwPopupCS_OTMLoanAmount&displayLang=en_US //don't round , remove all decimal place //document.calculator.result.value =commaSplit( round(result, 2) ); result = "" + result; dec = result.indexOf("."); if (dec > 0) { dollars = result.substring(0,dec); cents = result.substring(dec+1,dec+3); cents = (cents.length < 2) ? cents + "0" : cents; result = dollars + "." + cents; } else { result = dollars + ".00" ; } return result; }, raiseP:function(x,y){ //this function from https://ibanking.cncbinternational.com/CKWPortal/appmanager/Portal/CKWPersonPopup?_nfpb=true&_pageLabel=ckwPopupCS_OTMLoanAmount&displayLang=en_US total=1; for (j=0; j 999999999) errorText += "- "+loanDisplayText.InvalidMonthlyRepaymentAmountRange[lang]+"\n"; if($("#period").val().trim()=="") errorText += "- "+loanDisplayText.InputRepaymentPeriod[lang]+"\n"; else if(isNaN($("#period").val())) errorText += "- "+loanDisplayText.InvalidRepaymentPeriod[lang]+"\n"; else if($("#period").val() < 1 || $("#period").val() > 999) errorText += "- "+loanDisplayText.InvalidRepaymentPeriodRange[lang]+"\n"; if($("#r").val().trim()=="") errorText += "- "+loanDisplayText.InputExpectedAnnualInterestRate[lang]+"\n"; else if(isNaN($("#r").val())) errorText += "- "+loanDisplayText.InvalidExpectedAnnualInterestRate[lang]+"\n"; else if($("#r").val() < 0.01 || $("#r").val() > 99.99) errorText += "- "+loanDisplayText.InvalidExpectedAnnualInterestRateRange[lang]+"\n"; if(errorText) { errorText = errorText; check = false; alert(errorText) } return check; } }; var loanDisplayText = { index:function(){ $("title").text(loanDisplayText.metaTitle[lang]); $("#header").html(''); $(".MonthlyRepaymentAmount").text(loanDisplayText.MonthlyRepaymentAmount[lang]); $(".RepaymentPeriod").text(loanDisplayText.RepaymentPeriod[lang]); $(".ExpectedAnnualInterestRate").text(loanDisplayText.ExpectedAnnualInterestRate[lang]); $("#calculate").val(loanDisplayText.Calculate[lang]); $("#clear").val(loanDisplayText.Clear[lang]); $(".CalculationResult").text(loanDisplayText.CalculationResult[lang]); $("#YourInput").text(loanDisplayText.YourInput[lang]); $("#PrincipalLoanAmount").text(loanDisplayText.PrincipalLoanAmount[lang]); $(".LoanHeader").text(loanDisplayText.LoanHeader[lang]); $("#note1").html(loanDisplayText.note1[lang]); }, metaTitle:{ "en":"Mortgage Calculator – Calculate Maximum Affordable Loan Amount", "tc":"按揭計算機 - 計算最高可負擔貸款額", "sc":"按揭计算机 - 计算最高可负担贷款额" }, LoanHeader:{ "en":"Mortgage Calculator – Calculate Maximum Affordable Loan Amount", "tc":"按揭計算機 - 計算最高可負擔貸款額", "sc":"按揭计算机 - 计算最高可负担贷款额" }, MonthlyRepaymentAmount:{ "en":"Monthly Repayment Amount (HKD) ", "tc":"每月供款額 (港幣) ", "sc":"每月供款额 (港币)" }, RepaymentPeriod:{ "en":"Repayment Period (Month(s))", "tc":"還款期 (月) ", "sc":"还款期 (月) " }, ExpectedAnnualInterestRate:{ "en":"Expected Annual Interest Rate (%)", "tc":"預期貸款年利率 (%)", "sc":"预期贷款年利率 (%)" }, Calculate:{ "en":"Calculate", "tc":"計算", "sc":"计算" }, Clear:{ "en":"Clear", "tc":"重新輸入", "sc":"重新输入" }, CalculationResult:{ "en":"Calculation Result", "tc":"計算結果", "sc":"计算结果" }, YourInput:{ "en":"Your Input", "tc":"你的資料", "sc":"你的资料" }, PrincipalLoanAmount:{ "en":"Principal Loan Amount (HKD) ", "tc":"貸款額 (港幣) ", "sc":"贷款额 (港币)" }, InputMonthlyRepaymentAmount:{ "en":"Please input the Monthly Repayment Amount.", "tc":"請輸入每月供款額。", "sc":"请输入每月供款额。" }, InputRepaymentPeriod:{ "en":"Please input the Repayment Period.", "tc":"請輸入還款期。", "sc":"请输入还款期。" }, InputExpectedAnnualInterestRate:{ "en":"Please input the Interest Rate.", "tc":"請輸入年利率。", "sc":"请输入年利率。" }, InvalidMonthlyRepaymentAmount:{ "en":"The Monthly Repayment Amount you inputted is invalid. Please re-enter.", "tc":"你所輸入的貸款額不正確,請重新輸入。", "sc":"你所输入的贷款额不正确,请重新输入。" }, InvalidRepaymentPeriod:{ "en":"The Repayment Period you inputted is invalid. Please re-enter.", "tc":"你所輸入的每月供款額不正確,請重新輸入。", "sc":"你所输入的每月供款额不正确,请重新输入。" }, InvalidExpectedAnnualInterestRate:{ "en":"The Expected Annual Interest Rate you inputted is invalid. Please re-enter.", "tc":"你所輸入的預期貸款年利率不正確,請重新輸入。", "sc":"你所输入的预期贷款年利率不正确,请重新输入。" }, InvalidMonthlyRepaymentAmountRange:{ "en":"Monthly Repayment Amount must be between 1 to 999,999,999.", "tc":"每月供款額須在1至999,999,999內。", "sc":"每月供款额须在1至999,999,999内。" }, InvalidRepaymentPeriodRange:{ "en":"Repayment Period must be between 1 to 999.", "tc":"還款期數值須在1至999內。", "sc":"还款期数值须在1至999内。" }, InvalidExpectedAnnualInterestRateRange:{ "en":"Interest Rate must be between 0.01 to 99.99% .", "tc":"年利率數值須在0.01至99.99%內。", "sc":"年利率数值须在0.01至99.99%内。" }, note1:{ "en":"The calculation is based on the information provided by customer and the calculator result is for reference only. The actual repayment liability depends on the actual terms of each borrowing arrangement.", "tc":"以上的計算結果是根據客戶提供之資料計算及計算結果只供參考。實際還款責任取決於各項借款安排的實際條款。", "sc":"以上的计算结果是根据客户提供之资料计算及计算结果只供参考。实际还款责任取决于各项借款安排的实际条款。" } };