/* --- JavaScript --- */
/* --- General --- */


/* --- add functions to onload event: addLoadEvent(functionName); --- */
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}


/* --- set comment values in form fields --- */
var defValues = [
	 ["keywords","Zoek in deze site"]
	,["regioPostcode","Uw postcode"]
	,["emailNieuwsbrief","Uw e-mailadres"]
	,["geboorteDag","dd"]
	,["geboorteMaand","mm"]
	,["geboorteJaar","jjjj"]
];

function DefValObj(val) {
	this.value = val;
};

var defVal = {};

setFormFields = function() {
	for (i=0; i<defValues.length; i++) {
		var inputNode = document.getElementById(defValues[i][0]);
		if (inputNode != null) {
			inputNode.value = (inputNode.value && inputNode.value != "") ? inputNode.value : defValues[i][1];
			defVal[defValues[i][0]] = new DefValObj(defValues[i][1]);
			inputNode.onfocus = function() {
				if (this.value == defVal[this.id].value) {
					this.value = "";
				}
				addClass(this,"hasFocus");
			}
			inputNode.onblur = function() {
				removeClass(this,"hasFocus");
			}
		}
	}
}

addLoadEvent(setFormFields);


/* --- show print link if JS is supported --- */
setPrintLink = function() {
	var fnxMenu = document.getElementById('functieMenu');
	for (f=0; f<fnxMenu.childNodes.length; f++) {
		var fnxItem = fnxMenu.childNodes[f];
		if (fnxItem.nodeName == "LI") {
			if (fnxItem.id == "printKnop") {
				fnxItem.className += " show";
			}
			else if (fnxItem.id == "omhoogKnop") {
				fnxItem.className = fnxItem.className.replace("eerste","");
			}
		}
	}
}

addLoadEvent(setPrintLink);	// add to onload event

/* --- createElement() --- */
function createElement(element) {
	if (typeof document.createElementNS != 'undefined') {
		return document.createElementNS('http://www.w3.org/1999/xhtml', element);
	}
	if (typeof document.createElement != 'undefined') {
		return document.createElement(element);
	}
	return false;
}

/* --- add/remove className --- */
function addClass(thisNode,thisClass) {
	if(!thisNode){return false;}
	thisNode.className += " " + thisClass;
}

function removeClass(thisNode,thisClass) {
	if (thisNode.className.length == (thisClass.length)) {
		thisNode.className = thisNode.className.replace(thisClass,"");
	}
	else {
		thisNode.className = thisNode.className.replace(" " + thisClass,"");
	}
}