/**
 * Deze methode wordt aangeroepen bij het klikken op de bereken-knop
 * De ER-, coll.cat's- en coll.aanb's-opties worden opgehaald.
 */
function popupPremieBerekenen(aantalKolommen) {

    showWaitCursor(true);
    getEigenRisicos(aantalKolommen);
    getCollectiviteitscategorien(aantalKolommen);

    var popContainer = $('popContainerPremieBerekening');

    if(popContainer.hasClassName('hide')) {
        popContainer.absolutize();
        // IE7 does not like cloning the position of document.body

        popContainer.removeClassName('hide');
        popContainer.scrollTo();
    }
    else {
        popContainer.addClassName('hide');
    }
    showWaitCursor(false);
}

/**
 * Deze methode haalt de ER-bedragen op bij het openen van de
 * premieberekening-popup, vult de combobox en roept de resize-methode aan.
 */
function getEigenRisicos(aantalKolommen){
    var verzekeringen  = getVerzekeringen(aantalKolommen);

    new Ajax.Updater(
        'eigenRisicoSpan',
        '/premie/berekening/eigenrisico.do',
        {
            method: 'get',
            parameters: {
                verzekeringen: verzekeringen
            },
            onComplete: function() {
                resizePopContainerPremieBerekening();
            }
        }
        );
}

/**
 * Deze methode haalt de coll.cat's op bij het openen van de 
 * premieberekening-popup, vult de combobox en roept de
 * resetColl.aanb.-methode aan.
 */
function getCollectiviteitscategorien(aantalKolommen){
    var verzekeringen = getVerzekeringen(aantalKolommen);

    new Ajax.Updater(
        'collectiviteitscategorieSpan',
        '/premie/berekening/collectiviteitscategorie.do',
        {
            method: 'get',
            parameters: {
                verzekeringen: verzekeringen
            },
            onComplete: function() {
                resetCollectiviteitsaanbieder(aantalKolommen);
            }
        }
        );
}

/**
 * Deze methode wordt aangeroepen bij openen van de premieberekening-popup
 * en bepaalt de initiele coll.aanbieder op basis een eventueel geselecteerde
 * coll.categorie.
 */
function resetCollectiviteitsaanbieder(aantalKolommen) {
    var verzekeringen = getVerzekeringen(aantalKolommen);
    var collectiviteitscategorieID = 0;
    if (document.getElementById('collectiviteitscategorieSelect') != null) {
        collectiviteitscategorieID = document.getElementById('collectiviteitscategorieSelect').value;
    }

    new Ajax.Updater(
        'collectiviteitsaanbiederSpan',
        '/premie/berekening/collectiviteitsaanbieder.do',
        {
            method: 'get',
            parameters: {
                verzekeringen: verzekeringen,
                collectiviteitscategorieID : collectiviteitscategorieID
            },
            onComplete: function() {
            }
        }
        );
}

/**
 * Deze methode wordt aangeroepen bij het wijzigen van de coll.categorie,
 * bepaalt de mogelijke coll.aanbieder(s) op basis de geselecteerde
 * coll.categorie en roept de resize-methode aan.
 */
function onChangeCollectiviteitscategorien(aantalKolommen){

    var verzekeringen = getVerzekeringen(aantalKolommen);
    var collectiviteitscategorieID = document.getElementById('collectiviteitscategorieSelect').value;

    new Ajax.Updater(
        'collectiviteitsaanbiederSpan',
        '/premie/berekening/collectiviteitsaanbieder.do',
        {
            method: 'get',
            parameters: {
                verzekeringen: verzekeringen,
                collectiviteitscategorieID : collectiviteitscategorieID
            },
            onComplete: function() {
                resizePopContainerPremieBerekening();
            }
        }
        );
}

/**
 * De zogenaamde resize-methode die de hoogte van de pop-up aanpast aan de
 * hand van de getoonde rijen met invulvelden en comboboxes.
 */
