<script>
jQuery.noConflict();
jQuery(document).ready(function($) {
document.addEventListener("DOMContentLoaded", () => {
function formatNumber(num) {
return num.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, "$&,");
}
// Input validation
document.querySelectorAll(".numbersOnly").forEach((input) => {
input.addEventListener("input", () => {
input.value = input.value.replace(/[^0-9.]/g, "").replace(/(\..*)\./g, "$1");
});
});
// Calculation logic
document.getElementById("calculateBtn").addEventListener("click", () => {
const currentGrossPay = parseFloat(document.getElementById("currentGrossPay").value) || 0;
const desiredGrossPay = parseFloat(document.getElementById("desiredGrossPay").value) || 0;
const currentPercentage = parseFloat(document.getElementById("currentPercentage").value) || 0;
const occCost = parseFloat(document.getElementById("occCost").value) || 0;
const equipmentRental = parseFloat(document.getElementById("equipmentRental").value) || 0;
const bobtailInsurance = parseFloat(document.getElementById("bobtailInsurance").value) || 0;
// Current calculations
const currentOperatorPay = (currentGrossPay * currentPercentage) / 100;
const currentTotalDeductions = occCost + equipmentRental + bobtailInsurance;
const currentWeeklyTakeHome = currentOperatorPay - currentTotalDeductions;
const currentYearlyTakeHome = currentWeeklyTakeHome * 52;
// JRC comparisons
const jrcCurrentDeductions = currentTotalDeductions; // Assuming same deductions for now
const jrcCurrentWeeklyTakeHome = currentOperatorPay - jrcCurrentDeductions;
const jrcCurrentDifference = currentWeeklyTakeHome - jrcCurrentWeeklyTakeHome;
const jrcCurrentYearlyTakeHome = jrcCurrentWeeklyTakeHome * 52;
// Desired calculations
const desiredOperatorPay = (desiredGrossPay * currentPercentage) / 100;
const desiredTotalDeductions = occCost + equipmentRental + bobtailInsurance;
const desiredWeeklyTakeHome = desiredOperatorPay - desiredTotalDeductions;
const desiredYearlyTakeHome = desiredWeeklyTakeHome * 52;
// JRC comparisons for desired
const jrcDesiredDeductions = desiredTotalDeductions; // Assuming same deductions
const jrcDesiredWeeklyTakeHome = desiredOperatorPay - jrcDesiredDeductions;
const jrcDesiredDifference = desiredWeeklyTakeHome - jrcDesiredWeeklyTakeHome;
const jrcDesiredYearlyTakeHome = jrcDesiredWeeklyTakeHome * 52;
// Update results
document.getElementById("currentGrossWeekly").textContent = formatNumber(currentGrossPay);
document.getElementById("currentTotalDeductions").textContent = formatNumber(currentTotalDeductions);
document.getElementById("currentWeeklyTakeHome").textContent = formatNumber(currentWeeklyTakeHome);
document.getElementById("currentYearlyTakeHome").textContent = formatNumber(currentYearlyTakeHome);
document.getElementById("jrcCurrentDeductions").textContent = formatNumber(jrcCurrentDeductions);
document.getElementById("jrcCurrentWeeklyTakeHome").textContent = formatNumber(jrcCurrentWeeklyTakeHome);
document.getElementById("jrcCurrentDifference").textContent = formatNumber(jrcCurrentDifference);
document.getElementById("jrcCurrentYearlyTakeHome").textContent = formatNumber(jrcCurrentYearlyTakeHome);
document.getElementById("desiredGrossWeekly").textContent = formatNumber(desiredGrossPay);
document.getElementById("desiredTotalDeductions").textContent = formatNumber(desiredTotalDeductions);
document.getElementById("desiredWeeklyTakeHome").textContent = formatNumber(desiredWeeklyTakeHome);
document.getElementById("desiredYearlyTakeHome").textContent = formatNumber(desiredYearlyTakeHome);
document.getElementById("jrcDesiredDeductions").textContent = formatNumber(jrcDesiredDeductions);
document.getElementById("jrcDesiredWeeklyTakeHome").textContent = formatNumber(jrcDesiredWeeklyTakeHome);
document.getElementById("jrcDesiredDifference").textContent = formatNumber(jrcDesiredDifference);
document.getElementById("jrcDesiredYearlyTakeHome").textContent = formatNumber(jrcDesiredYearlyTakeHome);
});
});
});
</script>