var maxtabs = 3;																	// max aantal tabs dat mogelijk is in een tabblok
var openFAQcat = 0;																// er is default geen FAQ categorie opengeklapt

window.addEvent('domready', function() {
    //setBlokHeight();
	if ($('abc')) {
		addAbcRollOvers();
	}
    //togglepostadres();
    postAddressToggle = false;
});

/* deze functie scheelt typwerk */
function ge(id) {
	return document.getElementById(id);
}

/* deze functie zet alle elementen met een bepaalde Class in een array (node en tag zijn optioneel) */
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;
}


/* 	deze functie wordt uitgevoerd bij page load
	en stelt de hoogte van alle tabblokken in op de hoogte van het hoogste contentblok binnen dat tabblok */
    
/********************** ALTHANS, dat kan hij, maar doet ie nu even niet op verzoek van de designer *******************/

function setBlokHeight () {
	var t = getElementsByClass ('tabs').length;									// bepaal aantal blokjes met tabs
	for (n=1;n<=t;n=n+1) {														// loop door alle tabblokken
		var h=0;
		for (m=1;m<=maxtabs;m=m+1) {												// loop door alle tabs binnen een blok
			if (ge('blok' + n + '_' + m) != null) {
				if (ge('blok' + n + '_' + m).offsetHeight > h) {					// als de huidige tab hoger is dan h,
					h = ge('blok' + n + '_' + m).offsetHeight;						// zet h dan op die waarde
				}
			}
		}
		for (o=1;o<=maxtabs;o=o+1) {												// loop door alle tabs binnen een blok
			if (ge('blok' + n + '_' + o) != null) {
				ge('blok' + n + '_' + o).style.height = (h + 'px');				// stel het tabje in op de hoogte h
				ge('blok' + n + '_' + o).className = 'blok inactief';				// schakel het tabblok uit
			}
		}			
		ge('blok' + n + '_1').className = 'blok';									// zet de eerste tab actief
	}
}


/* deze functie wisselt van tabje in een tabblok */
function changeTab (tekstblok, tab) {
    for (n=1;n<=maxtabs;n=n+1) {													// zet eerst alles uit
        if (ge('tab' + tekstblok + '_' + n) != null) {
            ge('tab' + tekstblok + '_' + n).className = '';
        }
        if (ge('blok' + tekstblok + '_' + n) != null) {
            ge('blok' + tekstblok + '_' + n).className = 'blok';
        }
    }
    
    ge('tab' + tekstblok + '_' + tab).className = 'actief';						// en dan de geselecteerde tab+content aan
	ge('blok' + tekstblok + '_' + tab).className = 'blok actief';
}



function resetAbcClickedStates() {
	$$('#abc li').each(function(otherabc){
		if (otherabc.className != 'abcleft' && otherabc.className != 'abcright') {
			otherabc.className = 'abcli';
			var idnumber = otherabc.id.replace('abcli','');
			var otherClickedImage = 'abcimg' + idnumber;
			if ($(otherClickedImage).src.match('-wit.gif') && (otherClickedImage.className != 'clicked')) {
				$(otherClickedImage).className = 'zzz';
				var otherClickedImageLink = $(otherClickedImage).src.replace('-wit.gif','.gif');
				$(otherClickedImage).src = otherClickedImageLink;
			}
		}
	});
}

function resetAbcStatesExceptClicked() {
	$$('#abc li').each(function(otherabc){
		if (otherabc.className != 'abcleft' && otherabc.className != 'abcright' && otherabc.className != 'abcli abcactief clicked') {
			otherabc.className = 'abcli';
			var idnumber = otherabc.id.replace('abcli','');
			var otherClickedImage = 'abcimg' + idnumber;
			if ($(otherClickedImage).src.match('-wit.gif') && (otherClickedImage.className != 'clicked')) {
				$(otherClickedImage).className = 'zzz';
				var otherClickedImageLink = $(otherClickedImage).src.replace('-wit.gif','.gif');
				$(otherClickedImage).src = otherClickedImageLink;
			}
		}
	});
}

function addAbcRollOvers() {
	$$('#abc li').each(function(abc){
		if (abc.className != 'abcleft' && abc.className != 'abcright') {
			
			abc.addEvents({
				'click': function() {
					abc.getElement('img').className = 'clicked';
					resetAbcClickedStates();
					abc.className = 'abcli abcactief clicked';
					var idNumber = abc.id.replace('abcli','');
					var clickedImage = 'abcimg' + idNumber;
					if (!($(clickedImage).src.match('-wit.gif'))) {
						var clickedImageLink = $(clickedImage).src.replace('.gif','-wit.gif');
						$(clickedImage).src = clickedImageLink;
					}
/*
					idNumberInt = idNumber.toInt();
					abcnext = 'abcli' + (idNumberInt + 1);
					if (idNumberInt <= 25) {
						$(abcnext).className = 'abcli abcleeg';
					}
*/
				}, 
				'mouseenter': function() {
					if (abc.className != 'abcli abcactief clicked') {
						resetAbcStatesExceptClicked();
						abc.className = 'abcli abcactief';
						var idNumber = abc.id.replace('abcli','');
						var rolloverImage = 'abcimg' + idNumber;
						if (!($(rolloverImage).src.match('-wit.gif'))) {
							var rolloverImageLink = $(rolloverImage).src.replace('.gif','-wit.gif');
							$(rolloverImage).src = rolloverImageLink;
						}
						
						idNumberInt = idNumber.toInt();
						abcnext = 'abcli' + (idNumberInt + 1);
						if (idNumberInt <= 25 && ($(abcnext).className != 'abcli abcactief') && ($(abcnext).className != 'abcli abcactief clicked')) {
							$(abcnext).className = 'abcli abcleeg';
						}
						
					}
				}, 
				'mouseleave': function() {
					if (abc.className != 'abcli abcactief clicked') {
						abc.className = 'abcli';
						var idNumber = abc.id.replace('abcli','');
						var rolloverImage = 'abcimg' + idNumber;
						var rolloverImageLink = $(rolloverImage).src.replace('-wit.gif','.gif');
						$(rolloverImage).src = rolloverImageLink;
						
						resetAbcStatesExceptClicked();
						
/*						idNumberInt = idNumber.toInt();
						abcnext = 'abcli' + (idNumberInt + 1);
						if (idNumberInt <= 25 && (abc.className != 'abcli abcactief clicked')) {
							$(abcnext).className = 'abcli';
						}
*/
/*						if (idnumber.toInt() >= 1) {
							var abcprev = 'abcli' + (idnumber.toInt() - 1);
							if (abcprev.className == 'abcli abcactief' || abcprev.className == 'abcli abcactief clicked') {
								$(abc).className = 'abcli abcleeg';
							}
						}
*/

					}
				}
			});
		}
	});
}


