PageSourceSearch

https://www.jimbaier.com/wp-content/plugins/pm-motors-plugin/modul…/js/pick-payment-form.js?ver=7.0.7

js jimbaier.com collected 2026-10-08 20:34:25 UTC 4,849 bytes, 148 lines download raw bytes

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.