function resizePopContainerPremieBerekening() {
    var popContainer = $('popContainerPremieBerekening');
    var popWindow = $('popWindowPremieBerekening');

    var height = Math.max(
        (window.innerHeight || 0),
        document.body.clientHeight,
        document.documentElement.clientHeight,
        document.body.scrollHeight + 50,
        popWindow.cumulativeOffset().top + popWindow.getHeight() + 50
        );

    popContainer.setStyle({
        left: '0px',
        top: '0px',
        height: height + 'px',
        width: '100%'
    });

}

function getVerzekeringen(aantalKolommen) {
    var verzekeringen ="";

    for(i=0;i<aantalKolommen;i++){
        verzekeringen += (i+1)+"basisVerzekering;"+ document.getElementById('column['+(i+1)+'].basisVerzekering').value;
        verzekeringen += ",";
        verzekeringen += (i+1)+"aanvullendeVerzekering;" + document.getElementById('column['+(i+1)+'].aanvullendeVerzekering').value;
        if( i != (aantalKolommen-1)){
            verzekeringen += ",";
        }
    }
    return verzekeringen;
}

function getVerzekeraars(aantalKolommen) {
    var verzekeraars ="";

    for(i=0;i<aantalKolommen;i++){
        verzekeraars += document.getElementById('column['+(i+1)+'].verzekeraar').value;
        if( i != (aantalKolommen-1)){
            verzekeraars += ",";
        }
    }
    return verzekeraars;
}

function disablePremieBerekening() {
    var popContainer = $('popContainerPremieBerekening');
    popContainer.addClassName('hide');
}

function enablePremieBerekening() {
    var popContainer = $('popContainerPremieBerekening');
    popContainer.removeClassName('hide');
}

