var $j = jQuery.noConflict();


/* TIJDELIJK VOOR 20 PROECNT ACTIE: haal img weg uit templates voor .BE*/
$j(document).ready(function ()
{
  if (($j.url.attr("host") == "nti.be") || ($j.url.attr("host") == "www.nti.be"))
  {
    $j("a.kortinghome").remove();
  }

  if (($j.url.segment(0) == "HBO") || ($j.url.segment(0) == "hbo") || ($j.url.segment(0) == "HBO.aspx"))
    $j("a.leftMenu-studieadvies").css({ display: 'block' }).attr("href", "/Contact/Gesprek-aanvragen.aspx");
  else if (($j.url.segment(0) == "MBO") || ($j.url.segment(0) == "mbo") || ($j.url.segment(0) == "MBO.aspx"))
    $j("a.leftMenu-studieadvies").css({ display: 'block' }).attr("href", "/Contact/Gesprek-aanvragen.aspx");
});



// overgenomen uit forms.js 

function onderdeelAan(fieldID)
{
  //onderdeel = 'blok' + onderdeel
  //document.getElementById(onderdeel).className='onderdeel-aan';

  var x = 1;
  var ctl = document.getElementById("blok" + x);
  while (ctl != null)
  {
    var ctl2 = document.getElementById("blok" + x);
    if (x == fieldID)
    {
      ctl.className = "fieldItem fieldSelected";
      if (ctl2 != null)
        ctl2.className = "onderdeel-aan";
    }
    else
    {
      ctl.className = "fieldItem";
      if (ctl2 != null)
        ctl2.className = "onderdeel";
    }
    x++;
    ctl = document.getElementById("blok" + x);
  }
}

function onderdeelUit(onderdeel)
{
  document.getElementById(onderdeel).className = 'onderdeel';
}

function toonIets(wat, waardoor)
{
  if (document.getElementById(waardoor).checked)
  {
    document.getElementById(wat).style.display = 'inline';
  } else
  {
    document.getElementById(wat).style.display = 'none';
  }
}

function toonHBONiveauVragen(waarde)
{
  if (waarde == 'HBO Niveau antwoord')
  {
    document.getElementById("HBONiveauVragen").style.display = 'inline';
  } else
  {
    document.getElementById("HBONiveauVragen").style.display = 'none';
  }
}

function setFocus()
{
  dezestap = document.getElementById('dezestap').value;

  var date = new Date();
  var d = date.getDate();
  var day = (d < 10) ? '0' + d : d;
  var m = date.getMonth() + 1;
  var month = (m < 10) ? '0' + m : m;
  var yy = date.getYear();
  var year = (yy < 1000) ? yy + 1900 : yy;
  vandaag = day + "-" + month + "-" + year;

  if (dezestap == 1)
  {
    document.getElementById('opleiding').focus();
    document.getElementById('startdatum').value = vandaag;
  }
  else if (dezestap == 2)
  {
    document.getElementById('geslacht').focus();
  }
  else if (dezestap == 3)
  {
    document.getElementById('betaalwijze').focus();
  }
  else if (dezestap == 4)
  {
    document.getElementById('nieuwsbrief').focus();
  }
  onderdeelAan('1');
}

function clearInput(onderdeel)
{
  if (waarde == 'dd-mm-jjjj')
  {
    document.getElementById(onderdeel).value = '';
  }
}

function showCalender(onderdeel)
{
  var cal1xx = new CalendarPopup("testdiv1");
  document.getElementById(onderdeel).showNavigationDropdowns();
}

// overgenomen uit utils.js
function addOnloadEvent(fun)
{
  var old = window.onload;
  if (old)
  {
    window.onload = function () { old(); fun(); } 
  }
  else
  {
    window.onload = fun;
  } 
}

function addEventCatcher(element, event, fun)
{
  element["on" + event] =
    function (event)
    {
      fun();
      return false;
    } 
}

// DOM utils

function innerText(element)
{
  if (element.innerText != undefined)
  {
    return element.innerText
  }
  else
  {
    var text = "";
    mapArray(element.childNodes,
      function (e)
      {
        switch (e.nodeType)
        {
          case 1: text += innerText(e); break;
          case 3: text += e.nodeValue; break;
        } 
      });
    return text
  } 
}

function elementInsertFirst(element, newChild)
{
  if (element.firstChild)
  {
    element.insertBefore(newChild, element.firstChild);
  }
  else
  {
    element.appendChild(newChild);
  } 
}


function elementInsertAfter(element, newChild, refChild)
{
  var before = refChild.nextSibling;
  if (before)
  {
    element.insertBefore(newChild, before);
  }
  else
  {
    element.appendChild(newChild);
  } 
}

function elementHasClass(element, className)
{
  if (!element.className) { return false }
  var re = new RegExp("(^|\\s+)" + className + "($|\\s+)");
  return re.exec(element.className);
}

function elementSetClass(element, className)
{
  if (!element.className)
  {
    return element.className = className
  }
  else if (!elementHasClass(element, className))
  {
    return element.className += " " + className
  } 
}

// FIXME: \b does not work when hypens are used in class    

function elementRemoveClass(element, className)
{
  if (!element.className) { return false }
  var removed = false;
  var re = new RegExp("\\s*\\b" + className + "\\b\\s*");
  element.className = element.className.replace(re,
    function (str, offset, s)
    {
      removed = true;
      return offset == 0 || str.length + offset == s.length ? "" : " "
    })
  return removed
}

