/* JavaScript functions */

function openSDetails(pagina,taal)
{
    var h = 300;
    var l = 780;	
        
    var objWin = window.open("./pages/" + pagina + ".aspx?taal=" + taal,'doObject','width=' + l + ',height=' + h + ',top=150,left=150,status=yes,menubar=no,scrollbars=yes,toolbar=no,resizable=no');
    objWin.focus();	
}

function openAgendaHelp()
{
    var h = 175;
    var l = 780;	
        
    var objWin = window.open('./html/agendaHelp.html','doObject','width=' + l + ',height=' + h + ',top=150,left=150,status=no,menubar=no,scrollbars=yes,toolbar=no,resizable=no');
    objWin.focus();	
}

function openPopup(x,y)
{
    if (y == 0)
    {
        document.getElementById("popup").style.visibility = "hidden";
    }
    else
    {
        var content;
        switch(x)
        {
            case "A1":
                content = "<B>A1</B>: I can understand and use familiar expressions and very basic phrases aimed at the satisfaction of needs of a concrete type.<BR>I can introduce myself and others and can ask and answer questions about personal details such as where I live, people I know and things I have.";
            break;
            
            case "A2":
                content = "<B>A2</B>: I can understand sentences and frequently used expressions related to areas of most immediate relevance (e.g. very basic personal and family information, shopping, local geography, employment).<BR>I can communicate in simple and routine tasks requiring a simple and direct exchange of information on familiar and routine matters. <BR>I can describe in simple terms aspects of my background, immediate environment and matters in areas of immediate need.";
            break;
            
            case "B1":
                content = "<B>B1</B>: I can understand the main points of clear standard input on familiar matters regularly encountered in work, school, leisure, etc.<BR>I can deal with most situations likely to arise whilst travelling in an area where the language is spoken.<BR>I can produce simple connected text on topics which are familiar or of personal interest. <BR>I can describe experiences and events, dreams, hopes & ambitions and briefly give reasons and explanations for opinions and plans.";
            break;
            
            case "B2":
                content = "<B>B2</B>: I can understand the main ideas of complex text on both contrete and abstract topics, including technical discussions in my field of specialisation.<BR>I can interact with a degree of fluency and spontaneity that makes regular interaction with native speakers quite possible without strain for either party.<BR>I can produce clear, detailed text on a wide range of subjects and explain a viewpoint on a topical issue giving advantages and disadvantages of various options.";
            break;
            
            case "C1":
                content = "<B>C1</B>: I can understand a wide range of demanding, longer text, and recognise implicit meaning.<BR>I can express myself fluently and spontaneously without much obvious searching for expressions.<BR>I can use language flexibly and effectively for social, academic and professional purposes.<BR>I can produce clear, well-structured, detailed text on complex subjects, showing controlled use of organisational patterns, connectors and cohesive devices.";
            break;
            
            case "C2":
                content = "<B>C2</B>: I can understand with ease virtually everything heard or read. I can summarise information from different spoken and written sources, reconstructing arguments and accounts in a coherent presentation.<BR>I can express myself spontaneously, very fluently and precisely, differentiating finer shades of meaning even in more complex situations.<BR>This is the language level of a highly educated native speaker.";
            break;
        }
        document.getElementById("popupContent").innerHTML = content;
        document.getElementById("popup").style.visibility = "visible";
    }
}

function doZoja(id,w)
{
    var vraagid = "zj" + id + "v";;
    var antwoordid = "zj" + id + "a";
    var extraNL = " ";

    if(id == 174)
    {
        extraNL = "anders...";
    }
    
    if(id == 168)
    {
        var cNl = "nee";
        var cEn = "no";
    }
    else
    {
        var cNl = "ja";
        var cEn = "yes";
    }
    
    if(w.toLowerCase() == cNl || w.toLowerCase() == cEn || w.toLowerCase() == extraNL)
    {
        document.getElementById(vraagid).style.visibility = "visible";
        document.getElementById(antwoordid).style.visibility = "visible";
    }
    else
    {
        document.getElementById(vraagid).style.visibility = "hidden";
        document.getElementById(antwoordid).style.visibility = "hidden";	
    }
}

