1var dpInput = document.getElementById("down-payment"); 2var dpOutput = document.getElementById("downPaymentField"); 3var termInput = document.getElementById("term-field"); 4var termOutput = document.getElementById("termField"); 5var downpaymentVal = document.getElementById("downpaymentVal"); 6var termsVal = document.getElementById("termsVal"); 7 8//die if form does not exist 9if (dpInput !== null) { 10 dpInput.addEventListener("input", updateDpText); 11 termInput.addEventListener("input", updateTermText); 12 updateDpText(); 13 updateTermText(); 14 15 $('#vehicle-listing-container').on('click', '[data-target="#modalPickAPayment"]', function() { 16 var pickpPrice = 0; 17 var pickpAdm = 0; 18 var pickpLabel = ''; 19 var pickpImage = ''; 20 var pickpVin = $(this).attr('data-vin'); 21 var pickv = VLP.getVehicle(pickpVin); 22 pickpPrice = pickv.pricing.data.final; 23 pickpAdm = pickv.pricing.data.custom; 24 pickpPrice = pickpPrice + pickpAdm; 25 pickpLabel = pickv.label; 26 pickpImage = pickv.media.image.thumb.src; 27 $('#loanPrice').val(pickpPrice); 28 $("#pick-payment-vin").attr('value', pickpVin); 29 30 $("#pick-payment-year").attr('value', pickv.year); 31 $("#pick-payment-make").attr('value', pickv.make); 32 $("#pick-payment-model").attr('value', pickv.model); 33 $("#pick-payment-trim").attr('value', pickv.trim); 34 $("#pick-payment-vehicletype").attr('value', pickv.category); 35 36 $("#lot_token_field").attr('value', pickv.lotToken); 37 $('.vinfo-imgcol img').attr('src',pickpImage); 38 $('.vinfo-textcol .vinfo-vname').text(pickpLabel); 39 $('.vinfo-textcol .vinfo-vvin span').text(pickpVin); 40 setPMT(); 41 }); 42 43 $('.vdp.vdpview #vehicle-display [data-target="#modalPickAPayment"]').click(function() { 44 var pickpPrice = 0; 45 var pickpAdm = 0; 46 var pickpLabel = ''; 47 var pickpImage = ''; 48 var pickpVin = vin; 49 var pickv = VDP.getVehicle(); 50 pickpPrice = pickv.pricing.data.final; 51 pickpAdm = pickv.pricing.data.custom; 52 pickpPrice = pickpPrice + pickpAdm; 53 pickpLabel = pickv.label; 54 pickpImage = pickv.media.image[0].src; 55 $('#loanPrice').val(pickpPrice); 56 $("#pick-payment-vin").attr('value', vin); 57 58 $("#pick-payment-year").attr('value', pickv.year); 59 $("#pick-payment-make").attr('value', pickv.make); 60 $("#pick-payment-model").attr('value', pickv.model); 61 $("#pick-payment-trim").attr('value', pickv.trim); 62 $("#pick-payment-vehicletype").attr('value', pickv.category); 63 64 $("#lot_token_field").attr('value', pickv.lotToken); 65 $('.vinfo-imgcol img').attr('src',pickpImage); 66 $('.vinfo-textcol .vinfo-vname').text(pickpLabel); 67 $('.vinfo-textcol .vinfo-vvin span').text(pickpVin); 68 setPMT(); 69 }); 70 71} 72 73 74function updateDpText() { 75 dpOutput.textContent = dpInput.value; 76 downpaymentVal.textContent = dpInput.value; 77} 78 79function updateTermText() { 80 termOutput.textContent = termInput.value; 81 termsVal.textContent = termInput.value; 82} 83 84function goToStep1(){ 85 $('.pickformtabs [href="#step-1"]').tab('show'); 86 setPMT(); 87} 88function goToStep2(){ 89 $('.pickformtabs [href="#step-2"]').tab('show'); 90 setPMT(); 91} 92function goToStep3(){ 93 $('.pickformtabs [href="#step-3"]').tab('show'); 94 setPMT(); 95} 96 97function calPMT(apr, term, loan, downpayment) { 98 loan = loan - downpayment; 99 apr = apr / 1200; 100 var amount = apr * -loan * Math.pow((1 + apr), term) / (1 - Math.pow((1 + apr), term)); 101 return Math.round(amount); 102} 103 104function setPMT() { 105 var downPaymentField = $('#downPaymentField').val(); 106 var termField = $('#termField').val(); 107 var loanPrice = $('#loanPrice').val(); 108 $('#termsVal').text(termField); 109 $('#downpaymentVal').text(downPaymentField); 110 var monthlyVal = calPMT(4, termField, loanPrice, downPaymentField); 111 $('#monthlyVal').text(monthlyVal); 112 $('#step2permonth-output').text(monthlyVal); 113 $('#monthlyTerm').val(termField); 114 $('#downpaymentAmount').val(downPaymentField); 115 $('#monthlyPayment').val(monthlyVal); 116 if ($('#step2permonth-output').text() < 1) { 117 $('.step2permonth-container').hide(); 118 $('.step3info.monthly').hide(); 119 } else { 120 $('.step2permonth-container').show(); 121 $('.step3info.monthly').show(); 122 } 123} 124 125 126$("#down-payment").on("input", function() { 127 setPMT(); 128}); 129 130$("#term-field").on("input", function() { 131 setPMT(); 132}); 133 134$(document).ready(function(){ 135 setPMT(); 136 137 //on submit add lead id 138 $('#pick-a-payment-form').submit( function() { 139 let leadId = PmGforms.generateLeadId(); 140 PmGforms.addHiddenField($(this),'leadId', leadId); 141 let formTitle = $(this).find("#form_title").val(); 142 let vin = $(this).find("#pick-payment-vin").val(); 143 let displayType = 'modal'; 144 145 PmGforms.pmGFormSubmit(this, leadId, formTitle, displayType, vin); 146 return false;
147 }); 148});
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.