function elementsWithClass(elements, className)
{
  return filterArray(elements, elementHasClass.rcurry(className));
}

function getElementsByClass(element, className, tagName)
{
  return elementsWithClass(element.getElementsByTagName(tagName || "*"),
                           className);
}

function getElementsByName(name)
{
  return filterArray(document.getElementsByTagName("*"),
    function (e) { return e.name == name; })
}

// General utils


// Return a function bound to an object
function delegate(object, methodName)
{
  return function ()
  {
    return object[methodName].apply(object, arguments);
  } 
}

function doArray(array, fun)
{
  for (var i = 0; i < array.length; i++)
  {
    fun(array[i]);
  } 
}

function mapArray(array, fun)
{
  var collect = new Array();
  for (var i = 0; i < array.length; i++)
  {
    collect.push(fun(array[i]));
  }
  return collect;
}

function filterArray(array, fun)
{
  var a = [];
  doArray(array, function (i) { if (fun(i)) { a.push(i); } });
  return a;
}

Array.prototype.contains = function (value)
{
  for (var i = 0; i < this.length; i++)
  {
    if (this[i] == value)
    {
      return true;
    } 
  }
  return false;
}

function makeArray(fakeArray)
{
  var array = [];
  for (var i = 0; i < fakeArray.length; i++)
  {
    array.push(fakeArray[i]);
  }
  return array;
}

Function.prototype.curry = function ()
{
  var args = makeArray(arguments), self = this;
  return function ()
  {
    return self.apply(self, args.concat(makeArray(arguments)));
  } 
}

Function.prototype.rcurry = function ()
{
  var args = makeArray(arguments), self = this;
  return function ()
  {
    return self.apply(self, makeArray(arguments).concat(args));
  } 
}


//overgenomen uit faq.js

//<![CDATA[
function faq(o)
{
  var e = document.getElementById(o);
  e.style.display = (e.style.display == 'none') ? 'block' : 'none';
}
//]]>
//overgenomen uit external.js
function externalLinks()
{
  if (!document.getElementsByTagName) return;
  var anchors = document.getElementsByTagName("a");
  for (var i = 0; i < anchors.length; i++)
  {
    var anchor = anchors[i];
    if (anchor.getAttribute("href") &&
       anchor.getAttribute("rel") == "external")
      anchor.target = "_blank";
  }
}
window.onload = externalLinks;

// oorspronklijk glob.js

var debug = false;

function fixRSS()
{
  if (document.URL.indexOf('&M=News') != -1)
  {
    var newUrl = document.URL;

    newUrl = newUrl.replace("&M=News", "");
    location.href = newUrl;
  }
}

fixRSS();
function showAssistant(cat_desc, cat_id, tr, lg, ch, obj_id, question, showcatid)
{
  var h = 600;
  var w = 350;
  var scrl = 820;
  var scrt = 20;
  var windowname = "hylo_assistant";
  var installpath = "http://89.105.192.44/nti/assistant/";
  //var scrw=(screen.width/2)-(w/2);
  //var scrh=(screen.height/2)-(h/2);

  if (tr == "" || tr == undefined)
  {
    tr = "-1";
  }
  if (ch == "" || ch == undefined)
  {
    ch = "-1";
  }
  if (lg == "" || lg == undefined)
  {

    lg = "-1";
  }

  if (obj_id > 0 && obj_id != undefined)
  {
    var location = installpath + "selfservice/hylo.search.asp?action=show&obj_id=" + obj_id + "&cat_desc=" + cat_desc + "&cat=" + cat_id + "&tr=" + tr + "&lg=" + lg + "&ch=" + ch;
  }
  else if (question != "" && question != undefined)
  {
    var location = installpath + "selfservice/hylo.search.asp?action=results&cat_desc=" + cat_desc + "&cat=" + cat_id + "&tr=" + tr + "&lg=" + lg + "&ch=" + ch + "&org=" + question + "&aw=" + question;
  }
  else
  {
    var location = installpath + "selfservice/hylo.search.asp?cat_desc=" + cat_desc + "&cat=" + cat_id + "&tr=" + tr + "&lg=" + lg + "&ch=" + ch + "&showcatid=" + showcatid;
  }
  window.open(location, windowname, ('toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,copyhistory=0,left=' + scrl + ',top=' + scrt + ',width=' + w + ',height=' + h));
}

function showAss()
{
  var code;
  var catid;
  var opleidingnaam;

  try
  {
    code = document.getElementById("hlcode").value;
    opleidingnaam = document.getElementById("OpleidingNaam").value;

    catid = code;

    if (code.indexOf(",") != -1)
    {
      var arr = code.split(",");
      catid = arr[0];
    }



    showAssistant(opleidingnaam, code, '', '', '', '', '', catid);
  }
  catch (e)
  {
    if (debug) alert(e.message);
    //showAssistant('Hylo', '', '', '', '', '', '','');
  }
}



