﻿/*
* All javascript / jQuery code is copyrighted by voedingswaardetabel.nl
* 
* Copyright 2011, Seoptics
*
* @author R. van der Voort  
*/

$(document).ready(function () {
    $(function () { // voedingswaardetabel.nl
        $("#sliderbmiweight").slider({
            range: "min", value: 75.0, min: 40.0, max: 180.0, step: 0.1,
            slide: function (event, ui) {
                $("#bmiweight").html(ui.value.toFixed(1) + " kilogram");
                setBmiValues();
            },
            change: function (event, ui) {
                $("#bmiweight").html(ui.value.toFixed(1) + " kilogram");
                setBmiValues();
            }
        });
        $("#bmiweight").html($("#sliderbmiweight").slider("value").toFixed(1) + " kilogram");
    });
    $(function () { // voedingswaardetabel.nl
        $("#sliderbmilenght").slider({
            range: "min", value: 1.75, min: 0.70, max: 2.10, step: 0.01,
            slide: function (event, ui) {
                $("#bmilenght").html(ui.value.toFixed(2) + " meter");
                setBmiValues();
            },
            change: function (event, ui) {
                $("#bmilenght").html(ui.value.toFixed(2) + " meter");
                setBmiValues();
            }
        });
        $("#bmilenght").html($("#sliderbmilenght").slider("value").toFixed(2) + " meter");
    });
    $(function () { // voedingswaardetabel.nl
        $("#sliderbmimaxminweight").slider({
            range: true, values: [75, 90], min: 40.0, max: 100.0, disabled: true,
            slide: function (event, ui) {
                $("#bmimaxminweight").html(ui.values[0].toFixed(1) + " kilogram");
            }
        });
        $("#bmimaxminweight").html($("#sliderbmimaxminweight").slider("values", 0).toFixed(1) + " tot " + $("#sliderbmimaxminweight").slider("values", 1).toFixed(1) + " kilogram");
    });

    $('input[name=mv]:radio').click(function () {
        setBmiValues();
    });

    $(function () { // voedingswaardetabel.nl
        var bmi = calcBMI();
        $("#sliderbmiresult").slider({
            range: "min", value: bmi, min: 15.0, max: 40.0, step: 0.1, disabled: true,
            slide: function (event, ui) { $("#bmiresult").html(bmi); }
        });
    });
    function calcBMI() { // voedingswaardetabel.nl
        var bmiWeight = $("#sliderbmiweight").slider("value").toFixed(1);
        var bmiLenght = $("#sliderbmilenght").slider("value").toFixed(2);
        bmi = ((bmiWeight) / (bmiLenght * bmiLenght)).toFixed(1);
        return bmi
    }
    function setBmiValues() {
        //set the bmi values // voedingswaardetabel.nl
        var bmi = calcBMI();
        $("#bmiresult").html(bmi);
        $("#sliderbmiresult").slider({ value: bmi });
        $("#sliderbmimaxminweight .ui-slider-range").css("background", "#80a03f");

        if (bmi > 40) {
            $("#sliderbmiresult .ui-slider-range").css("background", "#b64b66");
            $("#bmiresulttext").html("Zeer ongezond overgewicht, morbide obesitas (graad 3).");
        }
        else if (bmi > 30 && bmi <= 40) {
            $("#sliderbmiresult .ui-slider-range").css("background", "#c47481");
            $("#bmiresulttext").html("Ongezond overgewicht, vetzucht, obesitas (graad 2).");
        }
        else if (bmi > 27 && bmi <= 30) {
            $("#sliderbmiresult .ui-slider-range").css("background", "#df8752");
            $("#bmiresulttext").html("Licht overgewicht (graad 1).");
        }
        else if (bmi > 25 && bmi <= 27) {
            $("#sliderbmiresult .ui-slider-range").css("background", "#bc983a");
            $("#bmiresulttext").html("Neiging tot overgewicht.");
        }
        else if (bmi >= 18.5 && bmi <= 25) {
            $("#sliderbmiresult .ui-slider-range").css("background", "#80a03f");
            $("#bmiresulttext").html("Gezond, normaal gewicht.");
        }
        else if (bmi < 18.5) {
            $("#sliderbmiresult .ui-slider-range").css("background", "#bc983a");
            $("#bmiresulttext").html("Ondergewicht (te mager, verhoogd gezondheidsrisico).");
        };

        //set the minimum and maximum results // voedingswaardetabel.nl
        var mv = $('input[name=mv]:checked').val();
        if (mv == "m") {
            leanConvert = 128;
            idealConvert = 50; //  conversion factors for men
        } else {
            leanConvert = 148;
            idealConvert = 45.5; //  conversion factors for women
        }
        var bmiLenght = $("#sliderbmilenght").slider("value");
        var bmiWeight = $("#sliderbmiweight").slider("value");
        var heightInches = (bmiLenght * 100) / 2.54;
        var idealKg = (idealConvert + 2.3 * (heightInches - 60));
        var leanKg = (18.5 * (bmiLenght * bmiLenght));
        var maxiKg = (24.9 * (bmiLenght * bmiLenght));
        var calKg = bmiWeight - idealKg;
        if (bmiWeight < idealKg) {
            ua = "onder";
            calKg = Math.abs(calKg);
        } else {
            ua = "boven";
        }
        $("#sliderbmimaxminweight").slider({ values: [leanKg.toFixed(1), maxiKg.toFixed(1)] });
        $("#bmimaxminweight").html(leanKg.toFixed(1) + " tot " + maxiKg.toFixed(1) + " kilogram");
        $("#bmileantext").html("Uw ideale gewicht zou " + idealKg.toFixed(1) + " kg. zijn. Dit betekent dat u nu " + calKg.toFixed(1) + " kg. " + ua + " uw ideale gewicht zit.");

    }
    //up / down buttons // voedingswaardetabel.nl
    $("#imgBmiWeightDown").click(function () {
        var bmiweight = ($("#sliderbmiweight").slider("value") - 0.1).toFixed(1);
        $("#sliderbmiweight").slider({ value: bmiweight });
    });
    $("#imgBmiWeightUp").click(function () {
        var bmiweight = ($("#sliderbmiweight").slider("value") + 0.1).toFixed(1);
        $("#sliderbmiweight").slider({ value: bmiweight });
    });
    $("#imgBmiLenghtDown").click(function () {
        var bmilenght = ($("#sliderbmilenght").slider("value") - 0.01).toFixed(2);
        $("#sliderbmilenght").slider({ value: bmilenght });
    });
    $("#imgBmiLenghtUp").click(function () {
        var bmilenght = ($("#sliderbmilenght").slider("value") + 0.01).toFixed(2);
        $("#sliderbmilenght").slider({ value: bmilenght });
    });
    $(function () { // voedingswaardetabel.nl
        setBmiValues();
    });
});