function checkFormulier(taal)
{
    var error = 0;
    var li = 0;
    for(s=1;s<document.forms[0].elements.length;s++)
    {
        var currElement = document.forms[0].elements[s];
        var enaam = currElement.name;

        if (enaam == "a67" || enaam == "a68") {
            if (document.getElementById(enaam).options.length == 1) {
                document.getElementById("t" + enaam).className = "datagrid";
            }
            else {
                error = 1;
                document.getElementById("t" + enaam).className = "formError";
            }
        }
        else if (enaam == "a89") {
            //Checken van de 'waar en wanneer heeft u gesolliciteerd'-vraag
            if (document.getElementById("zj89a").style.visibility == "visible") {
                if (document.getElementById("a89").value.length < 10) {
                    error = 1;
                    document.getElementById("zj89v").className = "formError";
                }
                else {
                    document.getElementById("zj89v").className = "";
                }
            }
            //alert(document.getElementById("a89").value.length);
        }
        else if (enaam == "a183" && currElement.value && currElement.value.length < 9) 
        {
            error = 1;
            if ("t" + enaam) {
                document.getElementById("t" + enaam).className = "formError";
            }
        }
        else if (enaam.charAt(0) == "a") {
            var orgnaam = enaam;

            enaam = enaam.replace("d", "");
            enaam = enaam.replace("m", "");
            enaam = enaam.replace("j", "");
            enaam = enaam.replace("z", "");
            enaam = enaam.replace("II", "");
            enaam = enaam.replace("I", "");

            if (document.forms[0].elements[s].value == "-" && document.forms[0].elements[s].tagName == "SELECT" && enaam != "a111") {
                error = 1;
                if (document.getElementById("t" + enaam)) {
                    document.getElementById("t" + enaam).className = "formError";
                }
            }
            else if (document.forms[0].elements[s].type == "text" || document.forms[0].elements[s].type == "textarea") {
                if (orgnaam.indexOf("II") == -1) {
                    if ((document.forms[0].elements[s].value == "" || document.forms[0].elements[s].value == "0")) {
                        error = 1;
                        if (document.getElementById("t" + enaam)) {
                            document.getElementById("t" + enaam).className = "formError";
                        }
                    }
                    else {
                        if (document.getElementById("t" + enaam)) {
                            document.getElementById("t" + enaam).className = "datagrid";
                        }
                    }
                }
            }
            else if (document.forms[0].elements[s].type == "hidden" && document.forms[0].elements[s].value == "0") {
                if (taal == 1) {
                    error = 1;
                    if (document.getElementById("t" + enaam)) {
                        document.getElementById("t" + enaam).className = "formError";
                    }
                }
            }
            else {
                if (document.getElementById("t" + enaam)) {
                    document.getElementById("t" + enaam).className = "datagrid";
                }
            }
        }
        else if (enaam == "oplcount") {
            if (document.getElementById("oplcount").value == "0") {
                error = 1;
                if (document.getElementById("ta48")) {
                    document.getElementById("ta48").className = "formError";
                }
            }
            else {
                if (document.getElementById("ta48")) {
                    document.getElementById("ta48").className = "datagrid";
                }
            }
        }
        else if (enaam == "bercount") {
            if (document.getElementById("bercount").value == "0") {
                error = 1;
                if (document.getElementById("ta49")) {
                    document.getElementById("ta49").className = "formError";
                }
            }
            else {
                if (document.getElementById("ta49")) {
                    document.getElementById("ta49").className = "datagrid";
                }
            }
        }
        if(error == 1)
        {
            //alert(enaam);
        }
    }
    
    if(taal == 1)
    {
        //Check de vliegervaring
        if(document.getElementById("a185").options[document.getElementById("a185").selectedIndex].value == "Ja")
        {
            if(document.getElementById("a184").value.length < 50)
            {
                error = 1;
                document.getElementById("zj184v").className = "formError";
                document.getElementById("d184").className = "formError";
            }
            else
            {
                document.getElementById("zj184v").className = "datagrid";
                document.getElementById("d184").className = "datagrid";
            }
        }
    
        if(document.forms['Form1'].opleidingen.options.length == 0)
        {
            error = 1;
            if(document.getElementById("ta48"))
            {
                document.getElementById("ta48").className = "formError";
            }				
        }
        else
        {
            if(document.getElementById("ta48"))
            {
                document.getElementById("ta48").className = "datagrid";
            }
        }	
        if(document.forms['Form1'].beroepen.options.length == 0)
        {
            error = 1;
            if(document.getElementById("ta49"))
            {
                document.getElementById("ta49").className = "formError";
            }				
        }
        else
        {
            if(document.getElementById("ta49"))
            {
                document.getElementById("ta49").className = "datagrid";
            }
        }	
    }

    //var error = 0;
    
    //alert(error);
    
    if(error == 1)
    {
        if(taal == 1)
        {
            alert("U heeft nog niet alle benodigde informatie ingevuld.");
        }
        else
        {
            alert("You did not provide all necessary information. Please submit all information.");
        }
    }
    else
    {
        if(taal == 1)
        {
            for(o=0;o<document.forms['Form1'].opleidingen.options.length;o++)
            {
                document.forms['Form1'].opleidingen.options[o].selected = true;
            }
            for(b=0;b<document.forms['Form1'].beroepen.options.length;b++)
            {
                document.forms['Form1'].beroepen.options[b].selected = true;
            }		
        }
        document.forms[0].submit();
    }
}