function inschrijven()
{
  var cursusNummerNti;
  var cursusCode;

  try
  {
    if (document.getElementById("cursusgroepid") == null)
    {
      location.href = "/Studeren-bij-het-NTI/Inschrijven.aspx?clear=all";
      return;
    }

    cursusNummerNti = document.getElementById("cursusgroepid").value;
    cursusCode = document.getElementById("cursusnummer").value;

    location.href = "/Studeren-bij-het-NTI/Inschrijven.aspx?CursusgroepId=" + cursusNummerNti + "&CursusNummer=" + cursusCode;
  }
  catch (e)
  {
    if (debug) alert(e.message);

    location.href = "/Studeren-bij-het-NTI/Inschrijven.aspx?clear=all";
  }

}
function studiegids()
{
  var cursusNummerNti;

  try
  {
    if (document.getElementById("cursusgroepid") == null)
    {
      location.href = "/Studeren-bij-het-NTI/Studiegids-aanvragen.aspx";
      return;
    }

    cursusNummerNti = document.getElementById("cursusgroepid").value;
    location.href = "/Studeren-bij-het-NTI/Studiegids-aanvragen.aspx?CursusgroepId=" + cursusNummerNti;
  }
  catch (e)
  {
    if (debug) alert(e.message);

    location.href = "/Studeren-bij-het-NTI/Studiegids-aanvragen.aspx";
  }

}

function createXHR()
{
  var request = false;
  try
  {
    request = new ActiveXObject('Msxml2.XMLHTTP');
  }
  catch (err2)
  {
    try
    {
      request = new ActiveXObject('Microsoft.XMLHTTP');
    }
    catch (err3)
    {
      try
      {
        request = new XMLHttpRequest();
      }
      catch (err1)
      {
        request = false;
      }
    }
  }
  return request;
}



function RequestAddress(cPostcodeID, cHuisnummerID, cStrId, cPltId, cMeldingId, oForce)
{
  var xhr = createXHR();
  var data;
  var response;
  var cPostcode;
  var cHuisnummer;
  var cPostcodeValue;
  var cHuisnummerValue;

  try
  {
    cPostcode = document.getElementById(cPostcodeID);
    cHuisnummer = document.getElementById(cHuisnummerID);

    cPostcodeValue = cPostcode.value;
    cHuisnummerValue = cHuisnummer.value;


    if (cPostcodeValue.length < 6)
      return;

    if (cPostcodeValue == "____ __")
      return;

    if (cHuisnummerValue.length == 0)
      return;

    if (cHuisnummerValue == "0")
    {
      try
      {
        cHuisnummer.value = "";
        return;
      }
      catch (e)
      {
      }
    }

    document.getElementById(cMeldingId).innerHTML = "";

    data = "postcode=" + cPostcodeValue + "&huisnummer=" + cHuisnummerValue;

    //SetStraatPlaats2(cStrId, cPltId, cMeldingId, "bezig met ophalen van gegevens", "bezig met ophalen van gegevens", "");

    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = xhr.responseText;

          if (response.match('|') != null)
          {
            SetStraatPlaats(cStrId, cPltId, cMeldingId, response.split("|")[0], response.split("|")[1], response.split("|")[2]);
            return;
          }
          else
            return;
        }
        else
          return;
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);


  }
  catch (e)
  {
    //if (debug) alert(e.message);
  }
}

function SetStraatPlaats(strControlId, plsControlId, msgControlId, straatnaam_value, plaatsnaam_value, melding)
{
  var cStreet = document.getElementById(strControlId);
  var cPlaats = document.getElementById(plsControlId);
  var cMelding = document.getElementById(msgControlId);

  try
  {
    if (straatnaam_value === undefined)
    {
      cStreet.value = "";
    }
    else
    {
      if (straatnaam_value.length > 100)
        cStreet.value = "";
      else
        cStreet.value = straatnaam_value;
    }

    if (plaatsnaam_value === undefined)
    {
      cPlaats.value = "";
    }
    else
    {
      if (plaatsnaam_value.length > 100)
        cPlaats.value = "";
      else
        cPlaats.value = plaatsnaam_value;
    }


    if (melding === undefined) return;

    if (melding.length > 100)
    {
      cMelding.innerHTML = "Er is een fout opgetreden.";
    }
    else if (melding.length > 4)
    {
      cMelding.innerHTML = melding + " Woont u in Belgi?? <a href=\"http://www.nti.be\">klik dan hier.</a>";
    }
    else
    {
      cMelding.innerHTML = "";
    }
  }
  catch (e)
  {
    if (debug) alert("setstraat" + e.message);
  }
}
function SetStraatPlaats2(strControlId, plsControlId, msgControlId, straatnaam_value, plaatsnaam_value, melding)
{
  // span field
  var cStreet = document.getElementById("sp" + strControlId);
  var cPlaats = document.getElementById("sp" + plsControlId);

  // hidden field
  var hiddencStreet = document.getElementById(strControlId);
  var hiddencPlaats = document.getElementById(plsControlId);

  var cMelding = document.getElementById(msgControlId);

  try
  {
    hiddencStreet.value = "";
    hiddencPlaats.value = "";

    //straatnaam
    if (straatnaam_value === undefined)
    {
      cStreet.innerHTML = "verschijnt automatisch";
    }
    else
    {
      if (straatnaam_value.length > 100)
        cStreet.innerHTML = "verschijnt automatisch";
      else
      {
        cStreet.innerHTML = straatnaam_value;
        hiddencStreet.value = straatnaam_value;
      }
    }

    //plaatsnaam
    if (plaatsnaam_value === undefined)
    {
      cPlaats.innerHTML = "verschijnt automatisch";
    }
    else
    {
      if (plaatsnaam_value.length > 100)
        cPlaats.innerHTML = "verschijnt automatisch";
      else
      {
        cPlaats.innerHTML = plaatsnaam_value;
        hiddencPlaats.value = plaatsnaam_value;
      }
    }

    if (melding === undefined)
      return;


    if (melding.length > 100)
    {
      cMelding.innerHTML = "Er is een fout opgetreden.";
    }
    else
    {
      cMelding.innerHTML = melding;
    }
  }
  catch (e)
  {
    if (debug) alert("setstraat" + e.message);
  }
}
function checkcomment()
{

  var ret = true;

  var humanizer = document.getElementById("humanizer").value;

  if (humanizer.length != 0)
  {
    ret = false;
    alert("Neem telefonisch contact op met NTI. Bel 071 561 00 77 ");
    //document.getElementById("ErrorSpam").style.display = "inline";
  }

  return ret;

}