function onClickSubmitPremieBerekening(targetId, columns) {
    var startTime = getMillis();
    var height = document.getElementById('scrollable-div').offsetHeight;
    if(document.getElementById('berekening')!= null) {
        height += document.getElementById('berekening').offsetHeight;
    }
    
    var verzekeringen = new Array();
    for(var count=0; count < columns ; count++){
        var basisAanvullende = new Array();
        basisAanvullende[0] = document.getElementById('column['+(count+1)+'].basisVerzekering').value;
        basisAanvullende[1] = document.getElementById('column['+(count+1)+'].aanvullendeVerzekering').value;
        verzekeringen[count] = basisAanvullende;
    }

    var verzekeraars = getVerzekeraars(columns);
    var eigenRisico = document.getElementById('eigenRisicoSelect').value;
    var collectiviteitscategorieID = 0;
    var collectiviteitsaanbiederID = 0;
    if (document.getElementById('collectiviteitscategorieSelect') != null) {
        collectiviteitscategorieID = document.getElementById('collectiviteitscategorieSelect').value;
    }
    if (document.getElementById('collectiviteitsaanbiederSelect') != null) {
        collectiviteitsaanbiederID = document.getElementById('collectiviteitsaanbiederSelect').value;
    }

    // valideer aanvrager geslacht
    var aanvragerGeslacht = '';
    if(document.getElementById('aanvragerGeslachtM').checked) {
        aanvragerGeslacht = 'm';
    } else if(document.getElementById('aanvragerGeslachtV').checked) {
        aanvragerGeslacht = 'v';
    }
    if (aanvragerGeslacht == ''){
        alert( 'Ongeldige invoer - Aanvrager geslacht moet ingevuld zijn!' );

        return;
    }
    // valideer aanvrager geboorteDatum
    var aanvragerGeboorteDatum = getGeboorteDatum('aanvrager');
    if (aanvragerGeboorteDatum == ''){
        alert('Ongeldige invoer - Verkeerde of geen geboortedatum ingevoerd voor de aanvrager!');

        return;
    }

    var partnerGeslacht = '';
    var partnerGeboorteDatum = '';

    if (document.getElementById('checkPartner').checked){

        // valideer partner geslacht
        if(document.getElementById('partnerGeslachtM').checked) {
            partnerGeslacht = 'm';
        } else if(document.getElementById('partnerGeslachtV').checked) {
            partnerGeslacht = 'v';
        }
        if (partnerGeslacht == ''){
            alert( 'Ongeldige invoer - partner geslacht moet ingevuld zijn!' );

            return;
        }

        // valideer geboorte datum
        partnerGeboorteDatum = getGeboorteDatum('partner');
        if (partnerGeboorteDatum == ''){
            alert('Ongeldige invoer - Verkeerde of geen geboortedatum ingevoerd voor de partner!');

            return;
        }
        
    }

    var kinderen = new Array();
    if(document.getElementById('checkKinderen').checked){
        
        for(var i = 0 ; i < document.getElementById('hiddenAantalKinderen').value ; i++) {
            var kind = new Array();
            
            var kindGeslacht = '';
            if(document.getElementById("kindGeslachtM"+i).checked) {
                kindGeslacht = 'm';
            } else if(document.getElementById("kindGeslachtV"+i).checked) {
                kindGeslacht = 'v';
            }
            if (kindGeslacht == ''){
                alert( 'Ongeldige invoer - Kind geslacht moet ingevuld zijn!' );

                return;
            }
            kind[0] = kindGeslacht;

            var kindGeboorteDatum = getGeboorteDatum("kind"+i);
            if (kindGeboorteDatum == ''){
                alert('Ongeldige invoer - Verkeerde of geen geboortedatum ingevoerd voor een kind!');

                return;
            }
            kind[1] = kindGeboorteDatum;
            kinderen[i]= kind;
        }
    }

    if(document.getElementById('eigenRisicoSelect').value == 0 ){
        alert( 'Ongeldige invoer - Selecteer een eigen risico bedrag!' );

        return;
    }
    // Needed for error handling.
    var container = {
        success: targetId,
        failure: null
    };

    disablePremieBerekening();

    new Ajax.Updater(container, '/premie/berekening/resolve.do', {
        method: 'get',
        parameters: {
            verzekeringen: verzekeringen,
            verzekeraars: verzekeraars,
            eigenRisico: eigenRisico,
            collectiviteitscategorieID : collectiviteitscategorieID,
            collectiviteitsaanbiederID : collectiviteitsaanbiederID,
            aanvragerGeboorteDatum : aanvragerGeboorteDatum,
            aanvragerGeslacht : aanvragerGeslacht,
            partnerGeboorteDatum : partnerGeboorteDatum,
            partnerGeslacht : partnerGeslacht,
            kinderen : kinderen
        },
        onException: ajaxErrorHandler,
        onFailure: ajaxErrorHandler,
        onSuccess: function(){

        },
        onComplete: function() {
            var berekening = $('kostenoverzicht');
            berekening.removeClassName('hide');

            //bepaal hoogte van de eventuele berekening en haal die van de positie af.
            var valueB = document.getElementById('berekening').offsetHeight;
            for(var count=0; count < columns ; count++){
                var pakketnaam = document.getElementById('column['+(count+1)+'].pakketnaam').value;

                var beschikbaar = document.getElementById('pakket_beschikbaar['+(count+1)+']').value;
                if(beschikbaar != '0.0' && beschikbaar != ''){
                    alert(pakketnaam + ' is vanwege de ingevoerde leeftijd(en) niet beschikbaar.');
                }
            }
            document.getElementById('scrollable-div').style.height = (height - valueB) + "px";

            showTiming("total bereken premie", getMillis()-startTime);


        }
    });
}

