// ===========================
// 2C Communnication Consultancy bv
// Wilhelminakade 312, Rotterdam
// www.2c.nl
// Tel.: +31 (0)10 20 30 700

// Fax : +31 (0) 306664905
// =========================== 

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function OpenFeedbackWindow(lang)
{
feedbackURL = location.href.replace('?','&');
var url='/includes/feedback/feedback.php?='+location.href;
if (lang=='en') url= '/includes/feedback/feedback-en.php?='+location.href;
MyWindow=window.open(url,'MyWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=500,height=300,left=20,top=20'); 
MyWindow.focus();
} 

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_validateForm() { //v4.0
  var lang = (window.location.href.indexOf('/en/') != -1) ? '1' : '0';
  var errorMsg = Array(Array('U heeft geen geldig e-mailadres ingevuld.\n','You have not entered a valid e-mail address.\n'),Array('U hoeft bij [x] alleen een getal in te vullen.\n','You only have to fill out a number at [x]'), Array('U dient uw [x] in te vullen.\n','You have to fill out your [x].'));
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
	if (val) { radioNm = args[i]; nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+=errorMsg[0][lang];
      } else if (test=='Rradio' || test =='Rpdown') { if (isNaN(val)) errors += errorMsg[2][lang].replace('[x]',radioNm);
	  } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+=errorMsg[1][lang].replace('[x]',nm);
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += errorMsg[2][lang].replace('[x]',nm); }
  } if (errors)  alert(errors);
  document.MM_returnValue = (errors == '');
}

function externalLinks() {
 if (!document.getElementsByTagName) return;
 var anchors = document.getElementsByTagName("a");
 for (var i=0; i<anchors.length; i++) {
   var anchor = anchors[i];
   if (anchor.getAttribute("href") &&
       anchor.getAttribute("rel") == "external")
     anchor.target = "_blank";
 }
}
window.onload = externalLinks;

// -----------------------------------------------
// voor het vervangen van het zoekdomein op atomz
function updateSearchDomain(checkbox) {
		codeHeleSite='sp1003a1b3';
		codeNieuwsbrieven='sp1003a750';
		(checkbox.checked) ? setSearchDomain(codeNieuwsbrieven) : setSearchDomain(codeHeleSite);
	}
function setSearchDomain(code) {
	inputFields = document.getElementsByTagName('input');
	for (i=0; i<inputFields.length; i++) {
		if (inputFields[i].name=='sp_a' || inputFields[i].name=='sp-a')
			searchDomainField=inputFields[i];
	}
	if (searchDomainField) {
		searchDomainField.value= code;
	}
}
function addCheckbox(checkboxChecked) {
	inputFields=document.getElementsByTagName('input');
	for (i=0; i<inputFields.length; i++) {
		if (inputFields[i].value=="Zoek opnieuw") {
			zoekknop=inputFields[i];
		}
	}
	if (zoekknop) {
		linebreak = document.createElement('br');
		checkbox = document.createElement('input');
		checkbox.type = 'checkbox';
		checkbox.onclick = function() { updateSearchDomain(this) }
		text = document.createTextNode('Zoek alleen in nieuwsbrieven');
		zoekknop.parentNode.insertBefore(text, zoekknop.nextSibling);
		zoekknop.parentNode.insertBefore(checkbox, zoekknop.nextSibling);
		zoekknop.parentNode.insertBefore(linebreak, zoekknop.nextSibling);
		checkbox.checked=checkboxChecked;
	}
}
// -----------------------------------------------

// -----------------------------------------------
// voor het verbergen en tonen van formulier delen
function hide(id) {
	row = document.getElementById(id);
	if (row) {
		row.style.display = 'none';
	}
}

function show(id) {
	row = document.getElementById(id);
	if (row) {
		row.style.display = '';
	}
}
function focusOnField(field) {
	if (field.className) {
		field.className=field.className+' activeFormField';
	} else {
		field.className = 'activeFormField';
	}
}
function leaveField(field) {
	field.className = field.className.replace('activeFormField','');
}
function addEvents() {
	// events toevoegen voor focus effect
	tagNames = Array('input', 'select', 'textarea');
	for (i=0; i<tagNames.length; i++) {
		fields = document.getElementsByTagName(tagNames[i]);
		
		if (fields && tagNames[i]!='select') { // geen select want niet gelukt om achtergrondkleur goed te krijgen in IE
			for (j=0; j<fields.length; j++) {
				fields[j].onfocus=function() { focusOnField(this); }
				fields[j].onblur = function() { leaveField(this); }
			}
		}
		// verberg en toon commando's toevoegen
		if ( fields && tagNames[i]=='select') {
			for (j=0; j<fields.length; j++) {
				possibleCommand = fields[j].className.substring(0,4);
				if ((possibleCommand=='hide' || possibleCommand =='show')&& tagNames[i]=='select') {
					firstChunk = fields[j].className.split(' ')[0];
					info = firstChunk.split('_');
					targetID= info[1];
					actionOption=info[2];
					for (k=1; k<fields[j].options.length; k++) {
						if (actionOption==fields[j].options[k].value.replace(/\s/g, ""))
							actionOptionNumber = k;
					}
					fields[j].className = targetID+'_'+actionOptionNumber;
					if (possibleCommand == 'hide') {
						fields[j].onchange = function() { info = this.className.split(' ')[0].split('_');
														if (this.options.selectedIndex==info[1]) 
														hide(info[0]); else show(info[0]); }
					} else {
						fields[j].onchange = function() { info = this.className.split(' ')[0].split('_');
														if (this.options.selectedIndex==info[1]) 
														show(info[0]);  	else hide(info[0]); }
					}
					
				}
			}
		}
	}
}
function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	}
	else {
		window.onload = function() {
			oldonload();
			func();
		}
	}
}
addLoadEvent(addEvents);