/* deze functie opent of sluit huidige FAQ categorie */
function showhidecategorie(id) {
	if ((id.substring(9)).toInt() != openFAQcat) {								// is de categorie dicht?
		if (openFAQcat != 0) {														// is er een open categorie?
			ge('categorie' + (openFAQcat.toString()) + 'li').className = 'lifaq';	// sluit de open categorie
			ge('categorie' + (openFAQcat.toString())).style.display = 'none';
		}

		ge(id).style.display = 'block';											// open de nieuwe categorie
		ge(id + 'li').className = 'lifaq faqopen';
		openFAQcat = (id.substring(9)).toInt();
	}

	else {
		ge(id + 'li').className = 'lifaq';											// sluit de huidige categorie
		ge(id).style.display = 'none';
		openFAQcat = 0;
	}
}


/* deze functie opent of sluit een FAQ item met Mootools */
function openFaqItem(item) {

	if($(item).getStyle('height').toInt() <= 17) {

		ge(item + 'button').src = '/siteimg/bt_min.gif';

		$(item).effect('height',{
			duration: 600,
			transition: Fx.Transitions.cubicOut
		}).start(0,($(item).scrollHeight));

	} else {
		ge(item + 'button').src = '/siteimg/bt_plus.gif';
		closeFaqItem(item);
	}
}


/* deze functie sluit een FAQ item met Mootools */
function closeFaqItem(item) {

		$(item).effect('height',{
			duration: 600,
			transition: Fx.Transitions.cubicIn
		}).start($(item).scrollHeight, 16);
}


/* deze functie opent of sluit een sitemap item */
function sitemapVouwen(item) {

    if (ge(item).style.display == 'block' || ge(item).style.display == '') {
        ge(item).style.display = 'none';
        ge(item + 'li').className = '';
        ge(item + 'a').className = 'level1';
        ge(item + 'img').src = '/siteimg/plus.gif';
    }
    else {
        ge(item).style.display = 'block';
        ge(item + 'li').className = 'actief';
        ge(item + 'a').className = 'level1 actief';
        ge(item + 'img').src = '/siteimg/min.gif';
    }    
}


/* deze functie vult het postadres in bij aanvinken van checkbox */
function togglepostadres_OLD() {
	if($('cbPostadres') != null) {
		if ($('cbPostadres').checked == true) {
			$('pPostbus').style.display = 'none';
			$('pPostbusPostcode').style.display = 'none';
			$('pPostbusPlaats').style.display = 'none';
		} else {
			$('pPostbus').style.display = 'block';
			$('pPostbusPostcode').style.display = 'block';
			$('pPostbusPlaats').style.display = 'block';
		}
	}
}

function togglepostadres() {
	if(postAddressToggle != false) {
		postAddressToggle = false;
		leegAddress();
		
		$('txtPostbusPostadres').disabled = false;
		$('txtPostbusPostcode').disabled = false;
		$('txtPostbusPlaats').disabled = false;
		
	}else{
		postAddressToggle = true;
		readAddress();
		
	}
}


/* deze functie zet bij het aanvinken van de checkbox "postadres gelijk aan bezoekadres" de velden "postadres, postcode en plaats op disabled */
function disableVelden() {
	
//	var txtPostbus.value = ;
//	var txtPostbusPostcode.value = ;
//	var txtPostbusPlaats.value = ;
	
	if($('cbPostadres') != null) {
		if ($('cbPostadres').checked == true) {
			
		} else {
			
		}
	}
}

function readAddress() {
	var straat = $('txtStraat').value;
	var postcode = $('txtPostcode').value;
	var plaats = $('txtPlaats').value;
	
	$('txtPostbusPostadres').value = straat;
	$('txtPostbusPostcode').value = postcode;
	$('txtPostbusPlaats').value = plaats;
	
	$('txtPostbusPostadres').disabled = true;
	$('txtPostbusPostcode').disabled = true;
	$('txtPostbusPlaats').disabled = true;
}

function leegAddress() {
	$('txtPostbusPostadres').value = '';
	$('txtPostbusPostcode').value = '';
	$('txtPostbusPlaats').value = '';
}

/* deze functie regelt de optie 'wachtwoord vergeten' */
function togglewwvergeten() {
	if ($('cbForgotpwd').checked == true) {
		$('pwwmail').style.display = 'block';
		$('pWachtwoord').style.display = 'none';
	} else {
		$('pwwmail').style.display = 'none';
		$('pWachtwoord').style.display = 'block';
	}
}