var userValid = false;
var sendform = false;

function CustomValidate(guid, submitform)
{
  try
  {
    var valid = new Validation('form', { onSubmit: false });

    manifestElementControl("ciMessage", "setTEXT", "", "");

    if (valid.validate())
    {
      manifestElementControl("ciMessage", "setTEXT", "", "valideer");
      CheckCaptcha(guid);
    }

    return false;
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}

function CheckCaptcha(guid)
{
  var xhr = createXHR();
  var data;
  var response;
  var cUserData;
  var cUserDataID = "verify_code";

  try
  {
    cUserData = document.getElementById(cUserDataID);

    if (cUserData.value.replace(/^\s+|\s+$/g, "").length == 0)
    {
      userValid = false;
      manifestElementControl("ciMessage", "setTEXT", "", "Voer eerst de code in!");

      return userValid;
    }

    data = "guid=" + guid + "&verify=" + cUserData.value;

    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        captchacheckrunning = false;

        if (xhr.status == 200)
        {
          response = xhr.responseText;

          if (response.replace(/^\s+|\s+$/g, "").length > 0)
          {
            manifestElementControl("ciMessage", "setTEXT", "", response);
            manifestElementControl("ci", "setTEXT", "", "<img src='?guid=" + guid + "&purge=true' />");

            userValid = false;

            return userValid;
          }
          else
          {
            //manifestElementControl("ciMessage","setTEXT","","versturen gegevens.");
            manifestElementControl("ciMessage", "setTEXT", "", "");
            document.form.submit();
          }
        }
        else
        {
          userValid = false;
          return userValid;
        }
      }
    };


    xhr.open("GET", "?" + data, true);
    xhr.send(null);

    return userValid;
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}


function cirefresh(guid)
{
  var xhr = createXHR();
  var data;
  var response;

  var randomnumber = 0;

  try
  {
    randomnumber = Math.floor(Math.random() * 1000);
  }
  catch (e)
  {
  }

  try
  {
    $j('#ci').html("moment geduld alstublieft");
    data = "guid=" + guid + "&renew=true";

    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = xhr.responseText;
          $j('#ci').html("<img src='?guid=" + guid + "&rnd=" + randomnumber + "' />");
        }
        else
        {
          return;
        }
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}

function addEvtLis(o, type, handler)
{
  if (o.attachEvent)
  {
    o.attachEvent("on" + type, handler);
  }
  else if (o.addEventListener)
  {
    o.addEventListener(type, handler, false);
  }

}

function formOnSubmitHandler(evt)
{
  var validationPassed = true;

  //your code

  //prevent form submission
  if (!validationPassed)
  {
    if (evt.preventDefault) evt.preventDefault();
    evt.returnValue = false;
  }

}

//set handler for form submit
//addEvtLis(document.myFormName, "submit", formOnSubmitHandler); 

