Welcome to WordPress. This is your first post. Edit or delete it, then start writing!
<?php
/**
* Plugin Name: Lease vs Buy Calculator
* Description: A simple lease vs buy calculator.
* Version: 1.0
* Author: Your Name
*/
function lvb_calculator_shortcode() {
ob_start();
?>
<form id="lease-vs-buy-form">
<h2>Lease vs Buy Calculator</h2>
<h3>Lease Option</h3>
<label for="lease-monthly-payment">Monthly Lease Payment ($):</label>
<input type="number" id="lease-monthly-payment" required><br>
<label for="lease-term">Lease Term (months):</label>
<input type="number" id="lease-term" required><br>
<label for="lease-down-payment">Down Payment ($):</label>
<input type="number" id="lease-down-payment" required><br>
<label for="lease-residual-value">Residual Value ($):</label>
<input type="number" id="lease-residual-value" required><br>
<h3>Buy Option</h3>
<label for="buy-purchase-price">Purchase Price ($):</label>
<input type="number" id="buy-purchase-price" required><br>
<label for="buy-loan-term">Loan Term (months):</label>
<input type="number" id="buy-loan-term" required><br>
<label for="buy-loan-rate">Loan Interest Rate (%):</label>
<input type="number" id="buy-loan-rate" required><br>
<label for="buy-down-payment">Down Payment ($):</label>
<input type="number" id="buy-down-payment" required><br>
<label for="buy-resale-value">Resale Value ($):</label>
<input type="number" id="buy-resale-value" required><br>
<button type="submit">Calculate</button>
</form>
<div id="results">
<h3>Results:</h3>
<p id="lease-total-cost">Total Lease Cost: $0</p>
<p id="buy-total-cost">Total Buy Cost: $0</p>
</div>
<script>
document.getElementById('lease-vs-buy-form').addEventListener('submit', function(event) {
event.preventDefault();
// Lease Calculations
var leaseMonthlyPayment = parseFloat(document.getElementById('lease-monthly-payment').value);
var leaseTerm = parseInt(document.getElementById('lease-term').value);
var leaseDownPayment = parseFloat(document.getElementById('lease-down-payment').value);
var leaseResidualValue = parseFloat(document.getElementById('lease-residual-value').value);
var leaseTotalPayments = leaseMonthlyPayment * leaseTerm;
var leaseTotalCost = leaseTotalPayments + leaseDownPayment;
var leaseFinalCost = leaseTotalCost + leaseResidualValue;
// Buy Calculations
var buyPurchasePrice = parseFloat(document.getElementById('buy-purchase-price').value);
var buyLoanTerm = parseInt(document.getElementById('buy-loan-term').value);
var buyLoanRate = parseFloat(document.getElementById('buy-loan-rate').value) / 100 / 12; // monthly rate
var buyDownPayment = parseFloat(document.getElementById('buy-down-payment').value);
var buyResaleValue = parseFloat(document.getElementById('buy-resale-value').value);
var buyLoanAmount = buyPurchasePrice - buyDownPayment;
var buyMonthlyPayment = (buyLoanAmount * buyLoanRate) / (1 - Math.pow(1 + buyLoanRate, -buyLoanTerm));
var buyTotalCost = buyMonthlyPayment * buyLoanTerm + buyDownPayment;
var buyFinalCost = buyTotalCost - buyResaleValue;
// Display Results
document.getElementById('lease-total-cost').innerText = "Total Lease Cost: $" + leaseFinalCost.toFixed(2);
document.getElementById('buy-total-cost').innerText = "Total Buy Cost: $" + buyFinalCost.toFixed(2);
});
</script>
<?php
return ob_get_clean();
}
// Register the shortcode to use in pages or posts
add_shortcode('lease_vs_buy_calculator', 'lvb_calculator_shortcode');
?>
Leave a Reply