function getGeboorteDatum(persoon){
    var datum = "";
    var jaar = persoon+"Jaar";
    var maand = persoon+"Maand";
    var dag = persoon+"Dag";

    datum = document.getElementById(jaar).value;
    datum += "/";
    datum += document.getElementById(maand).value;
    datum += "/";
    datum += document.getElementById(dag).value;

    if(isDate(datum)){
        return datum;
    } else{
        document.getElementById(jaar).value = 'jjjj';
        document.getElementById(maand).value = 'mm';
        document.getElementById(dag).value = 'dd';
        return '';
    }

}

function isDate(txtDate){
    var objDate;  // date object initialized from the txtDate string
    var mSeconds; // milliseconds from txtDate

    // date length should be 10 characters - no more, no less
    if (txtDate.length != 10) return false;

    // extract day, month and year from the txtDate string
    // expected format is mm/dd/yyyy
    // subtraction will cast variables to integer implicitly
    var day   = txtDate.substring(8,10)  - 0;
    var month = txtDate.substring(5,7)  - 1; // because months in JS start with 0
    var year  = txtDate.substring(0,4) - 0;

    // fourth and seventh character should be /
    if (txtDate.substring(4,5) != '/') return false;
    if (txtDate.substring(7,8) != '/') return false;

    // test year range
    if (year < 1900 || year > 2100) return false;

    // convert txtDate to the milliseconds
    mSeconds = (new Date(year, month, day)).getTime();

    // set the date object from milliseconds
    objDate = new Date();
    objDate.setTime(mSeconds);

    // if there exists difference then date isn't valid
    if (objDate.getFullYear() != year)  return false;
    if (objDate.getMonth()    != month) return false;
    if (objDate.getDate()     != day)   return false;

    // otherwise return true
    return true;
}

function onClickLinkOfferteCol1() {
    onClickLinkOfferte(1);
}

function onClickLinkOfferteCol2() {
    onClickLinkOfferte(2);
}

function onClickLinkOfferteCol3() {
    onClickLinkOfferte(3);
}

function onClickLinkOfferte(columnNr) {
    var verzekeraarId = document.getElementById('column['+(columnNr)+'].verzekeraar').value;
    var basisVerzekeringId = document.getElementById('column['+(columnNr)+'].basisVerzekering').value;
    var aanvullendeVerzekeringId = document.getElementById('column['+(columnNr)+'].aanvullendeVerzekering').value;

    new Ajax.Updater(
        'stuur-offerte-span',
        '/pakket/selectie/offerteLink.do', {
        method: 'get',
        evalScripts: true,
        parameters: {
            verzekeraarId: verzekeraarId,
            basisVerzekeringId: basisVerzekeringId,
            aanvullendeVerzekeringId: aanvullendeVerzekeringId
        },
        onException: ajaxErrorHandler,
        onFailure: ajaxErrorHandler,
        onComplete: function() {
            document.offerte_post_form.submit();
        }
    });
}

