var scrollPos = 32;
var requiredFields = new Object();
var requiredLabels = new Object();
var oldScrollTop = 0;
var oldClientHeight = 0;
var timeoutID=null;

function updateTopButton() {
  if (document.body.scrollTop > 0) {
    document.all("TopBtn").style.visibility = 'visible';
    document.all("TopBtn").style.pixelTop = parseInt(document.body.clientHeight)-80+parseInt(document.body.scrollTop)+scrollPos;
    }
  else {
    document.all("TopBtn").style.visibility = 'hidden';
    }
    setFooter();
  }
  
function setFooter() {
  //alert(bottom_right.offsetTop);
  if (!timeoutID) {
    whileScrolling();
    timeoutID=window.setInterval("whileScrolling()",100);
  }
  //zetten van footer op vaste hoogte
  if ((parseInt(document.body.clientHeight)-60+parseInt(document.body.scrollTop)+scrollPos) <= 574) {
    document.all('footer').style.top = 574;
    if (pagina == 'homepage') {
      document.all('linksOnder').style.pixelTop = 194;
      if (bottom_right.offsetTop > 480) discpriv.style.top = bottom_right.offsetTop;
      else discpriv.style.top = 480;
    }
  }
  //zetten van footer op variabele hoogte 
  else {
    document.all('footer').style.top = parseInt(document.body.clientHeight)-60+parseInt(document.body.scrollTop)+scrollPos;
    if (pagina == 'homepage') {
      document.all('linksOnder').style.top = parseInt(document.body.clientHeight)-440+parseInt(document.body.scrollTop)+scrollPos;
      document.all('discpriv').style.top = parseInt(document.body.clientHeight)-120+parseInt(document.body.scrollTop)+scrollPos;
    }
  }
}

function whileScrolling() {
  if ((oldScrollTop != document.body.scrollTop) || (document.body.clientHeight != oldClientHeight)) {
    if (pagina == 'homepage') {
      document.all('linksOnder').style.visibility = 'hidden';
      document.all('discpriv').style.visibility = 'hidden';
    }
    document.all('footer').style.visibility = 'hidden';
    oldScrollTop = document.body.scrollTop;
    oldClientHeight = document.body.clientHeight;
  }
  else {
    if (pagina == 'homepage') {
      document.all('linksOnder').style.visibility = 'visible';
      document.all('discpriv').style.visibility = 'visible';
    }
    document.all('footer').style.visibility = 'visible';
    window.clearInterval(timeoutID);
    timeoutID=null;
  }
}

function makeUrlFromArray(arr,baseUrl) {
  for (var i=0; i<arr.length-1; i+=2) {
    baseUrl += (i==0?"?":"&")+arr[i]+"="+arr[i+1];
  }
  return baseUrl;
}

var options = "width=480,height=360,scrollbars=yes,resizable=yes,menubar=no,status=no,toolbar=no,location=no,directories=no";


function setWindowName(){
  window.name = "main";
}

whatspopup = null;

function openWindow(URL,props) {
  
  props = props?props:options;
  window.name = "main";
  if (URL)
  {
    whatspopup = window.open(URL, 'popup', props);  // Open a new window and show the specified page
    whatspopup.focus();			  
  }  
}

/*
function openWindow(URL,props) {
  props = props?props:options;
  window.name = "main";
  
  if (URL){
    
    if(URL.indexOf("hotspot") != -1){
      if(hotspot != null) hotspot.focus();
      else {
        hotspot = window.open(URL, 'popup', props);
        hotspot.focus();
      }		   
    }
    else{
      var whatspopup = window.open(URL, 'popup', props);  // Open a new window and show the specified page
      whatspopup.focus();			  
    }
  }  
}
*/
function submitToPopup(obj,name,submitArray,properties) {
  if (!checkForm(name)) return false;
  else {
    obj.disabled = true;
    obj.style.color = '#cccccc';
    var form = document.forms[name];
    var returnArray = submitArray?submitArray:new Array();
    for (var i=0; i<form.elements.length; i++) {
      obj = form.elements[i];
      n = obj.name;
      v = obj.value;
      
      if (n != "") {
        if (obj.type == "radio" || obj.type == "checkbox") {
          if (obj.checked) {
            returnArray[returnArray.length] = n;
            returnArray[returnArray.length] = v;
          }
        }
        else {
          returnArray[returnArray.length] = n;
          returnArray[returnArray.length] = v;
        }
      }
    }
    returnArray[returnArray.length] = "popup";
    returnArray[returnArray.length] = "true";
    returnArray[returnArray.length] = "scroll";
    returnArray[returnArray.length] = "no";
    url = makeUrlFromArray(returnArray,"post.asp");
    openWindow(url,properties);
    return true;
  }
}

