$(document).ready(function() {
    var P = false;
    var Q = "2.0";
    var R = "1.6";
    var S = "1.5";
    var T = "1.0";
    var U = "2.0";
    var V = "2.2";
    var W = "0.0";
    var X = "0.0";
    var Y = "2.0";
    var Z = "2.5";
    var ba = "0.0";
    var bb = "0.0";
    var bc = "2.0";
    var bd = "2.2";
    var be = "0.0";
    var bf = "0.0";
    resetForm();
    function resetForm() {
        var a = "0";
        var b = "0";
        var c = "0";
        var d = "1.1";
        var e = "1";
        var f = "3";
        var g = "2.0";
        var h = "1.6";
        var i = "1";
        var j = "1";
        var k = "3";
        var l = "3";
        var m = "0";
        var n = "3";
        var o = "1.5";
        var p = "1.0";
        var q = "3";
        var r = "3";
        var s = "N/A";
        var t = "0.0";
        var u = "0.0";
        var v = "0.0";
        var w = "2.0";
        var x = "2.2";
        var y = "N/A";
        var z = "0.0";
        var A = "0.0";
        var B = "0.0";
        var C = "2.0";
        var D = "2.5";
        var E = "100";
        var F = "100";
        var G = "100";
        var H = "N/A";
        var I = "0.0";
        var J = "0.0";
        var K = "0.0";
        var L = "2.0";
        var M = "2.2";
        var N = "0";
        var O = "0";
        $('#occupied').val(a);
        $('#maleOccupants').val(b);
        $('#femaleOccupants').val(c);
        setUnits();
        $('#toiletDropdown').val(d);
        $('#flushDayMen').val(e);
        $('#flushDayWomen').val(f);
        $('#usMenFPD').html($('#flushDayMen').val());
        $('#leedMenFPD').html($('#flushDayMen').val());
        $('#usWomenFPD').html($('#flushDayWomen').val());
        $('#leedWomenFPD').html($('#flushDayWomen').val());
        $('#urinalDropdown').val(m);
        $('#flushUrinalDay').val(n);
        $('#usUrinalFPD').html($('#flushUrinalDay').val());
        $('#leedUrinalFPD').html($('#flushUrinalDay').val());
        $('#bathroomDropdown').val(s);
        $('#bathroomMinutesPerDay').val(t);
        $('#usBathroomMPD').html($('#bathroomMinutesPerDay').val());
        $('#leedBathroomMPD').html($('#bathroomMinutesPerDay').val());
        $('#showerDropdown').val(y);
        $('#showerMinutesPerDay').val(z);
        $('#usShowerMPD').html($('#showerMinutesPerDay').val());
        $('#leedShowerMPD').html($('#showerMinutesPerDay').val());
        $('#percentUsingShowers').val(E);
        $('#usPercentUsingShowers').html($('#percentUsingShowers').val());
        $('#leedPercentUsingShowers').html($('#percentUsingShowers').val());
        $('#kitchenDropdown').val(H);
        $('#kitchenMinutesPerDay').val(I);
        $('#usKitchenMPD').html($('#kitchenMinutesPerDay').val());
        $('#leedKitchenMPD').html($('#kitchenMinutesPerDay').val());
        $('#percentReductionVsAvg').html(N).val();
        $('#percentReductionVsLEED').html(O).val();
        $('#calcToilet').hide();
        $('#calcUrinal').hide();
        $('#calcBathroom').hide();
        $('#calcShower').hide();
        $('#calcKitchen').hide();
        $('#calcTotal').hide()
    };
    function addCommas(a) {
        a += '';
        x = a.split('.');
        x1 = x[0];
        x2 = x.length > 1 ? '.' + x[1] : '';
        var b = /(\d+)(\d{3})/;
        while (b.test(x1)) {
            x1 = x1.replace(b, '$1' + ',' + '$2')
        }
        return x1 + x2
    };
    function stripCommas(a) {
        var b = /,/g;
        return a.replace(b, "")
    };
    function toPercentage(a) {
        a = a * 100;
        a = parseFloat(a).toFixed(1);
        return a + '%'
    };
    function setUnits() {
        $('.units').html($('#unitDropdown').val() + ' ');
        $('.units2').html($('#unitDropdown').val().toLowerCase())
    };
    function getToilets(a) {
        var b = ["1.0", "1.1", "1.28", "1.4", "1.6"];
        var c = ["4.2", "4.85", "5.3", "6"];
        $('#toiletDropdown').empty();
        if (a == 'Gallons') {
            $.each(b,
            function() {
                $('#toiletDropdown').append('<option value="' + this + '">' + this + '</option>')
            });
            Q = "2.0";
            R = "1.6"
        } else if (a == 'Liters') {
            $.each(c,
            function() {
                $('#toiletDropdown').append('<option value="' + this + '">' + this + '</option>')
            });
            Q = "7.6";
            R = "6.1"
        }
        $('#usToiletGPF').html(Q);
        $('#leedToiletGPF').html(R)
    };
    getToilets($('#unitDropdown').val());
    $('#unitDropdown').bind('change',
    function() {
        setUnits();
        getToilets($(this).val());
        calculateToilet()
    });
    function getUrinals(a) {
        var b = ["0", "0.13", "0.5", "1"];
        var c = ["0", "0.49", "1.9", "3.8"]; 
        $('#urinalDropdown').empty();
        if (a == 'Gallons') {
            $.each(b,
            function() {
                $('#urinalDropdown').append('<option value="' + this + '">' + this + '</option>')
            });
            S = "1.5";
            T = "1.0"
        } else if (a == 'Liters') {
            $.each(c,
            function() {
                $('#urinalDropdown').append('<option value="' + this + '">' + this + '</option>')
            });
            S = "5.7";
            T = "3.8"
        }
        $('#usUrinalGPF').html(S);
        $('#leedUrinalGPF').html(T)
    };
    getUrinals($('#unitDropdown').val());
    $('#unitDropdown').bind('change',
    function() {
        setUnits();
        getUrinals($(this).val());
        calculateUrinal()
    });
    function getBathroom(b) {
        var c = {
            'N/A': 0,
            '0.5': 0.5,
            '1': 1,
            '1.5': 1.5,
            '2.2': 2.2
        };
        var d = {
            'N/A': 0,
            '1.9': 1.9,
            '3.8': 3.8,
            '5.7': 5.7,
            '8.3': 8.3
        };
        $('#bathroomDropdown').empty();
        if (b == 'Gallons') {
            $.each(c,
            function(i, a) {
                $('#bathroomDropdown').append('<option value="' + a + '">' + i + '</option>')
            });
            U = "2.0";
            V = "0.5";
            W = "0.0";
            X = "0.0"
        } else if (b == 'Liters') {
            $.each(d,
            function(i, a) {
                $('#bathroomDropdown').append('<option value="' + a + '">' + i + '</option>')
            });
            U = "7.6";
            V = "1.9"
        }
        $('#usBathroomGPM').html(U);
        $('#leedBathroomGPM').html(V);
        $('#usBathroomMPD').html(W);
        $('#leedBathroomMPD').html(X)
    };
    getBathroom($('#unitDropdown').val());
    $('#unitDropdown').bind('change',
    function() {
        setUnits();
        getBathroom($(this).val());
        calculateBathroom()
    });
    function getShower(b) {
        var c = {
            'N/A': 0,
            '1.75': 1.75,
            '2.0': 2.0,
            '2.5': 2.5
        };
        var d = {
            'N/A': 0,
            '7.5': 7.5,
            '9.5': 9.5
        };
        $('#showerDropdown').empty();
        if (b == 'Gallons') {
            $.each(c,
            function(i, a) {
                $('#showerDropdown').append('<option value="' + a + '">' + i + '</option>')
            });
            Y = "2.0";
            Z = "2.5";
            ba = "0.0";
            bb = "0.0"
        } else if (b == 'Liters') {
            $.each(d,
            function(i, a) {
                $('#showerDropdown').append('<option value="' + a + '">' + i + '</option>')
            });
            Y = "7.5";
            Z = "9.5"
        }
        $('#usShowerGPM').html(Y);
        $('#leedShowerGPM').html(Z);
        $('#usShowerMPD').html(ba);
        $('#leedShowerMPD').html(bb)
    };
    getShower($('#unitDropdown').val());
    $('#unitDropdown').bind('change',
    function() {
        setUnits();
        getShower($(this).val());
        calculateShower()
    });
    function getKitchen(b) {
        var c = {
            'N/A': 0,
            '1.5': 1.5,
            '1.59': 1.59,
            '2.2': 2.2
        };
        var d = {
            'N/A': 0,
            '5.7': 5.7,
            '8.3': 8.3
        };
        $('#kitchenDropdown').empty();
        if (b == 'Gallons') {
            $.each(c,
            function(i, a) {
                $('#kitchenDropdown').append('<option value="' + a + '">' + i + '</option>')
            });
            bc = "2.0";
            bd = "2.2";
            be = "0.0";
            bf = "0.0"
        } else if (b == 'Liters') {
            $.each(d,
            function(i, a) {
                $('#kitchenDropdown').append('<option value="' + a + '">' + i + '</option>')
            });
            bc = "7.6";
            bd = "8.3"
        }
        $('#usKitchenGPM').html(bc);
        $('#leedKitchenGPM').html(bd);
        $('#usKitchenMPD').html(be);
        $('#leedKitchenMPD').html(bf)
    };
    getKitchen($('#unitDropdown').val());
    $('#unitDropdown').bind('change',
    function() {
        setUnits();
        getKitchen($(this).val());
        calculateKitchen()
    });
    function calculateToilet() {
        var a = parseInt($('#maleOccupants').val(), 10);
        var b = parseInt($('#femaleOccupants').val(), 10);
        var c = parseFloat($('#toiletDropdown').val());
        var d = parseFloat($('#flushDayMen').val());
        var e = parseFloat($('#flushDayWomen').val());
        var f = parseFloat($('#flushDayMen').val());
        var g = parseFloat($('#flushDayMen').val());
        var h = parseFloat($('#flushDayWomen').val());
        var i = parseFloat($('#flushDayWomen').val());
        $('#usMenFPD').html($('#flushDayMen').val());
        $('#leedMenFPD').html($('#flushDayMen').val());
        $('#usWomenFPD').html($('#flushDayWomen').val());
        $('#leedWomenFPD').html($('#flushDayWomen').val());
        $('#totalToiletHome').html(addCommas(parseFloat(((a * d) + (b * e)) * c).toFixed(1)));
        $('#totalToiletUS').html(addCommas(parseFloat(((a * f) + (b * h)) * Q).toFixed(1)));
        $('#totalToiletLEED').html(addCommas(parseFloat(((a * g) + (b * i)) * R).toFixed(1)));
        if (P === true) {
            $('#calcToilet').show()
        }
    };
    function calculateUrinal() {
        var a = parseInt($('#maleOccupants').val(), 10);
        var b = parseFloat($('#urinalDropdown').val());
        var c = parseFloat($('#flushUrinalDay').val());
        var d = parseFloat($('#flushUrinalDay').val());
        var e = parseFloat($('#flushUrinalDay').val());
        $('#usUrinalFPD').html($('#flushUrinalDay').val());
        $('#leedUrinalFPD').html($('#flushUrinalDay').val());
        $('#totalUrinalHome').html(addCommas(parseFloat(a * c * b).toFixed(1)));
        $('#totalUrinalUS').html(addCommas(parseFloat(a * d * S).toFixed(1)));
        $('#totalUrinalLEED').html(addCommas(parseFloat(a * e * T).toFixed(1)));
        if (P === true) {
            $('#calcUrinal').show()
        }
    };
    function calculateBathroom() {
        var a = parseInt($('#maleOccupants').val(), 10);
        var b = parseInt($('#femaleOccupants').val(), 10);
        var c = parseInt(a + b, 10);
        var d = parseFloat($('#bathroomDropdown').val());
        var e = parseFloat($('#bathroomMinutesPerDay').val());
        var f = parseFloat($('#bathroomMinutesPerDay').val());
        var g = parseFloat($('#bathroomMinutesPerDay').val());
        $('#usBathroomMPD').html($('#bathroomMinutesPerDay').val());
        $('#leedBathroomMPD').html($('#bathroomMinutesPerDay').val());
        $('#totalBathroomHome').html(addCommas(parseFloat(c * e * d).toFixed(1)));
        $('#totalBathroomUS').html(addCommas(parseFloat(c * f * U).toFixed(1)));
        $('#totalBathroomLEED').html(addCommas(parseFloat(c * g * V).toFixed(1)));
        if (P === true) {
            $('#calcBathroom').show()
        }
    };
    function calculateShower() {
        var a = parseInt($('#maleOccupants').val(), 10);
        var b = parseInt($('#femaleOccupants').val(), 10);
        var c = parseInt(a + b, 10);
        var d = parseFloat($('#showerDropdown').val());
        var e = parseFloat($('#showerMinutesPerDay').val());
        var f = parseFloat($('#showerMinutesPerDay').val());
        var g = parseFloat($('#showerMinutesPerDay').val());
        var h = parseFloat($('#percentUsingShowers').val());
        $('#usShowerMPD').html($('#showerMinutesPerDay').val());
        $('#leedShowerMPD').html($('#showerMinutesPerDay').val());
        $('#usPercentUsingShowers').html($('#percentUsingShowers').val());
        $('#leedPercentUsingShowers').html($('#percentUsingShowers').val());
        $('#totalShowerHome').html(addCommas(parseFloat(c * e * d * h * 0.01).toFixed(1)));
        $('#totalShowerUS').html(addCommas(parseFloat(c * f * Y * h * 0.01).toFixed(1)));
        $('#totalShowerLEED').html(addCommas(parseFloat(c * g * Z * h * 0.01).toFixed(1)));
        if (P === true) {
            $('#actualShowerFlow').show();
            $('#calcShower').show()
        }
    };
    function calculateKitchen() {
        var a = parseInt($('#maleOccupants').val(), 10);
        var b = parseInt($('#femaleOccupants').val(), 10);
        var c = parseInt(a + b, 10);
        var d = parseFloat($('#kitchenDropdown').val());
        var e = parseFloat($('#kitchenMinutesPerDay').val());
        var f = parseFloat($('#kitchenMinutesPerDay').val());
        var g = parseFloat($('#kitchenMinutesPerDay').val());
        $('#usKitchenMPD').html($('#kitchenMinutesPerDay').val());
        $('#leedKitchenMPD').html($('#kitchenMinutesPerDay').val());
        $('#totalKitchenHome').html(addCommas(parseFloat(c * d * e).toFixed(1)));
        $('#totalKitchenUS').html(addCommas(parseFloat(c * bc * f).toFixed(1)));
        $('#totalKitchenLEED').html(addCommas(parseFloat(c * bd * g).toFixed(1)));
        if (P === true) {
            $('#actualKitchenFlow').show();
            $('#calcKitchen').show()
        }
    };
    function calculateTotal() {
        var a = parseInt($('#occupied').val(), 10);
        var b = parseInt($('#maleOccupants').val(), 10);
        var c = parseInt($('#femaleOccupants').val(), 10);
        var d = b + c;
        var e = parseFloat(stripCommas($('#totalToiletHome').text()));
        var f = parseFloat(stripCommas($('#totalToiletUS').text()));
        var g = parseFloat(stripCommas($('#totalToiletLEED').text()));
        var h = parseFloat(stripCommas($('#totalUrinalHome').text()));
        var i = parseFloat(stripCommas($('#totalUrinalUS').text()));
        var j = parseFloat(stripCommas($('#totalUrinalLEED').text()));
        var k = parseFloat(stripCommas($('#totalBathroomHome').text()));
        var l = parseFloat(stripCommas($('#totalBathroomUS').text()));
        var m = parseFloat(stripCommas($('#totalBathroomLEED').text()));
        var n = parseFloat(stripCommas($('#totalShowerHome').text()));
        var o = parseFloat(stripCommas($('#totalShowerUS').text()));
        var p = parseFloat(stripCommas($('#totalShowerLEED').text()));
        var q = parseFloat(stripCommas($('#totalKitchenHome').text()));
        var r = parseFloat(stripCommas($('#totalKitchenUS').text()));
        var s = parseFloat(stripCommas($('#totalKitchenLEED').text()));
        var t = e + h + k + n + q;
        var u = f + i + l + o + r;
        var v = g + j + m + p + s;
        var w = (t / d);
        var x = (u / d);
        var y = (v / d);
        var z = ((u - t) / u);
        var A = ((v - t) / v);
        $('#totalPerPerson').html(addCommas(parseFloat(w).toFixed(1)));
        $('#totalPerPersonUS').html(addCommas(parseFloat(x).toFixed(1)));
        $('#totalPerPersonLEED').html(addCommas(parseFloat(y).toFixed(1)));
        $('#totalPerDay').html(addCommas(parseFloat(t).toFixed(1)));
        $('#totalPerDayUS').html(addCommas(parseFloat(u).toFixed(1)));
        $('#totalPerDayLEED').html(addCommas(parseFloat(v).toFixed(1)));
        $('#totalPerMonth').html(addCommas(parseFloat(t * 30.417).toFixed(1)));
        $('#totalPerMonthUS').html(addCommas(parseFloat(u * 30.417).toFixed(1)));
        $('#totalPerMonthLEED').html(addCommas(parseFloat(v * 30.417).toFixed(1)));
        $('#totalPerYear').html(addCommas(parseFloat(t * a).toFixed(1)));
        $('#totalPerYearUS').html(addCommas(parseFloat(u * a).toFixed(1)));
        $('#totalPerYearLEED').html(addCommas(parseFloat(v * a).toFixed(1)));
        if (!isNaN(z)) {
            $('#percentReductionVsAvg').html(toPercentage(z))
        }
        if (!isNaN(A)) {
            $('#percentReductionVsLEED').html(toPercentage(A))
        }
        if (P === true) {
            $('#calcTotal').show()
        }
    };
    $('#calculate').click(function() {
        P = true;
        calculateToilet();
        calculateUrinal();
        calculateBathroom();
        calculateShower();
        calculateKitchen();
        calculateTotal();
				$('.section[drawerdown$=0]').each(function(){
					$(this).css('marginTop',$(this).height() * -1)
				})
        $("#leedWomenFPD").removeClass("last");
        $("#leedUrinalFPD").removeClass("last");
        $("#leedBathroomMPD").removeClass("last");
        $("#leedPercentUsingShowers").removeClass("last");
        $("#leedKitchenMPD").removeClass("last");
        return false
    });
    $('#clear').bind('click',
    function() {
        P = false;
        resetForm();
        $('#calcToilet').hide();
        $('#calcUrinal').hide();
        $('#calcBathroom').hide();
        $('#calcShower').hide();
        $('#calcKitchen').hide();
        $('#calcTotal').hide();
        $("#leedWomenFPD").addClass("last");
        $("#leedUrinalFPD").addClass("last");
        $("#leedBathroomMPD").addClass("last");
        $("#leedPercentUsingShowers").addClass("last");
        $("#leedKitchenMPD").addClass("last");
        return false
    });
    $('input:text').bind('keyup',
    function() {
        calculateToilet();
        calculateUrinal();
        calculateBathroom();
        calculateShower();
        calculateKitchen();
        calculateTotal()
    });
    $('select').bind('change',
    function() {
        calculateToilet();
        calculateUrinal();
        calculateBathroom();
        calculateShower();
        calculateKitchen();
        calculateTotal()
    })
});