
/* Geef alle elementen met een bepaalde className */
function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if (node == null) node = document;
	if (tag == null) tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

/* Laat alle externe links in een nieuw venster openen */
function markeerExterneLinks() {
	var alleLinks = document.getElementsByTagName("a"); //Alle links op de pagina
	//We overlopen ze één voor één
	for (i = 0; i < alleLinks.length; i++) {
		if ((alleLinks[i].getAttribute("href").substr(0, 7).toLowerCase() == "http://" && 
			alleLinks[i].getAttribute("href").substr(0, 19) != "http://cdenvzele.be" &&
			alleLinks[i].getAttribute("href").substr(0, 23) != "http://www.cdenvzele.be" &&
			alleLinks[i].getAttribute("href").substr(0, 16) != "http://localhost") || 
			alleLinks[i].getAttribute("rel") == "nieuwvenster") {
			alleLinks[i].setAttribute("target", "_blank");
		}
	}
}

/*
Draai de href van een mailto link om
Waarom doen we dit?
In de broncode staat de mailto verwijzing omgekeerd om zoekbots, die sites afschuimen op zoek naar
bruikbaar adressen voor spam, op het verkeerde been te zetten.
*/
function bewerkEmailAdressen() {
	var adressen = document.getElementsByTagName("a");
	for (i = 0; i < adressen.length; i++) {
		//Bewerk enkel de emailadressen
		if (adressen[i].className == "emailadres") {
			//Haal de verwijzing op
			var verwijzing = adressen[i].href;
			//Verwijder alles voor de laatste slash
			var locatieLaatsteSlash = verwijzing.lastIndexOf("/") + 1;
			verwijzing = verwijzing.substr(locatieLaatsteSlash, verwijzing.length);
			//Draai die om
			var nieuweverwijzing = "";
			for (j = verwijzing.length - 1; j >= 0; j--) {
				nieuweverwijzing += verwijzing.charAt(j);
			}
			adressen[i].setAttribute('href', nieuweverwijzing);
			if (adressen[i].innerHTML.indexOf("[at]") > -1)
			{
				var locatieDubbelpunt = nieuweverwijzing.indexOf(":") + 1;
				nieuweverwijzing = nieuweverwijzing.substr(locatieDubbelpunt, nieuweverwijzing.length);
				nieuweverwijzing = nieuweverwijzing.replace("@", "@");
				adressen[i].innerHTML = nieuweverwijzing;
			}
		}
	}
}

/* Voeg een stukje tekst toe aan een input veld (bijv. bij de smilies) */
function addText(inputveld, tekst) {
	var iv = document.getElementById(inputveld);
	if (document.selection) {
		var range = document.selection.createRange();
		if (range.parentElement() == iv) {
			range.text = tekst + (arguments[2] ? range.text + arguments[2] : "");
			return;
		}
	}
	else if (iv.selectionStart || iv.selectionStart == '0') {	
		var str = iv.value;
		var a = iv.selectionStart, b = iv.selectionEnd;
		iv.value = str.substring(0,a) + tekst + (arguments[2] ? str.substring(a,b) + arguments[2] : "") + str.substring(b, str.length);
		return;
	}
	iv.value += tekst + (arguments[2] ? arguments[2] : "");
}

onload = function functiesBijHetLaden() {
	markeerExterneLinks();
	bewerkEmailAdressen();
}

