$(document).ready(function(e) {
		/*om linkje tekstnetwiki oranje gekleurd te houden*/
		var arr = document.getElementsByTagName("a");
		for (i=0;i<arr.length;i++) {
			var str = $(arr[i]).html();					
			if(str.indexOf("tekstnetwiki")!=-1) {
				//alert("index="+str.indexOf("tekstnetwiki"));
				$(arr[i]).css('color','#EE7A0C');
			}
		}	
});


var xmlHttp;
var str = "";

function createXMLHttpRequest() {
    if (window.ActiveXObject) {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    else if (window.XMLHttpRequest) {
        xmlHttp = new XMLHttpRequest();
    }
}

function refreshTekstList() {
    var tekstsoortgroep = document.getElementById("tekstsoortgroep").value;

    if(tekstsoortgroep == "") {
        clearList();
        return;
    }

    var url = "RefreshSpecialistList.php?"
        + createQueryString(tekstsoortgroep) + "&ts=" + new Date().getTime();

    createXMLHttpRequest();
    xmlHttp.onreadystatechange = handleStateChange;
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
}

function createQueryString(tekstsoortgroep) {
	 //alert(tekstsoortgroep);
    var queryString = "tekstsoortgroep=" + tekstsoortgroep;
    return queryString;
}

function handleStateChange() {
    if(xmlHttp.readyState == 4) {
        if(xmlHttp.status == 200) {
            updateList();
        }
    }
}

function updateList() {
    //alert(xmlHttp.responseXML.getElementsByTagName("tekstsoort").item(0).firstChild.nodeValue);

    clearList();
    var tekstsoorten = document.getElementById("tekstsoorten");
    var results = xmlHttp.responseXML.getElementsByTagName("tekstsoort");
    var option = null;
    for(var i = 0; i < results.length; i++) {
        option = document.createElement("option");
        option.appendChild(document.createTextNode(results[i].firstChild.nodeValue));
        tekstsoorten.appendChild(option);
    }
    tekstsoorten.size = results.length;
}

function clearList() {
    var tekstsoorten = document.getElementById("tekstsoorten");
    while(tekstsoorten.childNodes.length > 0) {
        tekstsoorten.removeChild(tekstsoorten.childNodes[0]);
    }
}

function setSize(el, size) {
	document.getElementById(el.id).size = size;
}

function setPlaats(number) {
	var num = number;
	document.getElementById("plaats").value = num
}

/*
functie voor verschil tussen 2 array's, om de laatst
geselecteerde option in de branches te verkrijgen en te
deselecteren indien meer als 5
Dit is voor een IE bug: geen event op de options.
Indien dus meer als 5 bepaal veschil tussen globale array
en locale array, verschil is dan "opt", de index voor deselecteren.
diff(vector: Array, comparator: Array, [useIndex: Boolean = false]): Array
Compares the array with another (comparator) and, returns an array with the values from comparator that doesn't exists on vector.
vector	array that will be checked
comparator	array that will be compared
useIndex	if true, it will be returned an array containing just the index of the comparator's elements, otherwise returns the values
*/
diff = function(v, c, m){
    var d = [], e = -1, h, i, j, k;
    for(i = c.length, k = v.length; i--;){
        for(j = k; j && (h = c[i] !== v[--j]););
        h && (d[++e] = m ? i : c[i]);
    }
    return d;
};

var globalAr = new Array();

function setBrancheSelect() {
	 var arSelected = new Array();
	 var branche = document.getElementById("branches");
	 branche.multiple = true;
	 var i;
	 var count = 0;
	 for (i=0; i<branche.options.length; i++) {
	 	if (branche.options[i].selected) {
			if(branche.options[i].value == 1) {
				branche.multiple = false;
				for(var c=0; c<branche.options.length; c++) {
					branche.options[c].selected = false;
				}
				branche.selectedIndex = 1;
			}
			count++;
			globalAr.push(branche.options[i].value);
			if(count==6) {
				alert("U heeft er reeds 5!");
				count--;
				/*bepaal nu verschil, dat verschil is ind*/
				var ind = diff(arSelected,globalAr);
				/*alert("ind="+ind);*/
				branche.options[ind].selected = false;
			}else{
				arSelected.push(branche.options[i].value);
			}
	 	}
	 }

}

function chkTekstSoortGroep(opt) {
	var total_selected = 0;
	/*workaround omdat IE niet lekker werkt met document.getElementsByName */
	var elem = document.getElementsByTagName("input");
	var arr = new Array();
	for(i = 0,iarr = 0; i < elem.length; i++) {
		att = elem[i].getAttribute("name");
		if(att == opt.name) {
			if(elem[i].checked==true) {
				total_selected++;
				if(total_selected==4) {
					alert("U heeft er reeds 3!");
					opt.checked=false;
					total_selected--;
					return false;
				}
				arr[iarr] = elem[i].value;
				iarr++;
			}
		}
	}
	makeTekstSoortenList(arr, "");
}

var setarr = "undefined";
function makeTekstSoortenList(arr, setar) {
	 if(setar != "") {
		setarr = setar;
	 }
	 /*alert("arr length van tekstsoortgroep="+arr.length);*/
    var url = "makeTekstSoortenList.php?"
        + createTSLQueryString(arr) + "&ts=" + new Date().getTime();

    createXMLHttpRequest();
    xmlHttp.onreadystatechange = handleTSLStateChange;
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);

}