function onClickSubmitOfferte(columnNr) {
    // Verzekeraar
    var verzekeraarId = document.getElementById('column['+(columnNr)+'].verzekeraar').value;

    // Verzekeringen
    var basisVerzekeringId = document.getElementById('column['+(columnNr)+'].basisVerzekering').value;
    var aanvullendeVerzekeringId = document.getElementById('column['+(columnNr)+'].aanvullendeVerzekering').value;

    // Premiekortingen
    eigenRisicoSelect = document.getElementById('eigenRisicoSelect');
    collectiviteitscategorieSelect = document.getElementById('collectiviteitscategorieSelect');
    collectiviteitsaanbiederSelect = document.getElementById('collectiviteitsaanbiederSelect');
    var eigenRisico = eigenRisicoSelect != null ? eigenRisicoSelect.value : 0;
    var collectiviteitscategorieId = collectiviteitscategorieSelect != null ? collectiviteitscategorieSelect.value : 0;
    var collectiviteitsaanbiederId = collectiviteitsaanbiederSelect != null ? collectiviteitsaanbiederSelect.value : 0;

    // Persoonsgegevens
    // valideer aanvrager geslacht
    var aanvragerGeslacht = '';
    if(document.getElementById('aanvragerGeslachtM').checked) {
        aanvragerGeslacht = 'man';
    } else if(document.getElementById('aanvragerGeslachtV').checked) {
        aanvragerGeslacht = 'vrouw';
    }
    // valideer aanvrager geboorteDatum
    var aanvragerGeboorteDatum = getGeboorteDatum('aanvrager');

    var partnerGeslacht = '';
    var partnerGeboorteDatum = '';

    if (document.getElementById('checkPartner').checked){

        // valideer partner geslacht
        if(document.getElementById('partnerGeslachtM').checked) {
            partnerGeslacht = 'man';
        } else if(document.getElementById('partnerGeslachtV').checked) {
            partnerGeslacht = 'vrouw';
        }

        // valideer geboorte datum
        partnerGeboorteDatum = getGeboorteDatum('partner');

    }

    var kinderen = new Array();
    if(document.getElementById('checkKinderen').checked){

        for(var i = 0 ; i < document.getElementById('hiddenAantalKinderen').value ; i++) {
            var kind = new Array();

            var kindGeslacht = '';
            if(document.getElementById("kindGeslachtM"+i).checked) {
                kindGeslacht = 'man';
            } else if(document.getElementById("kindGeslachtV"+i).checked) {
                kindGeslacht = 'vrouw';
            }
            kind[0] = kindGeslacht;

            kind[1] = getGeboorteDatum("kind"+i);
            kinderen[i]= kind;
        }
    }

    var premieOverzicht = new Array();
    for (var j = 0 ; j < 7; j++) {
        var premiewaardeElem = document.getElementById("premie_berekingen["+(columnNr)+"][" + j + "]");
        var premiewaarde = 0;
        if (premiewaardeElem != null) {
            premiewaarde = premiewaardeElem.value;
        }

        premieOverzicht[j] = premiewaarde;
    }

    new Ajax.Updater(
        'stuur-offerte-span',
        '/pakket/selectie/offerteaanvraag.do',
        {
            method: 'get',
            evalScripts: true,
            parameters: {
                verzekeraarId: verzekeraarId,
                basisVerzekeringId: basisVerzekeringId,
                aanvullendeVerzekeringId: aanvullendeVerzekeringId,
                collectiviteitscategorieId: collectiviteitscategorieId,
                collectiviteitsaanbiederId: collectiviteitsaanbiederId,
                eigenRisico: eigenRisico,
                aanvragerGeboorteDatum : aanvragerGeboorteDatum,
                aanvragerGeslacht : aanvragerGeslacht,
                partnerGeboorteDatum : partnerGeboorteDatum,
                partnerGeslacht : partnerGeslacht,
                kinderen : kinderen,
                premieOverzicht : premieOverzicht,
                columnNr : columnNr
            },
            onException: ajaxErrorHandler,
            onFailure: ajaxErrorHandler,
            onComplete: function() {
                document.offerte_xml_post_form.submit();
            }
        }
        );
}

function check(inputfield, targetfield) {
    var inputlength = 0;
    inputlength = document.getElementById(inputfield).value.length +1;
    if(inputlength <= document.getElementById(inputfield).maxLength ) {
        document.getElementById(inputfield).focus();
    } else {
        document.getElementById(targetfield).focus();
    }
}

function togglePartnerSpan(el){
    toggleSpan(el,'partnerGeslachtSpan');
    toggleSpan(el,'partnerGeboortedatumSpan');
}

function toggleKinderen(){
    toggleSpan(document.getElementById('checkKinderen'), 'kinderenSpan' );
    updateChildren();
}

function toggleSpan(el, span) {
    if ( el.checked ) {
        document.getElementById(span).style.display = 'inline';
    } else {
        document.getElementById(span).style.display = 'none';
    }

}

