function initDieselGasCompCalc() {
    var milesPerYear = document.getElementById("milesPerYear");
    var priceDiesel = document.getElementById("priceDiesel");
    var priceGas = document.getElementById("priceGas");
    var mpgDiesel = document.getElementById("mpgDiesel");
    var mpgGas = document.getElementById("mpgGas");
    var milesGalonDiesel = document.getElementById("milesGalonDiesel");
    var milesGalonGas = document.getElementById("milesGalonGas");
    if (milesPerYear) {
        milesPerYear.value = MILES_PER_YEAR;
    }
    if (priceDiesel) {
        priceDiesel.value = PRICE_DIESEL;
    }
    if (priceGas) {
        priceGas.value = PRICE_GAS;
    }
    if (mpgDiesel) {
        mpgDiesel.value = MILES_PERGALON_DIESEL;
    }
    if (mpgGas) {
        mpgGas.value = MILES_PERGALON_GAS;
    }
    if (milesGalonDiesel) {
        milesGalonDiesel.innerHTML = MILES_PERGALON_DIESEL;
    }
    if (milesGalonGas) {
        milesGalonGas.innerHTML = MILES_PERGALON_GAS;
    }
    calculateDieselGas();
}

function checkOnlyNumbersWithPoint(e, object) {
    var validKey = keyChecker(e, /[\d.]/);
    if (validKey && e.keyCode == 46) {
        validKey = (object.value.indexOf('.') < 0);
    }
    return validKey;
}

function processDeiselGasLalc(e, object) {
    object.value = object.value.replace(/[^\d\.]/, '');
    calculateDieselGas();
}

function calculateDieselGas() {
    var milesPerYear = document.getElementById("milesPerYear");
    var priceDiesel = document.getElementById("priceDiesel");
    var priceGas = document.getElementById("priceGas");
    var mpgDiesel = document.getElementById("mpgDiesel");
    var mpgGas = document.getElementById("mpgGas");
    var annualDieselCost = document.getElementById("annualDieselCost");
    var annualGasCost = document.getElementById("annualGasCost");
    var burnDiesel = document.getElementById("burnDiesel");
    var burnGas = document.getElementById("burnGas");
    var saveCost = document.getElementById("savingCost");
    var saveValue = document.getElementById("saveValue");
    var saveMonthly = document.getElementById("savMonthly");
    var saveYearly = document.getElementById("savYearly");
    var mileage = document.getElementById("mileage");
    var mileage2 = document.getElementById("mileage2");
    var mpgDiesel2 = document.getElementById("mpgDiesel2");
    var mpgGas2 = document.getElementById("mpgGas2");

    if (milesPerYear && priceDiesel && priceGas) {
        var _milesPerYear = !isBlank(milesPerYear.value) ? parseFloat(milesPerYear.value).toFixed(2) : 0;
        var _priceDiesel = !isBlank(priceDiesel.value) ? parseFloat(priceDiesel.value).toFixed(2) : 0;
        var _priceGas = !isBlank(priceGas.value) ? parseFloat(priceGas.value).toFixed(2) : 0;
        var _mpgDiesel = !isBlank(mpgDiesel.value) ? parseFloat(mpgDiesel.value).toFixed(2) : 0;
        var _mpgGas = !isBlank(mpgGas.value) ? parseFloat(mpgGas.value).toFixed(2) : 0;
        var anGas = _milesPerYear / _mpgGas * _priceGas;
        if (annualGasCost) {
            annualGasCost.innerHTML = '$' + formatCurrency(anGas.toFixed(2));
        }
        var anDiesel = _milesPerYear / _mpgDiesel * _priceDiesel;
        if (annualDieselCost) {
            annualDieselCost.innerHTML = '$' + formatCurrency(anDiesel.toFixed(2));
        }
        var burningDiesel = _milesPerYear / _mpgDiesel;
        if (burnDiesel) {
            burnDiesel.innerHTML = '$' + formatCurrency(burningDiesel.toFixed(2));
        }
        var burningGas = _milesPerYear / _mpgGas;
        if (burnGas) {
            burnGas.innerHTML = '$' + formatCurrency(burningGas.toFixed(2));
        }
        var savingCost = anGas - anDiesel;
        if (saveCost) {
            saveCost.innerHTML = '$' + formatCurrency(savingCost.toFixed(2));
        }
        if (saveYearly) {
            saveYearly.innerHTML = formatCurrency(savingCost.toFixed(2));
        }
        var savingMonth = savingCost / 12;
        if (saveValue) {
            saveValue.innerHTML = '$' + formatCurrency(savingMonth.toFixed(2));
            saveMonthly.innerHTML = formatCurrency(savingMonth.toFixed(2));
        }

        if (mileage) {
            mileage.innerHTML = parseInt(_milesPerYear);
        }
        if (mileage2) {
            mileage2.innerHTML = parseInt(_milesPerYear);
        }
        if (mpgDiesel2) {
            mpgDiesel2.innerHTML = parseInt(_mpgDiesel);
        }
        if (mpgGas2) {
            mpgGas2.innerHTML = parseInt(_mpgGas);
        }
    }
}