function createTSLQueryString(tekstsoortgroepen) {
	 /*alert(tekstsoortgroepen);*/
    var queryString = "tekstsoortgroepen=" + tekstsoortgroepen;
    return queryString;
}

function handleTSLStateChange() {
    if(xmlHttp.readyState == 4) {
        if(xmlHttp.status == 200) {
			   clearTSList();
            updateTSList();
        }
    }
}

function updateTSList() {
	 /*alert(xmlHttp.responseText);*/
	 var browserName=navigator.appName;
    if(xmlHttp.responseXML) {
		 var tsgr = "";
 		 var tsgr2 = new Array();
		 var tslist_div = document.getElementById("TSList");
		 var gr_results = xmlHttp.responseXML.getElementsByTagName("tekstsoortgroep");
		 var results = xmlHttp.responseXML.getElementsByTagName("tekstsoort");
		 ul = document.createElement("ul");
		 for(var i=0;i<results.length;i++ ) {
			 if(tsgr != results.item(i).getAttribute("tekstsoortgroep")) {
				 li = document.createElement("li");
				 text = document.createTextNode(results.item(i).getAttribute("tekstsoortgroep"));
			    li.appendChild(text);
			    tul = document.createElement("ul");
				 for(var ii=0;ii<results.length;ii++ ) {
					tsgr2 = results.item(ii).getAttribute("tekstsoortgroep");
					if(tsgr2 == results.item(i).getAttribute("tekstsoortgroep")) {
						tli = document.createElement("li");
						tli.setAttribute("style","list-style:none;");
						tli.style.cssText = "list-style:none;";
						toption = document.createElement("input");
						toption.setAttribute("type","checkbox");
						toption.setAttribute("name",tsgr2+'[]');
						toption.setAttribute("value",results[ii].getAttribute("id"));

						if(setarr!="" && setarr!="undefined") {
							//alert("string="+setarr);
							//alert(results[ii].firstChild.nodeValue);
							//alert(setarr.indexOf(results[ii].firstChild.nodeValue));
							if(setarr.indexOf(results[ii].getAttribute("tekstsoortgroep_id")+results[ii].firstChild.nodeValue)!=-1) {
								/*alert(results[ii].firstChild.nodeValue+"=checked");		*/
								if (browserName=="Microsoft Internet Explorer")	 {
									toption.setAttribute("defaultChecked","defaultChecked");
								}else{
									toption.setAttribute("checked","checked");
								}
							}
						}

						tli.appendChild(toption);
						// perse na de append te plaatsen
						toption.onclick = function() {doFoo(this);};

						ttext = document.createTextNode(results[ii].firstChild.nodeValue);
						tli.appendChild(ttext);
						tul.appendChild(tli);
					}
				 }
				 li.appendChild(tul);
			    ul.appendChild(li);
			 }
			 tsgr = results.item(i).getAttribute("tekstsoortgroep");
		 }
		 tslist_div.appendChild(ul);
		 // hier nog ff een hidden input voor de geselcteerde inputs van tekstsoorten
		 // want zonder onderstaande worden die inputs en waarden niet meegegeven in de post gegevens
		 // ik weet ook niet ff waarom
		 //tin = document.createElement("input");
		// tin.setAttribute("type","hidden");
		// tin.setAttribute("name","tekstsoorten_ids");
		 //tin.setAttribute("id","tekstsoorten_ids");
		// doFill(tin);
		// tslist_div.appendChild(tin);
	 }
}

function clearTSList() {
	var TSList_div = document.getElementById("TSList");
	TSList_div.innerHTML = "";
}

function rtrim(s) {
	var r=s.length -1;
	while(r > 0 && s[r] == ',') {
		r-=1;
	}
	return s.substring(0, r+1);
}

function doFill(obj) {
	var elem = document.getElementsByTagName("input");
	for(i = 0; i < elem.length; i++) {

	}
	obj.setAttribute("value",rtrim(str));
}

function doFoo(opt) {
		var total_selected = 0;
		/*/workaround omdat IE niet lekker werkt met document.getElementsByName /*/
	   var elem = document.getElementsByTagName("input");
	   var arr = new Array();
	   for(i = 0; i < elem.length; i++) {
			att = elem[i].getAttribute("name");
			if(att == opt.name) {
				if(elem[i].checked==true) {
					total_selected++;
					if(total_selected==4) {
						alert("U heeft er reeds 3!");
						opt.checked=false;
						total_selected--;
					}
				}
			}
		}

}

function isArray(obj) {
   if (obj.constructor.toString().indexOf("Array") == -1)
      return false;
   else
      return true;
}

