	/* zoeken binnen een element naar een class */
	function getElementsByClassName(baseElement,className,tagName) {
		var foundElements = new Array();
		if (!tagName) var tagName = "*";
		var elements = baseElement.getElementsByTagName(tagName);
		
		for (var i=0; i<elements.length; i++) {
			if (elements[i].className) {
				var classNames = elements[i].className.split(" ");
				for (var j=0; j<classNames.length; j++) {
				
					if (classNames[j].toLowerCase() == className.toLowerCase()) foundElements.push(elements[i]);
				}
			}
		}
		return foundElements;
	}
	function changeplus(obj, className, showHide){
		var objs = getElementsByClassName(obj, className);
		for (var i=0; i<objs.length; i++) {
			if (objs[i].className) {
			//alert(objs[i].className)
				if (objs[i].className != 'plus active') {
					if (showHide == 'show') {
						objs[i].className = className+' plusShow';
					} else {
						objs[i].className = className+' plusHide';
					}
				}
				
			}
//alert(objs[i].className)
		}
	}
	
	/* bookmark page */
	function addToFavorites(pageName) { 
			var curUrl = document.location.href

			if (window.sidebar) { // Mozilla Firefox Bookmark
				window.sidebar.addPanel(pageName, curUrl,"");
			} else if( window.external ) { // IE Favorite
				window.external.AddFavorite( curUrl, pageName); 
			} else { 
				alert("Helaas, Uw browser ondersteund deze functie niet."); 
			}
	}
	/* collectie overzicht tonen of niet */
	function overzicht(what) {
		if (what == 'show') {
			document.getElementById('toon').style.display = 'none';
			document.getElementById('verberg').style.display = 'block';
			document.getElementById('overview').style.display = 'block';
		} else {
			document.getElementById('overview').style.display = 'none';
			document.getElementById('verberg').style.display = 'none';
			document.getElementById('toon').style.display = 'block';
		}
	}
	/* submenu in het midden zetten */
	function positionMenu() {
		var parentObj = document.getElementById('submenu');
		var obj = document.getElementById('submenu_active');
		
		if (obj) {
			var objListElm = obj.getElementsByTagName("li");
			var tempWidth = 0;
			var elemWidth = 0;
			for(var i=0; i < objListElm.length; i++) {
				//alert(objListElm[i].clientWidth);
				tempWidth +=  objListElm[i].clientWidth;
			}
			if (parentObj.clientWidth != 0) {
				elemWidth = parentObj.clientWidth
			} else {
				elemWidth = parentObj.scrollWidth
			}
			document.getElementById('dummy').style.width = ((elemWidth  - tempWidth)/2)+'px'
		}
		//alert(document.getElementById('dummy').style.width)
	}
	
var sep = "[::]";

/* EVENTS */
function newEventListener(element,event,func,capture) {
	event = event.replace(/^on/i,"");
	if (element.addEventListener) element.addEventListener(event,func,capture); else 
	if (element.attachEvent) element.attachEvent('on'+event,func);
}
function getTargetElement(event) {
	if (event.originalTarget) return event.originalTarget;
	if (event.srcElement) return event.srcElement;
}
function getRelatedElement(event) {
	if (event.relatedTarget) return event.relatedTarget;
	if (event.toElement) return event.toElement;
}

/* BINDS */
function bind(func,object,args) {
	return function() { return func.apply(object,args); }
}
function bindAsEventListener(func,object,args) {
	return function(event) { return func.apply(object, [event].concat(args)); }
}


/* FORMULIERVERZENDING */
function saveFormData() {	// werkt niet met google toolbar??
	var smform = new Array();
	smform['bedrijfsnaam']  = document.getElementById("bedrijfsnaam").value;
	smform['particulier']   = document.getElementById("particulier").checked;
	smform['aanhef']        = document.getElementById("aanhef").value;
	smform['voorletters']   = document.getElementById("voorletters").value;
	smform['tussenvoegsel'] = document.getElementById("tussenvoegsel").value;
	smform['achternaam']    = document.getElementById("achternaam").value;
	smform['straatnaam']    = document.getElementById("straatnaam").value;
	smform['huisnummer']    = document.getElementById("huisnummer").value;
	smform['toevoeging']    = document.getElementById("toevoeging").value;
	smform['postcode']      = document.getElementById("postcode").value;
	smform['woonplaats']    = document.getElementById("woonplaats").value;
	smform['telefoon']      = document.getElementById("telefoon").value;
	smform['email']         = document.getElementById("email").value;
	smform['opmerking']     = document.getElementById("opmerking").value;
	smform['sid']           = sessid;
	var request = new Sjax();
	request.request("/ajax/order_savenaw.php","post",doNothing,smform);
}

function ajax_sendOrder() {
	var request = new Ajax();
	request.request("/ajax/order_verzend.php","post",doNothing,{id:pid,m2:el.value,sid:sessid});
}