function manifestElementControl(whichElement, whichFunction, whichProperty, whichValue)
{
  /* ----------------------------------------------------------------- //
  setCSS: Available list of CSS elements you can control:
	
  TEXT PROPERTIES
  ---------------
  textTransform: 			[capitalize,uppercase,lowercase,none]
  verticalAlign: 			[baseline,sub,super,top,text-top,middle,bottom,text-bottom]
  textAlign: 				[left,right,center,justify]
  textIndent:				[0px]
  lineHeight:				[0px]
  wordSpacing:			[0px]
  letterSpacing:			[0px]
  textDecoration:			[underline,overline,line-through,blink,none]
		
  FONT PROPERTIES
  ---------------
  fontFamily:				[verdana,arial,serif,sans-serif,cursive,fantasy,monospace]
  fontStyle:				[normal,italic,oblique]
  fontVariant:			[small-caps]
  fontWeight:				[lighter,normal,bold,bolder,100,200,300,400,500,600,700,800,900]
  fontSize:				[10px,150%,larger,smaller,xx-small,x-small,small,medium,large,x-large,xx-large]
		
  COLOR AND BACKGROUND PROPERTIES
  -------------------------------
  color:					[red,#FF0000,*rgb(R%, G%, B%),*rgb(R, G, B)]
  backgroundColor:		[red,#FF0000,*rgb(R%, G%, B%),*rgb(R, G, B)]
  backgroundImage:		[url(../images/myimage.gif)]
  backgroundRepeat:		[repeat,repeat-x,repeat-y,no-repeat]
  backgroundAttachment:	[scroll,fixed]
  backgroundPosition:		[vertical % horizontal %, center center (use: top,center,bottom,left,center,right)]
		
  PLACEMENT PROPERTIES
  --------------------
  marginTop:				[10px,auto]
  marginRight:			[10px,auto]
  marginBottom:			[10px,auto]
  marginLeft:				[10px,auto]
  paddingTop:				[10px,auto]
  paddingRight:			[10px,auto]
  paddingBottom:			[10px,auto]
  paddingLeft:			[10px,auto]
  borderWidth:			[thin,medium,thick,none]
  borderStyle:			[none,dotted,dashed,solid,double,groove,ridge,inset,outset]
  height:					[100px]
  width:					[100px]
  float:					[right,left,none]
  clear:					[right,left,both,none]
  top:					[10px]
  right:					[10px]
  bottom:					[10px]
  left:					[10px]
  zIndex:					[1]
		
  CLASSIFICATION PROPERTIES
  -------------------------
  display:				[none,block,inline,list-item]
  visibility:				[hidden,visible,collapse]
  whiteSpace:				[normal,pre,no-wrap]
  listStyleType:			[disc,circle,square,decimal,lower-roman,upper-roman,lower-alpha,upper-alpha]
  listStyleImage:			[url(../images/myimage.gif)]
  listStylePosition:		[inside,outside]
		
  EXAMPLES
  --------
  manifestElementControl("myElementID","setCSS","visibility","hidden");
  manifestElementControl("myElementID","setCSS","visibility","visible");
  manifestElementControl("myElementID","setCSS","left","100px");
  manifestElementControl("myElementID","setCSS","top","100px");
  manifestElementControl("myElementID","setCSS","backgroundColor","#466FC7");
  manifestElementControl("myElementID","setCSS","color","#FFFFFF");
  manifestElementControl("myElementID","setCSS","zIndex","1");
		
  manifestElementControl("leftBar,loader,Header","setCSS,setCSS,setCSS","visibility,visibility,backgroundColor","hidden,hidden,#466FC7");
  manifestElementControl("loader","setCSS","visibility","hidden");
	
  // ----------------------------------------------------------------- //
  setTEXT: Auto sets whichProperty to 'innerHTML'
	
  EXAMPLES
  --------
  manifestElementControl("myElementID","setTEXT","","<p>This is some text.</p>");
  manifestElementControl("myElementID","setTEXT","","<table><tr><td>This is some text.</td></tr></table>");
		
  // ----------------------------------------------------------------- */
  var ns6 = document.getElementById && !document.all;
  var ie = document.all;

  var whichElementArray = whichElement.split(",");
  var whichFunctionArray = whichFunction.split(",");
  var whichPropertyArray = whichProperty.split(",");
  var whichValueArray = whichValue.split(",");

  for (var i = 0; i < whichElementArray.length; i++)
  {
    if (ie)
    {
      if (whichFunctionArray[i] == "setCSS") { eval("document.all." + whichElementArray[i] + ".style." + whichPropertyArray[i] + " = '" + whichValueArray[i] + "'"); }
      if (whichFunctionArray[i] == "setTEXT") { eval("document.all." + whichElementArray[i]).innerHTML = whichValueArray[i]; }
    }
    else if (ns6)
    {
      if (whichFunctionArray[i] == "setCSS") { eval("document.getElementById('" + whichElementArray[i] + "').style." + whichPropertyArray[i] + " = '" + whichValueArray[i] + "'"); }
      if (whichFunctionArray[i] == "setTEXT") { document.getElementById(whichElementArray[i]).innerHTML = whichValueArray[i]; }
    }
  }
}

var moment_geduld = "<span>moment geduld</span>";
var eerst_keuze_maken = "<span>Maak eerst hierboven uw keuze.</span>";
var kies_niveau = "<span>Kies eerst opleidingsniveau</span>";

