$(document).ready(function(){var Fsumma=0;var Fproc=0;var Fmonths=0;var Fctype=0;$('#report').html('');if($('.creditform').find('input#summa').val()!=''){$('.creditform').css({display:'block'});} $('form.calc').submit(function(){Fsumma=parseFloat($(this).find('input[name="sum"]').val().replace(',','.'));Fmonths=parseInt($(this).find('input[name="term"]').val());Fproc=parseFloat($(this).find('input[name="rate"]').val().replace(',','.'));firstPayment=$(this).find('input[name="firstPayment"]').val();Fctype=($(this).find('input[name="paymentType"]:checked').val()=='annuitet')?1:2;var buffFirst=firstPayment;firstPayment.replace('%','');firstPayment=parseFloat('0'+firstPayment);if(firstPayment>0){if(buffFirst!=firstPayment){firstPayment=Fsumma*firstPayment/100;}} Fsumma-=firstPayment;reCalc();$('.creditform').css({display:'block'});$('.creditform').find('input#summa').val($(this).find('input[name="sum"]').val());$('.creditform').find('input#months').val($(this).find('input[name="term"]').val());$('.creditform').find('input#proc').val($(this).find('input[name="rate"]').val());$('.creditform').find('input#first').val($(this).find('input[name="firstPayment"]').val());$('.creditform').find('input#ctype').val((Fctype==1)?'Аннуитентный':'Дифференцированный');return false;});function reCalc(){$('.b-pay-plan').removeClass('hidden');var monthes=['Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь',];var summa=Fsumma;var proc=Fproc;var months=Fmonths;var sdate=new Date();var ctype=Fctype;var summaost=summa;var monthost=months;var proc12=proc/1200;var mdate=sdate;var mpay,mcredit,mproc;var spay=0,scredit=0,sproc=0;var q_pay1=[];var q_pay2=[];var q_pay,q_pay_type;var g_pay=0;if(summa&&proc&&months&&sdate&&ctype){$('.credit_type_table').html(ctype==2?'Дифференцированный платеж':'Аннуитентный платеж');for(var i=0;i0?parseFloat($('.q_pay_1_'+i).val()!=''?$('.q_pay_1_'+i).val().replace(',','.'):0):0);q_pay2.push($('.q_pay_2_'+i).length>0?parseFloat($('.q_pay_2_'+i).val()!=''?$('.q_pay_2_'+i).val().replace(',','.'):0):0);if($('.q_pay_1_'+i).is(":focus")){alert(i);}} $('.credit_table tr.buyLine').remove();if(ctype==1){g_pay=summaost*((proc12*Math.pow(1+proc12,monthost))/(Math.pow(1+proc12,monthost)-1));}else{g_pay=summaost/monthost;} for(var i=0;i0;i++){q_pay=0;if(q_pay1[i]>0){q_pay=q_pay1[i];q_pay_type=1;}else if(q_pay2[i]>0){q_pay=q_pay2[i];q_pay_type=2;} if(ctype==1){mpay=g_pay;mproc=proc12*summaost;mcredit=mpay-mproc;}else{mcredit=g_pay;mproc=proc12*summaost;mpay=mproc+mcredit;} if(mcredit>summaost){mcredit=summaost;mpay=mcredit+mproc;} if(q_pay>0){mcredit+=q_pay;mpay+=q_pay;if(q_pay_type==1){if(ctype==1){g_pay=(summaost-mcredit)*((proc12*Math.pow(1+proc12,(monthost-1)))/(Math.pow(1+proc12,(monthost-1))-1));}else{g_pay=(summaost-mcredit)/(monthost-1);}}} spay+=mpay;sproc+=mproc;scredit+=mcredit;summaost-=mcredit;monthost--;$(getTRline([i+1,monthes[mdate.getMonth()]+', '+mdate.getFullYear(),price_format(mpay),price_format(mcredit),price_format(mproc),(summaost<=0.1?0:price_format(summaost))],i)).insertBefore('.credit_table .before');mdate.setMonth(mdate.getMonth()+1);} $('.month_pay').html(price_format(mpay));$('.creditCalc input.q_pay').on('blur',reCalc);$('.credit_all_summa').html(price_format(spay));$('.credit_all_credit').html(price_format(scredit));$('.credit_all_proc').html(price_format(sproc));$('.credit_added').click();}} function getTRline(trArr,trCnt){var line='';for(var i=0;i'+trArr[i]+'';} line+='';return line;} function price_format(number){return number_format(number,2,',',' ');} function number_format(number,decimals,decPoint,thousandsSep){decimals=decimals||0;number=parseFloat(number);if(!decPoint||!thousandsSep){decPoint='.';thousandsSep=',';} var roundedNumber=Math.round(Math.abs(number)*('1e'+decimals))+'';var numbersString=decimals?roundedNumber.slice(0,decimals*-1):roundedNumber;var decimalsString=decimals?roundedNumber.slice(decimals*-1):'';var formattedNumber="";while(numbersString.length>3){formattedNumber=numbersString.slice(-3)+thousandsSep+formattedNumber;numbersString=numbersString.slice(0,-3);} formattedNumber=formattedNumber.trim();if(formattedNumber!='')formattedNumber=thousandsSep+formattedNumber;var res=(number<0?'-':'')+numbersString+formattedNumber+(decimalsString?(decPoint+decimalsString):'');return res.replace(thousandsSep+decPoint,decPoint);}});