function getAdres(PC_N, PC_A, huisNr)
{
    if (PC_N != "" && PC_A != "" && huisNr != "")
    {
        iTax.CheckMijnWoningwaarde.input_object.GetAdres(PC_N, PC_A, huisNr, getAdres_callback);  // asynchronous call
    }
}

function getAdres_callback(res)
{
    var element = document.getElementById("selAdres");
    element.innerHTML = res.value;
    
    if(res.value == "")
    {
        alert("Dit is een onjuiste postcode/huisnummer combinatie. Controleer aub uw gegevens.");   
    }
}

function checkStraatFill()
{
    iTax.CheckMijnWoningwaarde.input_object.CheckStraatFill(checkStraatFill_callback);  // asynchronous call   
}

function checkStraatFill_callback(res)
{
    var element = document.getElementById("selAdres");
    element.innerHTML = res.value;
}


function updateEenheidObjClick(IndExtraObj)
{
    iTax.CheckMijnWoningwaarde.input_properties.UpdateEenheid(IndExtraObj.options[IndExtraObj.selectedIndex].value,updateEenheidObjClick_callback);
}

function updateEenheidObjClick_callback(response)
{
    var objecten = response.value; 
    var element = document.getElementById("IndEenheidObj");
    element.options.length = 0;
    element.options[element.options.length] = new Option("", "");
                
    for (var i = 0; i < objecten.Rows.length; i++)
    {
        element.options[element.options.length] = new Option(objecten.Rows[i].EENHEID, objecten.Rows[i].DEELCODE);
    }
}

function checkWoningAvail_inputproperties()
{
    iTax.CheckMijnWoningwaarde.input_properties.CheckWoningAvail(checkWoningAvail_callback);
}

function checkWoningAvail_submit()
{
    iTax.CheckMijnWoningwaarde.submit.CheckWoningAvail(checkWoningAvail_callback);
}

function checkWoningAvail_callback(response)
{
    if(response.value != true)
    {
        alert("Er moet een nieuw adres ingevoerd worden. U wordt doorgestuurd naar de beginpagina.");
        window.location.href="input_object.aspx";
    }
}

function popUp(URL) 
{
    day = new Date();
    id = day.getTime();
    eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=620,height=600,left = 340,top = 212');");
}

function btnAddToGrid(deelcode,eenheid,waarde)
{
    if (waarde.value != "" && deelcode.value != "" && eenheid.value != "")
    {
        iTax.CheckMijnWoningwaarde.input_properties.AddToGrid(deelcode.options[deelcode.selectedIndex].value, eenheid.options[eenheid.selectedIndex].text, waarde.value, btnAddToGrid_callback);
    }
    else
    {
        alert("Vul aub alle gegevens correct in, voordat u deze opslaat.");
    }
}

function btnAddToGrid_callback(response)
{
    if(response.error == null)
    {
        var element = document.getElementById("divExtObj");
        element.innerHTML = response.value;
        
        var ddl = document.getElementById("IndExtraObjecten");
        ddl.selectedIndex = 0;
        ddl = document.getElementById("IndEenheidObj");
        ddl.selectedIndex = 0;
        
        var tb = document.getElementById("TBExtraObjecten");
        tb.value = "";
    }
    else
    {
        alert(response.error.Message);
    }
}

function checkDeelObjecten()
{
    iTax.CheckMijnWoningwaarde.input_properties.CheckDeelObjecten(checkDeelObjecten_callback);   
}

function checkDeelObjecten_callback(response)
{
    if(response.value != "")
    {
        var element = document.getElementById("divExtObj");
        element.innerHTML = response.value;
    }
}

function removeRow(src)
{
    /* src refers to the input button that was clicked. 
       to get a reference to the containing <tr> element,
       get the parent of the parent (in this case <tr>)
    */
    var oRow = src.parentNode.parentNode;  
    var idname = oRow.parentNode.parentNode.id;  
    var rowId = oRow.rowIndex;
    
    //once the row reference is obtained, delete it passing in its rowIndex   
    var row = document.getElementById(idname);
    row.deleteRow(rowId);
    iTax.CheckMijnWoningwaarde.input_properties.RowDelete(rowId);
}
