/*jslint bitwise: true, browser: true, eqeqeq: true, immed: true, newcap: true, nomen: true, onevar: false, plusplus: true, regexp: true, undef: true, white: true, indent: 4 */
/*global $, ald, console, jq, window */

ald.rechner = {

    calc_pegel: function (values, method) {
        method = method || 'add';
        var a = values;
        var energ = 0;
        var i = 0;
        var n = 0;
        while (i < a.length)  {
            var aa = a[i].replace(",",".");
            var x = parseFloat(aa);
            if (isNaN(x)) {
                break;
            }
            energ += Math.pow(10, 0.1 * x);
            n += 1;
            i += 1;
        }
        if (method === 'avg') {
            energ /= n;
        }
        return Math.round(100 * Math.LOG10E * Math.log(energ)) / 10;
    },

    init: function () {
        jq("#rechner-auswahl ul").tabs("#rechner-forms form").history();
        jq("input[name=pegel-method]").bind('click change', function (e) {
            var choice = e.target.value;
            var values = jq("#pegel-values").val().split("\n");
            jq("#pegel-result").val(ald.rechner.calc_pegel(values, choice));
        });
    }
};

jq(document).ready(function () {
    ald.rechner.init();
});