function ClearFields(vanaf)
{
  if (vanaf <= -1)
    $('categorielist').update(kies_niveau);
  GetHeaderText("STD");
  if (vanaf <= 0)
  {
    $('cursusgroeplist').update(eerst_keuze_maken);

    try
    {
      $('ww_cursusgroep').update("");
    }
    catch (e)
    {
      // ignore error
    }
  }
  if (vanaf <= 1)
  {

    $('vrijstellingheader').hide();
    $('vrijstellingrow').hide();
    $('vooropleidingheader').hide();
    $('vooropleidingrow').hide();
    $('workshoprow').hide();
    $('startdatumrow').show();
    $('workshopheader').hide();
    $('aktie_text').update("");

    $('opleidinglist').update(eerst_keuze_maken);

    try
    {
      $('ww_cursusgroep').update("");
    }
    catch (e)
    {
      // ignore error
    }
  }

  if (vanaf <= 2)
  {
    $('studietempolist').update(eerst_keuze_maken);

    try
    {
      $('ww_cursusnaam').update("");
    }
    catch (e)
    {
      // ignore error
    }
  }

  if (vanaf <= 3)
  {
    try
    {
      $('ww_studietempo').update("");
      $('ww_totaallesgeld').update("");
      $('ww_prijspertermijn').update("");
      $('ww_extrakosten').update("");
      $('ww_lesgeldprompt').update("");
      $('aktie_text').update("");
      $('ww_welkomskado').update("");
    }
    catch (e)
    {
      // ignore error
    }
  }

  ClearChoice(vanaf + 1);
}
function ClearChoice(vanaf)
{
  var xhr = createXHR();
  var data;
  var response;

  try
  {
    data = "clearchoice=" + vanaf;
    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = xhr.responseText;

        }
        else
        {
          return;
        }
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function GetCategorielist(opleidingsniveauid)
{
  var xhr = createXHR();
  var data;
  var response;

  try
  {
    ClearFields(0);

    $('categorielist').update(moment_geduld);
    data = "getcategorielist=" + opleidingsniveauid;
    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = RemoveReturnLinefeed(xhr.responseText);
          $('categorielist').update(response);
          if (window.Cobrowser)
          {
            setTimeout("window.Cobrowser._ajaxRefresh()", 2000);
          }
        }
        else
        {
          return;
        }
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function GetCursusgroeplist(categorieid)
{
  var xhr = createXHR();
  var data;
  var response;

  try
  {
    ClearFields(1);
    $('cursusgroeplist').update(moment_geduld);
    data = "getcursusgroeplist=" + categorieid;
    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = RemoveReturnLinefeed(xhr.responseText);
          $('cursusgroeplist').update(response);
          if (window.Cobrowser)
          {
            //	alert('Is er');
            //	  setTimeout("window.Cobrowser._ajaxRefresh()",2000);
          }

        }
        else
        {
          return;
        }
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function GetOpleidinglist(cursusgroepid)
{
  var xhr = createXHR();
  var data;
  var response;

  try
  {
    $('ww_cursusgroep').update("");
  }
  catch (e)
  {
    // ignore error
  }
  try
  {
    ClearFields(2);
    $('opleidinglist').update(moment_geduld);
    data = "getopleidinglist=" + cursusgroepid;
    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = RemoveReturnLinefeed(xhr.responseText);


          $('opleidinglist').update(response);


          try
          {
            if (document.getElementById('aantal_cursussen').value == "1")
              kiesStudieTempo();
          }
          catch (e)
          {
            if (debug) alert(e.message);
          }

          try
          {
            var cursusgroepnaam = $j("#cursusgroep option:selected").text();
            $('ww_cursusgroep').update(cursusgroepnaam);
          }
          catch (e)
          {
            if (debug) alert(e.message);
          }
          if (window.Cobrowser)
          {
            //	alert('Is er');
            //	  setTimeout("window.Cobrowser._ajaxRefresh()",2000);
          }
        }
        else
        {
          return;
        }
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function GetVooropleidinglist(cursusnummer)
{
  var xhr = createXHR();
  var data;
  var response;
  var aantal;

  try
  {
    //$('vooropleidinglist').update("");
    data = "getvooropleidinglist=" + cursusnummer;

    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = RemoveReturnLinefeed(xhr.responseText);

          $('vooropleidinglist').update(response);
          aantal = parseInt(document.getElementById('aantal_vooropleiding').value)

          if (aantal > 0)
          {
            $('vooropleidingheader').show();
            $('vooropleidingrow').show();
          }
          else
          {
            $('vooropleidingheader').hide();
            $('vooropleidingrow').hide();
          }
        }
        else
        {
          return;
        }
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function GetWorkshoplist(cursusnummer)
{
  var xhr = createXHR();
  var data;
  var response;
  var aantal;

  try
  {
    $('WorkshopGeenPlek').hide();
    $('workshoplist').update(moment_geduld);
    data = "getworkshoplist=" + cursusnummer;

    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = RemoveReturnLinefeed(xhr.responseText);

          $('workshoplist').update(response);
          aantal = parseInt(document.getElementById('aantal_workshop').value)
          if (aantal > 0)
          {
            $('WorkshopGeenPlek').hide();
            //					$('startdatumrow').hide();
            $('workshopheader').show();
            $('workshoprow').show();

          }
          else
          {
            $('workshoprow').show();
            //						$('startdatumrow').show();
            $('workshopheader').show();
            $('WorkshopGeenPlek').show();
          }
        }
        else
        {
          return;
        }
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function GetStudietempoList(cursusnummer)
{
  var xhr = createXHR();
  var data;
  var response;

  try
  {
    $('ww_cursusnaam').update("");
  }
  catch (e)
  {
    // ignore error
  }

  try
  {
    ClearFields(3);
    $('studietempolist').update(moment_geduld);

    data = "getstudietempolist=" + cursusnummer;
    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = RemoveReturnLinefeed(xhr.responseText);
          $('studietempolist').update(response);

          if (document.getElementById('aantal_tempo').value == "1")
            GetStudietempo();

          try
          {
            $('ww_cursusnaam').update(document.getElementById('selected_cursusnaam').value);
          }
          catch (e)
          {
            // ignore error
          }
        }
        else
        {
          return;
        }

      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function GetStudietempo()
{
  var xhr = createXHR();
  var data;
  var response;
  var studietempoid;
  var cursusnummer;
  var lesgeldprompt = "Indicatie lesgeld";
  var totaallesgeld = 0;
  var sTotaallesgeld = "";

  try
  {
    studietempoid = Form.getInputs('form', 'radio', 'studietempo').find(function (radio) { return radio.checked; }).value;
  }
  catch (e)
  {
    studietempoid = document.getElementById('studietempo').value;
  }

  try
  {
    cursusnummer = Form.getInputs('form', 'radio', 'opleiding').find(function (radio) { return radio.checked; }).value;
  }
  catch (e)
  {
    cursusnummer = document.getElementById('opleiding').value;
  }

  try
  {
    $('ww_studietempo').update("");
    $('ww_totaallesgeld').update("");
    $('ww_prijspertermijn').update("");
    $('ww_extrakosten').update("");
    $('ww_lesgeldprompt').update("");
    $('ww_welkomskado').update("");
    $('aktie_text').update("");
  }
  catch (e)
  {
    // ignore error
  }

  try
  {
    data = "getstudietempo=" + studietempoid + "&cursusnummer=" + cursusnummer;

    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = RemoveReturnLinefeed(xhr.responseText);

          try
          {
            if (response.indexOf("|") != -1)
            {

              var arr = response.split("|")

              $('ww_studietempo').update(arr[0]);

              $('ww_totaallesgeld').update("&euro; " + arr[1]);

              sTotaallesgeld = arr[1];

              if (arr.length >= 3)
              {
                if (arr[2].length > 0)
                  $('ww_prijspertermijn').update("&euro; " + arr[2]);
              }

              if (arr.length >= 4)
              {
                if (arr[3].length > 0)
                  $('ww_extrakosten').update("Extra kosten &euro; " + arr[3]);
              }
              if (arr.length >= 5)
              {
                if (arr[4].length > 0)
                {
                  if (arr[4] != "0")
                    lesgeldprompt = lesgeldprompt + " met korting";
                }
              }

              $j('#ww_lesgeldprompt').html(lesgeldprompt);

              // cadeau
              try
              {

                if (typeof sTotaallesgeld !== 'undefined')
                {
                  sTotaallesgeld = sTotaallesgeld.replace(".", "") // remove thousand separator
                  sTotaallesgeld = sTotaallesgeld.replace(",", ".") //make dot as decimal separator
                  totaallesgeld = parseFloat(sTotaallesgeld);

                  if (totaallesgeld > aktieminlesgeld)
                  {
                    setTimeout("GetAktieText(cursusniveau, cursusgroepid)", 1000)
                    //GetAktieText(cursusniveau, cursusgroepid);
                  }
                }

              }
              catch (e)
              {
                if (debug) alert(e.message);
              }
            }
          }
          catch (e)
          {
            if (debug) alert(e.message);
          }
        }
        else
        {
          return;
        }

      }
    };



    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function SetAndGetStudietempo()
{
  var xhr = createXHR();
  var data;
  var response;
  var studietempoid;

  try
  {
    studietempoid = Form.getInputs('form', 'radio', 'studietempo').find(function (radio) { return radio.checked; }).value;
  }
  catch (e)
  {
    studietempoid = document.getElementById('studietempo').value;
  }

  try
  {
    $('ww_studietempo').update("");
    $('ww_totaallesgeld').update("");
  }
  catch (e)
  {
    // ignore error
  }

  try
  {
    data = "setandgetstudietempo=" + studietempoid;
    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = RemoveReturnLinefeed(xhr.responseText);

          try
          {
            if (response.indexOf("|") != -1)
            {
              var arr = response.split("|")
              $('ww_studietempo').update(arr[0]);
              $('ww_totaallesgeld').update("&euro; " + arr[1]);
            }
          }
          catch (e)
          {
            // ignore error
          }
        }
        else
        {
          return;
        }

      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function GetAktieText(cursusniveau, cursusgroepid)
{
  var xhr = createXHR();
  var data;
  var response;

  try
  {
    //$('aktie_text').update("");

    data = "getaktietext=" + cursusniveau + "&cursusgroepid=" + cursusgroepid;
    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = RemoveReturnLinefeed(xhr.responseText);
          $('aktie_text').update(response);
          SetActieClickEvent();
        }
        else
        {
          return;
        }

      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function GetAktieText2(cursusniveau, cursusgroepid)
{
  var xhr = createXHR();
  var data;
  var response;

  try
  {
    //$('aktie_text').update("");

    data = "getaktietext=" + cursusniveau + "&cursusgroepid" + cursusgroepid;
    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = RemoveReturnLinefeed(xhr.responseText);
          $('aktie_text').update(response);
        }
        else
        {
          return;
        }
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function RemoveReturnLinefeed(raw)
{
  var clean;

  try
  {
    clean = raw.replace("\r", '');
    clean = clean.replace("\n", '');

    return clean;
  }
  catch (e)
  {
    return raw;
  }
}
function GetHeaderText(cursusniveau)
{
  var xhr = createXHR();
  var data;
  var response;

  try
  {
    //$('text_header').update("");

    data = "getheadertext=" + cursusniveau;
    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = xhr.responseText;
          $('text_header').update(response);
        }
        else
        {
          return;
        }
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}
function GetCursusNiveau(cursusnummer)
{
  var xhr = createXHR();
  var data;
  var response;

  try
  {
    data = "getcursusniveau=" + cursusnummer;
    xhr.onreadystatechange = function ()
    {
      if (xhr.readyState == 4)
      {
        if (xhr.status == 200)
        {
          response = xhr.responseText;
          cursusniveau = RemoveReturnLinefeed(response);

          SetRestOfPage(cursusniveau, cursusnummer);
        }
        else
        {
          return;
        }
      }
    };

    xhr.open("GET", "default.aspx?" + data, true);
    xhr.send(null);
  }
  catch (e)
  {
    if (debug) alert(e.message);
  }
}

function SetRestOfPage(niveau, cursusnummer)
{
  var vrijstelling = "HBO, MB1, OBS, MBA, MBO, MBP, UNI";
  var workshop = "MWS, HWS";

  if (vrijstelling.indexOf(niveau) != -1)
  {
    $('vrijstellingheader').show();
    $('vrijstellingrow').show();
  }
  else
  {
    $('vrijstellingheader').hide();
    $('vrijstellingrow').hide();
  }

  if (workshop.indexOf(niveau) != -1)
  {
    $('startdatumrow').hide();
    GetWorkshoplist(cursusnummer);
    $('workshoprow').show();
  }
  else
  {
    $('startdatumrow').show();
    $('workshoprow').hide();
  }


  //GetAktieText(niveau, cursusgroepid);
  GetHeaderText(niveau);
  document.getElementById('CursusNiveau').value = niveau;

}
function SetStartdatum(val)
{
  try
  {
    if (val.length > 0)
    {
      $('ww_startdatum').update("Startdatum " + val);
    }
    else
      $('ww_startdatum').update("");
  }
  catch (e)
  {
    if (debug) return e.message;
  }
}

function getQuerystring(key, default_)
{
  if (default_ == null) default_ = "";
  key = key.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
  var regex = new RegExp("[\\?&]" + key + "=([^&#]*)");
  var qs = regex.exec(window.location.href);
  if (qs == null)
    return default_;
  else
    return qs[1];
}

function showDialog(welkeurl, Pagtitel)
{
  $j("#divId").dialog("open");
  $j("#divId").dialog('option', 'title', Pagtitel);
  $j("#modalIframeId").attr("src", welkeurl);
  return false;
}

$j(document).ready(function ()
{
  $j("#divId").dialog({
    autoOpen: false,
    modal: true,
    bgiframe: true,
    height: 600,
    width: 800,
    resizable: true,
    closeOnEscape: true
  });

  if ($j("#opleidingenindex.accordion").length > 0)
  {
    $j('#opleidingenindex.accordion h2 a, #opleidingenindex.accordion h2 span').click(function ()
    {
      if ($j(this).parent(".open").length == 0)
      {
        $j(this).parent().next().slideToggle(0);
        $j(this).parent().addClass("open");
      }
      else
      {
        $j(this).parent().next().slideToggle(0, function ()
        {
          $j(this).prev().removeClass("open");
        });
      }
      return false;
    }).parent().next().hide();
  }

  relNoFollow();
});





/* NetSociety JSlink stuff START */
function HasClassName(objElement, strClass)
{
  if (objElement.className)
  {
    var arrList = objElement.className.split(' ');
    var strClassUpper = strClass.toUpperCase();
    for (var i = 0; i < arrList.length; i++)
    {
      if (arrList[i].toUpperCase() == strClassUpper)
      {
        return true;
      }
    }
  }
  return false;
}

function AddClassName(objElement, strClass, blnMayAlreadyExist)
{
  if (objElement.className)
  {
    var arrList = objElement.className.split(' ');
    if (blnMayAlreadyExist)
    {
      var strClassUpper = strClass.toUpperCase();
      for (var i = 0; i < arrList.length; i++)
      {
        if (arrList[i].toUpperCase() == strClassUpper)
        {
          arrList.splice(i, 1);
          i--;
        }
      }
    }
    arrList[arrList.length] = strClass;
    objElement.className = arrList.join(' ');
  } else
  {
    objElement.className = strClass;
  }
}
function RemoveClassName(objElement, strClass)
{
  if (objElement.className)
  {
    var arrList = objElement.className.split(' ');
    var strClassUpper = strClass.toUpperCase();
    for (var i = 0; i < arrList.length; i++)
    {
      if (arrList[i].toUpperCase() == strClassUpper)
      {
        arrList.splice(i, 1);
        i--;
      }
    }
    objElement.className = arrList.join(' ');
  }
}

function relNoFollow()
{
  var JSLinks = document.getElementsByTagName('span');
  if (JSLinks.length > 0)
  {
    for (var i = 0; i < JSLinks.length; i++)
    {
      if ((JSLinks[i].title.indexOf('http://') != -1) || (JSLinks[i].title.indexOf('https://') != -1) || (JSLinks[i].title.indexOf('nti-content-ns') != -1))
      {
        JSLinks[i].title = JSLinks[i].title.replace('nti-content-ns', '');
        AddClassName(JSLinks[i], 'jslink');
        JSLinks[i].onmouseout = JSLinkMouseOut;
        JSLinks[i].onmouseover = JSLinkMouseOver;
        if (HasClassName(JSLinks[i], 'blank'))
        {
          JSLinks[i].onclick = JSLinkClickNew;
        } else
        {
          JSLinks[i].onclick = JSLinkClick;
        }
      }
    }
  }
  var JSImageLinks = document.getElementsByTagName('img');
  if (JSImageLinks.length > 0)
  {
    for (var i = 0; i < JSImageLinks.length; i++)
    {
      if ((JSImageLinks[i].title.indexOf('http://') != -1) || (JSImageLinks[i].title.indexOf('https://') != -1) || (JSImageLinks[i].title.indexOf('nti-content-ns') != -1))
      {
        JSLinks[i].title = JSLinks[i].title.replace('nti-content-ns', '');
        AddClassName(JSImageLinks[i], 'jslink');
        JSImageLinks[i].onmouseout = JSLinkMouseOut;
        JSImageLinks[i].onmouseover = JSLinkMouseOver;
        if (HasClassName(JSImageLinks[i], 'blank'))
        {
          JSImageLinks[i].onclick = JSLinkClickNew;
        } else
        {
          JSImageLinks[i].onclick = JSLinkClick;
        }
      }
    }
  }
}

function JSLinkMouseOver()
{
  RemoveClassName(this, 'jslink');
  AddClassName(this, 'jslink-hover');
}

function JSLinkMouseOut()
{
  RemoveClassName(this, 'jslink-hover');
  AddClassName(this, 'jslink');
}

function JSLinkClick()
{
  var JSLinkWindow = window.open(this.title, '_top', '');
}

function JSLinkClickNew()
{
  var JSLinkWindow = window.open(this.title, '_blank', '');
}


function addLoadEvent(func)
{
  var oldonload = window.onload;
  if (typeof window.onload != 'function')
  {
    window.onload = func;
  } else
  {
    window.onload = function ()
    {
      oldonload();
      func();
    }
  }
}

//addLoadEvent(relNoFollow);

/* NetSociety JSlink stuff END */