/* GOOGLE MAPS */
	function validateRoute() {
		var straat     = document.getElementById("straat");
		var huisnr     = document.getElementById("huisnr");
		var toev       = document.getElementById("toev");
		var plaats     = document.getElementById("plaats");
		var postcode_c = document.getElementById("postcode_c");
		var postcode_l = document.getElementById("postcode_l");
		if (!straat || straat.value == '') {
			alert('Heeft u uw straatnaam wel (juist) ingevuld?');
			straat.focus();
			return false;
		} else {
			straat.value = straat.value.substring(0,1).toUpperCase() + straat.value.substring(1).toLowerCase();
		}
		if (!huisnr || huisnr.value == '') {
			alert('Heeft u uw huisnummer wel (juist) ingevuld?');
			huisnr.focus();
			return false;
		}
		if (!plaats  || plaats.value == '') {
			alert('Heeft u uw woonplaats wel (juist) ingevuld?');
			plaats.focus();
			return false;
		} else {
			plaats.value = plaats.value.toUpperCase();
		}

		var regNumeric = /^[0-9]{4}$/;// alleen cijfers
		var regAlpha = /^[a-zA-z]{2}$/;// alleen cijfers
		if (!postcode_c || postcode_c.value == '') {
			alert('Heeft u uw postcode wel (juist) ingevuld?');
			postcode_c.focus();
			return false;
		} else {
			if(!regNumeric.test(postcode_c.value)){
				alert('Heeft u uw postcode wel (juist) ingevuld?');
				postcode_c.focus();
				return false;
			}
		}
		if (!postcode_l || postcode_l.value == '') {
			alert('Heeft u uw postcode wel (juist) ingevuld?');
			postcode_l.focus();
			return false;
		} else {
			if(!regAlpha.test(postcode_l.value)){
				alert('Heeft u uw postcode wel (juist) ingevuld?');
				postcode_l.focus();
				return false;
			} else {
				postcode_l.value = postcode_l.value.toUpperCase();
			}
		}
		var request = new Ajax();
		request.request("/ajax/ajax_route_savenaw.php","post",doNothing,{straat:straat.value,
																		 huisnum:huisnr.value,
																		 toev:toev.value,
																		 plaats:plaats.value,
																		 postcode:postcode_c.value+''+postcode_l.value});
		gm_getRoute(straat.value+', '+postcode_c.value+''+postcode_l.value+', '+plaats.value);
	}
	

	var gm_dest = "De Waterlaat 8, 5571 MZ, Bergeijk";

	function doNothing(){}

function gm_placeMarker(point) {
	gm_map = new GMap2(document.getElementById("routedisplay"));
	//gm_map.setCenter(new GLatLng(50.969776,5.75865),15);
	if (!point) gm_map.setCenter(new GLatLng(50.899701,5.941584),15); else gm_map.setCenter(point,15);
	gm_map.addControl(new GMapTypeControl());
	gm_map.addControl(new GSmallMapControl());
	var gm_marker=new GMarker(point);
	gm_map.addOverlay(gm_marker);
	//gm_marker.openInfoWindowHtml('<b>Iets</b>');
	gm_dir = new GDirections(gm_map, document.getElementById("routedescription"));
}

function gm_initialize() {
	if (GBrowserIsCompatible()) {
		gm_loc = new GClientGeocoder();
		gm_loc.getLatLng(gm_dest,gm_placeMarker);
	}
}

function gm_getRoute(fromAddress) {
	//alert(fromAddress);
	
	gm_dir.load("from: "+fromAddress+" to: "+gm_dest,{"locale":"nl_NL"});
}

/* INITIALIZE */
window.onload = function() {
	if (document.getElementById('to_adres') && document.getElementById('to_adres').value != "") {
		gm_dest = document.getElementById("to_adres").value;
	} 
	positionMenu();
	if (document.getElementById("routedisplay")) gm_initialize();
}

	/* Dropdown informatie aanvragen */
	function form_onderwerp(optie, select){
		var objOptie = document.getElementById(optie);
		var objSelect = document.getElementById(select);
		document.getElementById('value_onderwerp').innerHTML = objSelect.innerHTML;
		document.getElementById('onderwerp').value = objSelect.innerHTML;
		document.getElementById('onderwerp_id').value = optie;
		
		var tempName = '';
		for (var i = 1; i <= 3; i++) {
			tempName = 'optie'+i;
			if (document.getElementById(tempName)) {
				document.getElementById(tempName).style.display = 'none';
			}
		}
		
		objOptie.style.display = 'block';
		document.getElementById('listOptions').style.display='none'
	}
	/* Dropdown informatie aanvragen Vestigingen */
	function form_vestiging(optie, select){
		var objOptie = document.getElementById(optie);
		var objSelect = document.getElementById(select);
		document.getElementById('value_vestiging').innerHTML = objSelect.innerHTML;
		document.getElementById('vestiging').value = objSelect.innerHTML;
		document.getElementById('vestiging_id').value = optie;
		document.getElementById('listVestiging').style.display='none'
	}


