﻿function increment(fld, e)
{
    fld.value = parseFloat(fld.value) + 1;

    if (isNaN(fld.value))
        fld.value = 1
    }

var orizinalSize; // global variable to store the original size of the dropdown
function increaseSize(ddl)
{
    orizinalSize = ddl.style.width;
    ddl.style.width = "200 px"; //specify new size 
}
function decreaseSize(ddl)
{
    ddl.style.width = orizinalSize;
}


function orderdecrement(fld, e) {
    if (!(parseFloat(fld.value) == 1)) {
        fld.value = parseFloat(fld.value) - 1;

        if (isNaN(fld.value))
            fld.value = "-"

        return false;
    }
}

function orderincrement(fld, e) {
    fld.value = parseFloat(fld.value) + 1;

    if (isNaN(fld.value))
        fld.value = 1
}

// Hier gaan we de functionaliteit maken om door de sizetable heen te lopen //
// De id van de sizetable = SizeColorTable //

var incrementCount = {
    onChange: function() {
        var counter = 0;
        for (var a = 0; a < this.row.inputs.length; a++) {
            if (isNaN(parseInt(this.row.inputs[a].value, 10))) {
                this.row.inputs[a].value = '-';
            } else {
                counter += parseInt(this.row.inputs[a].value, 10);
            }
        }
        this.row.output.innerHTML = counter;
    },
    //deze functie word aangeroepen wanneer de pagina volledig is geladen en opgebouwd
    start: function() {
        var table = document.getElementById('SizeColorTable');
        if (table) {
            var rows = table.getElementsByTagName('tr');
            for (var a = 1; a < rows.length; a++) {
                rows[a].inputs = rows[a].getElementsByTagName('input');
                for (var b = 0; b < rows[a].inputs.length; b++) {
                    rows[a].inputs[b].row = rows[a];
                    rows[a].inputs[b].onmouseup =
                    rows[a].inputs[b].onchange = this.onChange;
                }
                rows[a].output = rows[a].getElementsByTagName('span')[1];

                rows[a].inputs[0].onchange();

            }
        }
    },
    //initalisatie van de object nadat het document is opgebouwd
    init: function() {
        //locaal definieren maakt dit globaal voor de functies die hardcoded gemaakt worden in de volgende regels.
        var This = this;
        //dit maakt het volgende korte oplossing mogelijk op deze manier kunnen er meerdere instanties aangemaakt worden zonde vrees voor het ontdoen van bestaande of aanvullende scripts scripts.
        if (typeof (window.addEventListener) != 'undefined') {
            window.addEventListener('load', function() { This.start(); }, false);
        } else if (typeof (window.attachEvent) != 'undefined') {
            window.attachEvent('onload', function() { This.start() });
        }
    }
}; incrementCount.init();
