1$(document).ready(function(){ 2 let __calcFormIsSubmitted = false 3 4 $("#calculator_cost").on('input', calculatorPrepayment); 5 $("#calculator_prepayment_slider").on('change', calcPrepaymentCostFromPrepaymentPercent.bind($("#calculator_prepayment_slider"))) 6 $("#calculator_prepayment").on('change', calcPrepaymentPercentFromPrepaymentCost.bind($("#calculator_prepayment"))) 7 $("#select__type_property").on("change", formModify) 8 $("#select__type_property").on("change", setOrderForm) 9 //resubmit after change 10 $("#select__type_property").on("change", submitCalcForm) 11 $("#calculator_prepayment_slider").on('change', submitCalcForm) 12 $("#calculate-form").on('change', submitCalcForm) 13 //resubmit after change - end 14 15 $("input[name='hexagon']").on("input", ()=>{ 16 let id = $(".select__hexagon:checked").data("id") 17 $("#select__type_property").val(id) 18 $("#select__type_property").change() 19 }) 20 21 $("#calculator_cost").on('input', setOrderForm) 22 $("#calculator_cost_slider").on('change', setOrderForm) 23 //$("input[name='type_property']").on("change", setOrderForm) 24 //$("select.js-type").trigger("change") 25 26 function submitCalcForm(){ 27 if (__calcFormIsSubmitted) setTimeout(()=>{$("#calculate-form").submit()},200) 28 } 29 30 function setOrderForm(){ 31 var cost = Math.round($("#calculator_cost").val().replace(/[^0-9]/g,'')) 32 $("input.js-cost").val(cost) 33 var type = $(".type__option:selected").data('id') 34 var type_name = $(".type__option:selected").data('name') 35 //console.log(type_name) 36 $("select.js-type").val(type) 37 $("input.js-type-text").val(type_name) 38 } 39 40 function formModify(event) { 41 42 var selecteddProperty = $(".type__option:selected") 43 var insurance = Math.round( selecteddProperty.data('insurance')) 44 var terms = Math.round( selecteddProperty.data('terms')) 45 46 var currentProcent = Math.round(selecteddProperty.data('procent')) 47 var minProcent = Math.round(selecteddProperty.data('min')) 48 49 $("#calculator_prepayment_slider").attr('min', minProcent) 50 setTimeout(()=>{ 51 $("#calculator_prepayment_slider").val(currentProcent) 52 }, 100) 53 54 if (terms) { 55 $(".radio4, .radio5, .radio6").hide() 56 $(".radio2").show() 57 if ($("#calculate-form")[0].time[3].checked || $("#calculate-form")[0].time[4].checked || $("#calculate-form")[0].time[5].checked) $("#calculate-form")[0].time[0].checked = true; 58 } else { 59 $(".radio2").hide() 60 $(".radio4, .radio5, .radio6").show() 61 if ($("#calculate-form")[0].time[1].checked) $("#calculate-form")[0].time[3].checked = true; 62 } 63 if (insurance > 0) { 64 $(".row--insurance").show() 65 $(".js-insurance").val(insurance) 66 } else { 67 $(".row--insurance").hide() 68 $(".js-insurance").val(0) 69 } 70 } 71 72 //Ðàñ÷åò ìèíèìàëüíîãî àâàíñà âçàâèñèìîñòè îò ñóììû 73 function calculatorPrepayment (event) 74 { 75 //console.log("#calculatorPrepayment") 76 var procent = $("#calculator_prepayment_slider").val() 77 78 var cost = Math.round( $("#calculator_cost").val().replace(/ /g,'') ); 79 var prepayment = Math.round( procent * ( cost/100 )); 80 81 // if( event.type == 'change' ){ 82 // $("#calculator_prepayment_procent").html(procent + '%'); 83 // } 84 85 if( prepayment == undefined || isNaN(prepayment) ) 86 return true; 87 88 //prepaymentFormated = new Intl.NumberFormat({ style: 'currency'}).format(prepayment); 89 90 $("#calculator_prepayment").val(prepayment); 91 //$("#calculator_prepayment_slider").val(prepayment); 92 //$("#calculator_prepayment_slider").attr('max', parseInt(cost * 0.49)) 93 } 94 95 //Ïåðåñ÷åò ñóììû àâàíñà â çàâèñèìîñòè îò ââåäåííîãî ïðîöåíòà 96 //$("#calculator_prepayment_procent").focusout(function(){ 97 function calcPrepaymentCostFromPrepaymentPercent() { 98 //console.log("#calcPrepaymentCostFromPrepaymentPercent") 99 var procent = Math.round($(this).val()); 100 var cost = Math.round( $("#calculator_cost").val().replace(/[^0-9]/g,'') ); 101 var prepayment = Math.round(procent * ( cost/100 )); 102 var minProcent = parseInt($(".type__option:selected").data("min")); 103 var maxProcent = 49;
103 // Ìàêñèìàëüíûé ïðîöåíò àâàíñà 104 var maxCost = cost/100 * maxProcent; 105 var minCost = cost/100 * minProcent; 106 107 if( prepayment == undefined || isNaN(prepayment) || procent == undefined || isNaN(procent) || procent < minProcent ){ 108 $(this).val(minProcent) 109 $("#calculator_prepayment").val(minCost) // new Intl.NumberFormat({ style: 'currency'}).format(minCost) ); 110 return false; 111 } 112 113 if( prepayment == undefined || isNaN(prepayment) || procent == undefined || isNaN(procent) || procent > maxProcent ){ 114 $(this).val(maxProcent); 115 $("#calculator_prepayment").val(maxCost) // new Intl.NumberFormat({ style: 'currency'}).format(maxCost) ); 116 return false; 117 } 118 119 //prepaymentFormated = new Intl.NumberFormat({ style: 'currency'}).format(prepayment); 120 121 $("#calculator_prepayment").val(prepayment); 122 $("#calculator_prepayment_procent").html(procent + '%'); 123 }; 124 125 //Ïåðåñ÷åò ïðîöåíòà àâàíñà â çàâèñèìîñòè îò ñóììû àâàíñà êîòîðóþ ââåë ïîëüçîâàòåëü 126 $("#calculator_prepayment").focusout(function(){}); 127 128 function calcPrepaymentPercentFromPrepaymentCost(){ 129 //console.log("#calcPrepaymentPercentFromPrepaymentCost") 130 var cost = Math.floor( $("#calculator_cost").val().replace(/[^0-9]/g,'')); 131 var prepayment = Math.floor($(this).val().replace(/[^0-9]/g,'')); 132 133 var procent = Math.floor( prepayment * 100 / cost); 134 var minProcent = parseInt($(".type__option:selected").data("min")); 135 var maxProcent = 49; // Ìàêñèìàëüíûé ïðîöåíò àâàíñà 136 var maxCost = cost/100 * maxProcent; 137 var minCost = cost/100 * minProcent; 138 139 //console.log(procent) 140 141 if( procent == undefined || isNaN(procent) || procent < minProcent ){ 142 var newPrice = minCost; //new Intl.NumberFormat({ style: 'currency'}).format(minCost); 143 $(this).val(newPrice); 144 $("#calculator_prepayment_procent").val(minProcent); 145 $("#calculator_prepayment_slider").val(minProcent); 146 return false; 147 } 148 149 if( procent == undefined || isNaN(procent) || procent > maxProcent ){ 150 var newPrice = maxCost; //new Intl.NumberFormat({ style: 'currency'}).format(maxCost) 151 $(this).val(newPrice); 152 //$("#calculator_prepayment_procent").val(maxProcent); 153 $("#calculator_prepayment_slider").val(maxProcent); 154 return false; 155 } 156 157 $("#calculator_prepayment_slider").val(procent) 158 $("#calculator_prepayment_procent").html(procent + '%'); 159 }; 160 //Ñàáìèò ôîðìû êàëüêóëÿòîðà 161 $("#calculate-form").submit(function(event){ 162 event.preventDefault(); 163 var data = $(this).serialize(); 164 var url = $(this).attr('action'); 165 var _this = this; 166 if( window.trans.form.checkForm($(this) ) ) 167 { 168 $.ajax({ 169 url: url, 170 data: data, 171 method: "post", 172 cache: false 173 }).done( function(data){ 174 $("#calculation-result").html(data); 175 $(".calculator__warning").show(); 176 }); 177 } 178 __calcFormIsSubmitted = true 179 console.log("__calcFormIsSubmitted = ", __calcFormIsSubmitted) 180 }); 181 //Ðàñïå÷àòàòü ðàñ÷åò 182 $("body").on("click", ".calculation__print, .calculation__download", function(event){ 183 var data = $("#calculate-form").serialize(); 184 var link = $(this).attr("href"); 185 var url = link + '?'+ data; 186 187 $(this).attr("href", url); 188 }); 189 190 formModify() 191 setOrderForm() 192 193});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.