function checkForm_eigenpagina(theForm) {
  if (theForm.username.value == '' ||
  		theForm.password.value == '' ||
  		theForm.bedrijfsnaam.value == '' ||
  		theForm.plaats.value == '' ||
      theForm.adres.value == '' ||
      theForm.postcode.value == '' ||
      theForm.tel_nummer.value == '' ||
      theForm.voornaam.value == '' ||
      theForm.achternaam.value == '' ||
      theForm.emailadres.value == '' ) {
      alert('S.v.p. alle velden met een * invullen.')
      return false;
  }else{
      return confirm('Bevestiging verandert de database, weet u het zeker?');
  }
}

function chkAanmelding(theForm) {
	//if(document.forms[theForm]) alert("sorry"+theForm);
	//return false;
	if (document.forms[theForm].voornaam.value == '' ||
		document.forms[theForm].achternaam.value == '' ||
		document.forms[theForm].adres.value == '' ||
		document.forms[theForm].postcode.value == '' ||
		document.forms[theForm].plaats.value == '' ||
		document.forms[theForm].tel_nummer.value == '' ||
		document.forms[theForm].emailadres.value == '' ) {
		alert('S.v.p. alle velden met een * invullen.')
		return false;
	}else{
		if(!chkEmail(document.forms[theForm].emailadres.value)) {
			return false;
		}else{
			//alert("Sorry, op dit moment wordt het programma aangepast, binnen 1 uur is dit opgelost");
			return true;
		}
	}
}

function chkEmail(str) {
		var at = "@";
		var dot = ".";
		var lat = str.indexOf(at);
		var lstr = str.length;
		var ldot = str.indexOf(dot);
		if (str.indexOf(at) == -1) {
		   alert("Fout in emailadres");
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) {
		   alert("Fout in emailadres");
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) {
		    alert("Fout in emailadres");
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1) {
		    alert("Fout in emailadres");
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) {
		    alert("Fout in emailadres");
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1) {
		    alert("Fout in emailadres");
		    return false;
		 }

		 if (str.indexOf(" ")!=-1) {
		    alert("Fout in emailadres");
		    return false;
		 }

 		 return true;
}

/********************************************************************************************************/

function openWindow(img, name){
	newwindow2=window.open('','name','height=300,width=400');
	var strHTML = "<html><head><title>"+name+"</title></head>";
	strHTML += "<body><center>";
	strHTML += "<div style=''><img src='"+img+"' /></div>";
	strHTML += "</center></body>";
	strHTML += "</html>";
	newwindow2.document.write(strHTML);
	newwindow2.document.close();
	if (window.focus) {newwindow2.focus()}
	return false;

}

function showSubmenu(elmnt) {
	document.getElementById("navTop").style.zIndex = 100;
	document.getElementById("navTop").style.height = "300px";
	document.getElementById(elmnt).style.visibility="visible";
}

function hideSubmenu(elmnt) {
	document.getElementById("navTop").style.zIndex = 10;
	document.getElementById("navTop").style.height = "160px";
	document.getElementById(elmnt).style.visibility="hidden";
}


var item_clicked = "__";


function chkSeveral(item) {
   if(document.getElementById(item)) {
   	var e = document.getElementById(item);
   	if(item != item_clicked) {
			e.className = e.className+"over";
		}else if(item == item_clicked) {
			e.className = e.className+"over";
		}
		item_clicked = item;
		//alert(e.className);
	}
}

function findPos(obj) {
	var curtop = 0;
	if (obj.offsetParent) {
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curtop += obj.offsetTop
		}
	}
	return curtop;
}

function setHeight() {
	var browserName=navigator.appName;
	var nl = document.getElementById('navLeft');
	var nte = document.getElementById('navTopExtra');
	var sw = document.getElementById('searchwidget');
	var mc = document.getElementById('mainContent');
	var bd = document.getElementById('checker');
	//alert("cl="+document.documentElement.clientHeight);
	//alert("mc="+findPos(bd));
	var h = document.documentElement.clientHeight

	if (browserName=="Microsoft Internet Explorer")	 {
		if(findPos(bd) > h) {
			mc.style.height = findPos(bd)-180+"px"; /*167 is ong de hoogte van de kop*/
			nl.style.height = findPos(bd)-160+"px";
			nte.style.top = "80px";
			sw.style.top = "0px";
		}else{
			mc.style.height = h-180;
			nl.style.height = h-160;
			nte.style.top = "80px";
			sw.style.top = "0px";
		}
	}else{
		alert("mc="+h);
		if(findPos(bd) > h) {
			mc.style.height = findPos(bd)-167+"px"; /*167 is ong de hoogte van de kop*/
			nl.style.height = findPos(bd)-146+"px";
			nte.style.top = "80px";
			sw.style.top = "0px";
		}else{
			mc.style.height = h-167+"px";
			nl.style.height = h-146+"px";
			nte.style.top = "80px";
			sw.style.top = "0px";
		}
	}
}


/*************************/
/*   Guestbook settings  */
/*************************/

function openGuestbookform() {
	if(document.getElementById("guestbookform")) {
		var gbf = document.getElementById("guestbookform");
		if(gbf.style.display == "none") {
			gbf.style.display = "block";
		}else if(gbf.style.display == "block") {
			gbf.style.display = "none";
		}
	}
}