function removeItem(item,tekst,id,type)
{
    if(item == "beroep")
    {	
        var berCount = document.forms[0].bercount.value;
        berCount = parseInt(berCount) - 1;
        document.forms[0].bercount.value = berCount;	
        var totaal = document.getElementById("JSber").innerHTML;
        strBegin = totaal.indexOf(tekst) - 49;
        strEind = totaal.indexOf("</LI>",(strBegin + 10)) + 5;
        sub = totaal.substring(strBegin,strEind);
        var verw = sub;
        totaal = totaal.replace(verw,"");
        document.getElementById("JSber").innerHTML = totaal;
    }
    else if(item == "opleiding")
    {
        var oplCount = document.forms[0].oplcount.value;
        oplCount = parseInt(oplCount) - 1;
        document.forms[0].oplcount.value = oplCount;	
        var totaal = document.getElementById("JSopl").innerHTML;
        strBegin = totaal.indexOf(tekst) - 49;
        strEind = totaal.indexOf("</LI>",(strBegin + 10)) + 5;
        sub = totaal.substring(strBegin,strEind);
        var verw = sub;
        totaal = totaal.replace(verw,"");
        document.getElementById("JSopl").innerHTML = totaal;
    }
}

function removeInformatie(vraag,tekst)
{
    var totaal = document.getElementById("a" + vraag).value;
    strBegin = totaal.indexOf(tekst) - 50;
    strEind = totaal.indexOf("VALUE='Wis'>",(strBegin + 12)) + 12;
    if(strEind <= 12)
    {
        strEind = totaal.indexOf("VALUE='Delete'>",(strBegin + 15)) + 15;
    }
    sub = totaal.substring(strBegin,strEind);
    
    var verw = sub;
    totaal = totaal.replace(verw,"");
    document.getElementById("a" + vraag).value = totaal;
    document.getElementById("d" + vraag).innerHTML = totaal;
}

function setCursor(type,id)
{	
    var ctrl=document.getElementById(id);
    if(type == 1)
    {	
        if(ctrl.value == "")
        {
            ctrl.value = " ";
        }
        var inhoud = ctrl.value;
        var range = document.selection.createRange();
        var pos = inhoud.length - 1;
        range = ctrl.createTextRange();
        range.move('character', pos);
        range.select();	
    }
    else
    {
        if(ctrl.value == "")
        {
            ctrl.value = " ";
        }
    }
    
}