function submitTo(obj,name,submitArray) {
  if (!checkForm(name)) return false;
  else {
    obj.disabled = true;
    obj.style.color = '#cccccc';
    var form = document.forms[name];
    var returnArray = submitArray?submitArray:new Array();
    for (var i=0; i<form.elements.length; i++) {
      obj = form.elements[i];
      n = obj.name;
      v = obj.value;
      
      if (n != "") {
        if (obj.type == "radio" || obj.type == "checkbox") {
          if (obj.checked) {
            returnArray[returnArray.length] = n;
            returnArray[returnArray.length] = v;
          }
        }
        else {
          returnArray[returnArray.length] = n;
          returnArray[returnArray.length] = v;
        }
      }
    }
    returnArray[returnArray.length] = "result";
    returnArray[returnArray.length] = "true";
    url = makeUrlFromArray(returnArray,"post.asp");
    window.location.href = url;
    return true;
  }
}

function checkFormMacro(name, prefix) {
  obj = document.forms[name];
  invalidFields = new Array();
  invalidNames = new Array();

  for (var i=0; i < obj.elements.length; i++) {
    var elt = obj.elements[i];
    if (elt.type != null && elt.name.indexOf(prefix) == 0) {
      if (elt.type == 'hidden' || elt.type == 'text') {
        var macroElt = obj.elements['Macro.'+elt.name];
        if (macroElt != null) macroElt.value = elt.value;
      }
      if (elt.type == 'radio' && elt.checked) {
        var macroElt = obj.elements['Macro.'+elt.name];
        if (macroElt != null) macroElt.value = elt.value;
      }
    }
  }
  return checkForm(name);
}

function checkForm(name) {
  obj = document.forms[name];
  invalidFields = new Array();
  invalidNames = new Array();

  for (var i=0; i<requiredFields[name].length; i++) {

    if (obj.elements[requiredFields[name][i]].length) {
      optionChecked = false;
      for (var j=0; j<obj.elements[requiredFields[name][i]].length; j++) {
        if (obj.elements[requiredFields[name][i]][j].checked) {
          optionChecked = true;
        }
      }
      if (!optionChecked) {
        invalidFields[invalidFields.length] = obj.elements[requiredFields[name][i]][0];
        invalidNames[invalidNames.length] = requiredLabels[name][i];
      }
    }
   else if (obj.elements[requiredFields[name][i]].type != "hidden" &&
        (obj.elements[requiredFields[name][i]].value == "" ||
        (obj.elements[i].name == "UsrTab.Src") && (
        (""+obj.elements[i].value).indexOf("@")<0 ||
        (""+obj.elements[i].value).indexOf(".")<0))) { 
      invalidFields[invalidFields.length] = obj.elements[requiredFields[name][i]];
      invalidNames[invalidNames.length] = requiredLabels[name][i];
    }
  }
  if (invalidFields.length > 0) {
    msg = formMessage + " ";
    for (var i=0; i<invalidFields.length; i++) { 
      if (document.all && invalidFields[i].type == "input") {
        invalidFields[i].style.borderColor = "#ff6600";
        invalidFields[i].style.backgroundColor = "#ffeecc";
      }
      msg += (i==0?'':', ')+invalidNames[i];
    }
    if (invalidFields.length = 1) {
      if (name=='opiniepeiling')
        alert('U moet eerst stemmen...');
      else alert('Nog niet alle benodigde velden zijn ingevuld...');
    } else alert(msg);
    return false;
  }

 return (invalidFields.length == 0);
}

function hilitemap(n) {
  theElement = document.images["pict_"+n];
  S = theElement.src;
  if (S.charAt(S.length-5) == '0') theElement.src = S.slice(0,S.length-5) + '1' + S.slice(S.length-4);
  }

function restoremap(n) {
  theElement = document.images["pict_"+n];
  S = theElement.src;
  if (S.charAt(S.length-5) == '1') theElement.src = S.slice(0,S.length-5) + '0' + S.slice(S.length-4);
  }

function checkHeights() {
  elements = document.all("meetDiv");
  if(elements.length == null && elements.maat > elements.offsetHeight) elements.parentElement.style.overflowY = "hidden";
  else {
    for (var x=0; x<elements.length; x++) {
      if (elements[x].maat > elements[x].offsetHeight) elements[x].parentElement.style.overflowY = "hidden";
    }
  }
}

function showChar(id) {
  for (var i=0; i<document.all['begripHolder'].children.length; i++) 
    if (document.all['begripHolder'].children[i].className == 'holder') document.all['begripHolder'].children[i].style.display = 'none';
  for (var i=0; i<document.all['begrippenHolder'].children.length; i++) 
    if (document.all['begrippenHolder'].children[i].className == 'holder') document.all['begrippenHolder'].children[i].style.display = 'none';
  theChar = id+'';
  document.all(theChar).style.display='block';
}

function showBegrip(waarde) {
  for (var i=0; i<document.all['begripHolder'].children.length; i++) 
    if (document.all['begripHolder'].children[i].className == 'holder') document.all['begripHolder'].children[i].style.display = 'none';
   document.all(waarde).style.display='block';
}
