// JavaScript Document
var XMLHttpRequestObject = false;
var browser = false;
  
if (window.XMLHttpRequest) { //Internet Explorer 7, Firefox, Mozilla, Safari en Opera
  XMLHttpRequestObject = new XMLHttpRequest();
}
else if (window.ActiveXObject) { //Oude internet explorers bijv. Internet Explorer 6, 5
  XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
}

function getData(dataSource, divID, nrID, valueID)
{
  if (XMLHttpRequestObject) {
    var obj = document.getElementById(divID);
	  
	XMLHttpRequestObject.open("POST", dataSource);
	XMLHttpRequestObject.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	  
	XMLHttpRequestObject.onreadystatechange = function()
	{
	  if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
	    if(nrID == 1) {
		  obj.innerHTML = XMLHttpRequestObject.responseText;
		}
		else if(nrID == 2) {
		  if (XMLHttpRequestObject.responseText) {
		    jsonData(XMLHttpRequestObject.responseText);
		  }
		}
	  }
	}
	XMLHttpRequestObject.send(valueID);
  }
}

function jsonData(data) {
  var json = eval('(' + data +')');

  for(nr=0; json.length > nr; nr++) {	  
    if (document.getElementById(json[nr].locatie)) {
	 if (json[nr].nummer == 1) {
	    if (!json[nr].teller) {
	      var obj = document.getElementById(json[nr].locatie);
	      obj.innerHTML = json[nr].text;
	    }
	  }
	  else if (json[nr].nummer == 2) {
	    if (!json[nr].teller) {
	      error(json[nr].locatie, json[nr].text, json[nr].text_1, json[nr].text_2, json[nr].text_3, json[nr].text_4);
	    }
	  }
	}
  }

  return false;
}

function show_hide(object){ 
  show = true; 
  obj1 = document.getElementById("master").getElementsByTagName("div"); 
  obj2 = document.getElementById(object); 
  
  if (obj2.style.display == '') 
  show = false; 
  
  for (i = 0; i < obj1.length; i++) { 
    obj1[i].style.display = 'none'; 
  } 

  if (show == true) 
  obj2.style.display = ''; 
}

function error(targetID, errorTekstID, targetErrorID, targetFieldID, fieldNrID, errorID) {
  var img = "<img src='figuren/validation_error.png' border='0'>";
  var errorTekst = document.getElementById(targetID);
  errorTekst.innerHTML = errorTekstID;
  
  if (errorID) {
    document.getElementById(targetErrorID).innerHTML = "&nbsp;" + img;
	document.getElementsByTagName(targetFieldID)[fieldNrID].style.borderColor = "red";
	document.getElementsByTagName(targetFieldID)[fieldNrID].style.borderStyle = "solid";
  }
}

function getFieldForm(veldID, nrID, nrFieldID) {
  var url = "";
  var strEind = encodeURIComponent(document.getElementsByTagName(veldID)[nrID].value);
  url = "&veld" + nrFieldID + "=" + strEind;
  
  return url;
}

function fieldErrNm(veldID, nrID, nrSubID) {
  if (document.getElementsByTagName("input").length > 0 && document.getElementsByTagName(veldID)[nrSubID].tagName == "INPUT") {
    var coolblue = [false,false,false,false,false,"err4",false,"err6","err7","err8","err9",false,"err11","err12",false,false,false,false,"err17",false,false,false,false,"err22","err23"];
    var coolblue_login = [false,false,false,false,false];
	var contact = ["err1","err2","err3","err4"];
	var techdepot = [false,false,false,"err4",false,"err6","err7","err8","err9",false,"err11","err12",false,false,false,false,"err17",false,false,false,false,false,"err23"];
    var techdepot_login = [false,false,false];
  }
  else if (document.getElementsByTagName("textarea").length > 0 && document.getElementsByTagName(veldID)[nrSubID].tagName == "TEXTAREA") {
	var coolblue = [false];
	var contact = ["err5"];
	var techdepot = [false];
  }
  else if (document.getElementsByTagName("select").length > 0 && document.getElementsByTagName(veldID)[nrSubID].tagName == "SELECT") {
	var contact = [false];
  }
  
  var veld = [coolblue, coolblue_login, contact, techdepot, techdepot_login];
  
  return veld[nrID][nrSubID];
}

function fieldErrTekst(nrID) {
  var coolblue = ["Error: Niet alle verplichte velden zijn ingevoerd."];
  var coolblue_login = [""];
  var contact = ["Error: Niet alle verplichte velden zijn ingevoerd."];
  var techdepot = ["Error: Niet alle verplichte velden zijn ingevoerd."];
  var techdepot_login = [""];
 
  var veld = [coolblue, coolblue_login, contact, techdepot, techdepot_login];
  
  return veld[nrID];
}

function checkField(errID, veldID, nrID, nrSubID) {
  var img = "<img src='figuren/validation_error.png' border='0'>";
  var veldErr = fieldErrNm(veldID, nrID, nrSubID);
  var err = false;
  
  if (veldErr) {
	if (document.getElementsByTagName(veldID)[nrSubID].tagName == "INPUT" && document.getElementsByTagName(veldID)[nrSubID].type == "text") {
	  if (document.getElementsByTagName(veldID)[nrSubID].value == "") {
	    err = true;
	  }
	}
	else if (document.getElementsByTagName(veldID)[nrSubID].tagName == "TEXTAREA") {
	  if (document.getElementsByTagName(veldID)[nrSubID].value == "") {
	    err = true;
	  }
	}
  }
   
  if (err) {
    document.getElementById(veldErr).innerHTML = "&nbsp;" + img;
	document.getElementsByTagName(veldID)[nrSubID].style.borderColor = "red";
	document.getElementsByTagName(veldID)[nrSubID].style.borderStyle = "solid";
	
	if(errID) {
	  document.getElementById('targetError').innerHTML = fieldErrTekst(nrID);
	}
	err_return = false;
  }
  else {
	if (veldErr) {
	  document.getElementById(veldErr).innerHTML = "";
	  document.getElementsByTagName(veldID)[nrSubID].style.borderColor = "";
	  
	  if(errID) {
	    document.getElementById('targetError').innerHTML = "";
	  }
	}
	err_return = true;
  }
  
  return err_return;
}

function checkFieldAll(dataSource, valID, errID, nrID) {	
  var save_form = true;
  var url = "&id=" + valID;
  var veldID = ["input","textarea","select"];
  
  for (i=0,r=0; veldID[i]; i++) {
    for (s=0; s<document.getElementsByTagName(veldID[i]).length; s++) {	
      var err_field = checkField(errID, veldID[i], nrID, s);

	  if (document.getElementsByTagName(veldID[i])[s].tagName == "INPUT") {
	    if (document.getElementsByTagName(veldID[i])[s].type == "text") {
	      url = url + getFieldForm(veldID[i], s, r);
	      r++;
	    }
	    if (document.getElementsByTagName(veldID[i])[s].type == "radio" && document.getElementsByTagName(veldID[i])[s].checked) {
	      url = url + getFieldForm(veldID[i], s, r);
	      r++
	    }
	  }
	  else if (document.getElementsByTagName(veldID[i])[s].tagName == "TEXTAREA") {
	    url = url + getFieldForm(veldID[i], s, r);
	    r++
	  }
	  else if (document.getElementsByTagName(veldID[i])[s].tagName == "SELECT") {
	    url = url + getFieldForm(veldID[i], s, r);
	    r++
	  }
	  
	  if (!err_field) {
	    save_form = false;
	  }
    }
  }

  if (save_form) {
    getData(dataSource, "targetTekst", 2, url);
  }
}