function chDatum(objNaam)
{
    //Check of datum juist is (BV. geen 31 November)
    var maandnaam = new Array(12);
    maandnaam[0] = "";
    maandnaam[1] = "January";
    maandnaam[2] = "February";
    maandnaam[3] = "March";
    maandnaam[4] = "April";
    maandnaam[5] = "May";
    maandnaam[6] = "June";
    maandnaam[7] = "July";
    maandnaam[8] = "August";
    maandnaam[9] = "September";
    maandnaam[10] = "October";
    maandnaam[11] = "November";		
    maandnaam[12] = "December";
    
    var dagStr = objNaam + "d"
    var maandStr =  objNaam + "m"
    var jaarStr =  objNaam + "j"
    
    if(document.getElementById(dagStr).value != "-" && document.getElementById(maandStr).value != "-" && document.getElementById(jaarStr).value != "-")
    {
        var datum = new Date(maandnaam[document.getElementById(maandStr).value] + " " + document.getElementById(dagStr).value + " " + document.getElementById(jaarStr).value)
        dag = document.getElementById(dagStr).value

        while(datum.getMonth() != (parseInt(document.getElementById(maandStr).value)-1))
        {
            dag = dag - 1;
            datum = new Date(maandnaam[document.getElementById(maandStr).value] + " " + dag + " " + document.getElementById(jaarStr).value)
            
            document.getElementById(dagStr).value = datum.getDate();
        }
    }
}

function chInt(objNaam)
{
    var newValue = parseInt(objNaam.value);
    
    if(objNaam.name == "a183")
    {
        //BSN filtering
        if (objNaam.value && objNaam.value.length > 0 && isNaN(newValue) && newValue != 0)
        {
            var regex = /[^\d]/;
            objNaam.value = objNaam.value.replace(regex, "");
        }
    }
    else
    {
        if(isNaN(newValue))
        {
            objNaam.value = "";
        }
        else if(objNaam.value != "")
        {
            objNaam.value = newValue;
        }
    }
}

function addListboxItem(gekozen,waarde,tekst)
{
    if(gekozen == "opleidingen")
    {
        var opleidingObj = new Option(tekst,waarde);
        var positie = document.forms['Form1'].opleidingen.options.length;
        document.forms['Form1'].opleidingen.options[positie] = opleidingObj;
    }
    else if(gekozen == "beroepen")
    {
        var beroepObj = new Option(tekst,waarde);
        var positie = document.forms['Form1'].beroepen.options.length;
        document.forms['Form1'].beroepen.options[positie] = beroepObj;
    }
    else
    {
        var beroepObj = new Option(tekst,waarde);
        document.getElementById(gekozen).options[0] = beroepObj;
        document.getElementById(gekozen).options[0].selected = true;
    }	
    //alert(waarde);
}

function removeListboxItem(listbox)
{
    //Removal van listboxitems
    if(listbox == "opleidingen")
    {
        for(i=0;i<document.forms['Form1'].opleidingen.options.length;i++)
        {
            if(document.forms['Form1'].opleidingen.options[i].selected)
            {
                document.forms['Form1'].opleidingen.options[i]=null;
                i = i -1;
            }
        }
        //alert(document.forms['Form1'].opleidingen.selectedIndex);
    }
    else if(listbox == "beroepen")
    {
        for(i=0;i<document.forms['Form1'].beroepen.options.length;i++)
        {
            if(document.forms['Form1'].beroepen.options[i].selected)
            {
                document.forms['Form1'].beroepen.options[i]=null;
                i = i -1;
            }
        }
        //alert(document.forms['Form1'].opleidingen.selectedIndex);
    }
    else
    {
        for(i=0;i<document.getElementById(listbox).options.length;i++)
        {
            if(document.getElementById(listbox).options[i].selected)
            {
                document.getElementById(listbox).options[i]=null;
                i = i -1;
            }
        }
        //alert(document.forms['Form1'].opleidingen.selectedIndex);
    }	
}