function updateChildren () {
    if(  document.getElementById("hiddenAantalKinderen").value <  document.getElementById("selectAantalKinderen").value ) {
        appendChild((document.getElementById("selectAantalKinderen").value -  document.getElementById("hiddenAantalKinderen").value));

    } else if (document.getElementById("hiddenAantalKinderen").value > document.getElementById("selectAantalKinderen").value) {
        removeChild( document.getElementById("hiddenAantalKinderen").value -  document.getElementById("selectAantalKinderen").value);
    }
    
    
    if(!document.getElementById('checkKinderen').checked){
        removeChild(document.getElementById("hiddenAantalKinderen").value);
    } else {
        document.getElementById("hiddenAantalKinderen").value =   document.getElementById("selectAantalKinderen").value;
    }
    
}

function appendChild(appendAmount) {
    var line = "";
    var item;
    var text;
    var keyup;
    var onfocus;
    var onblur;
    var jongen = document.getElementById('jongen').value;
    var meisje = document.getElementById('meisje').value;
    var currentChildrenAmount = parseInt(document.getElementById("hiddenAantalKinderen").value);
    var kinderRow = document.getElementById('kinderRow');

    //document.getElementById('kinderData').setAttribute('rowspan',(currentChildrenAmount + appendAmount));

    if(currentChildrenAmount == 0){
        kinderRow.removeChild(document.getElementById('kinderenFill1'));
        kinderRow.removeChild(document.getElementById('kinderenFill2'));
    }

    for(i = 0 ; i < appendAmount ; i++ ) {
        // var kinderGeslachtNode = document.createElement("span");
        // var br = document.createElement("br");

        var tr = document.createElement("tr");
        tr.setAttribute('id','kinderRow'+(currentChildrenAmount+i));
        var tdEmpty = document.createElement("td");
        var tdGeslacht = document.createElement("td");
        var tdGeboorte = document.createElement("td");

        //kinderGeslachtNode.setAttribute('id',"kinderGeslachtNode"+(currentChildrenAmount+i));
        tdGeslacht.setAttribute('id',"kinderGeslachtNode"+(currentChildrenAmount+i));
        tdGeboorte.setAttribute('id',"kinderGeboorteNode"+(currentChildrenAmount+i));

        // radio button Kind geslacht man
        if (Prototype.Browser.IE){
            item = document.createElement('<input type="radio" id="kindGeslachtM'+(currentChildrenAmount+i)+'" name="kindGeslacht'+(currentChildrenAmount+i)+'" value="man">');
        } else{
            item = document.createElement("input");
            item.type = "radio";
            item.id = "kindGeslachtM"+(currentChildrenAmount+i);
            item.value = "man";
            item.name="kindGeslacht"+(currentChildrenAmount+i);
        }

        text = document.createTextNode(jongen);
        tdGeslacht.appendChild(item);
        tdGeslacht.appendChild(text);

        //radio button kind geslacht vrouw
        if (Prototype.Browser.IE){
            item = document.createElement('<input type="radio" id="kindGeslachtV'+(currentChildrenAmount+i)+'" name="kindGeslacht'+(currentChildrenAmount+i)+'" value="vrouw">');
        } else{
            item = document.createElement("input");
            item.type = "radio";
            item.id = "kindGeslachtV"+(currentChildrenAmount+i);
            item.value = "vrouw";
            item.name="kindGeslacht"+(currentChildrenAmount+i);
        }
        
        text = document.createTextNode(meisje);
        tdGeslacht.appendChild(item);
        tdGeslacht.appendChild(text);

        //kinderGeslachtNode.appendChild(document.createElement("br"));
        //document.getElementById("kinderenGeslachtSpan").appendChild(kinderGeslachtNode);

        //var kinderGeboortedatumNode = document.createElement("span");
        //kinderGeboortedatumNode.setAttribute('id',"kinderGeboortedatumNode"+(currentChildrenAmount+i));
        // invoer text dag
        item = document.createElement("input");
        item.type = "text";
        item.id = "kind"+(currentChildrenAmount+i)+"Dag";
        item.size = 2;
        item.maxLength = 2;
        item.className = "geboorteDag";
        item.value = "dd";

        onfocus = new Function("replaceInput(this, 'dd')");
        item.onfocus = onfocus;

        onblur = new Function("resetInput(this, 'dd')");
        item.onblur = onblur;

        keyup = new Function("check('kind"+(currentChildrenAmount+i)+"Dag','kind"+(currentChildrenAmount+i)+"Maand');");
        item.onkeyup = keyup;

        tdGeboorte.appendChild(item);
        text = document.createTextNode(" - ");
        tdGeboorte.appendChild(text);

        // invoer text maand
        item = document.createElement("input");
        item.type = "text";
        item.id = "kind"+(currentChildrenAmount+i)+"Maand";
        item.size = 2;
        item.maxLength = 2;
        item.className = "geboorteMaand";
        item.value = "mm";

        onfocus = new Function("replaceInput(this, 'mm')");
        item.onfocus = onfocus;

        onblur = new Function("resetInput(this, 'mm')");
        item.onblur = onblur;

        keyup = new Function("check('kind"+(currentChildrenAmount+i)+"Maand','kind"+(currentChildrenAmount+i)+"Jaar');");
        item.onkeyup = keyup;

        tdGeboorte.appendChild(item);
        text = document.createTextNode(" - ");
        tdGeboorte.appendChild(text);

        // invoer text jaar
        item = document.createElement("input");
        item.type = "text";
        item.id = "kind"+(currentChildrenAmount+i)+"Jaar";
        item.size = 4;
        item.maxLength = 4;
        item.className = "geboorteJaar";
        item.value = "jjjj";

        onfocus = new Function("replaceInput(this, 'jjjj')");
        item.onfocus = onfocus;

        onblur = new Function("resetInput(this, 'jjjj')");
        item.onblur = onblur;

        tdGeboorte.appendChild(item);
        //document.getElementById("kinderenGeboortedatumSpan").appendChild(kinderGeboortedatumNode);

        if(currentChildrenAmount == 0) {
            tr = kinderRow;
        }
        if(currentChildrenAmount > 0 ) {
            tr.appendChild(tdEmpty);
        }
        tr.appendChild(tdGeslacht);
        tr.appendChild(tdGeboorte);

        if(currentChildrenAmount > 0 ) {
            document.getElementById('premieBerekeningBody').insertBefore(tr, document.getElementById('eigenRisicoRow'));
        }
    }
}

function removeChild(removeAmount) {
    var currentChildrenAmount = parseInt(document.getElementById("hiddenAantalKinderen").value);

    if(removeAmount == currentChildrenAmount){
        removeAmount --;
        var kinderRow = document.getElementById('kinderRow');
        kinderRow.removeChild(document.getElementById('kinderGeslachtNode0'));
        kinderRow.removeChild(document.getElementById('kinderGeboorteNode0'));

        // create 2 kinderenfill data's
        var td1 = document.createElement('td');
        td1.setAttribute('id','kinderenFill1');
        var td2 = document.createElement('td');
        td2.setAttribute('id','kinderenFill2');
        kinderRow.appendChild(td1);
        kinderRow.appendChild(td2);
        
        document.getElementById("hiddenAantalKinderen").value = 0;
        document.getElementById("selectAantalKinderen").value = 1;
    }
    for(i = removeAmount; i > 0 ; i--){
        var rowname = "kinderRow" + ((currentChildrenAmount-1)-(removeAmount-i));
        document.getElementById('premieBerekeningBody').removeChild(document.getElementById(rowname));
    }
}

function replaceInput(field, value) {
    if(field.value == value)
        field.value = '';
}

function resetInput(field, value) {
    if(field.value == '')
        field.value = value;
}
