
	oldImage = 1;

		
		
		
	
	function init() {
		
		if (document.getElementById('scrollphoto')) {
			
			oldObject = 1;
		}
		
		if (document.getElementById('promotiebalk')) {
		
		
		
		}
		
	}


	function PreSubmitWinkelwagen() {
	
		required = Array(
					
			'gender', 
			'achternaam', 
			'initials',
			'straat', 
			'huisnr',
			'postcode', 
			'plaats', 
			'telefoon',
			'email'

		);
		
		
				
		parent.frames.SwitchTab(2);
		return true;
	}
	
	function preSubmit(form, EndFunction) {
	
		switch (form.name) {
			
			case "bestelform":
			case "bevestigform":
			
				required = Array(
					
					'gender', 
					'achternaam', 
					'voornaam',
					'straat', 
					'huisnr',
					'postcode', 
					'plaats', 
					'phone',
					'email'
		
				);
			break;
			
			case "nieuwsform":
				required = Array(
					'voornaam', 
					'email'
				);
			break;
			
			case "contactform":
				required = Array(
					'achternaam', 
					'email'
				);
		
			break;
			
			case "contactofferte":
				required = Array(
	
					'achternaam', 
					'email'
		
				);
		
			break;
			
			case "contactbellen":
			
				required = Array(
					'achternaam', 
					'phone'
				);
		
			break;
			
			case "contactlandinga":
			
				required = Array(
					'achternaam', 
					'phone',
					'email'
				);
		
			break;
			
			default:
				required = Array();
			break;
		}
		
		doContinue = true;

		for (i in required) {
		
			obj = document.getElementById('lbl_' + required[i]);
			val = form[required[i]].value;

			obj.style.color = '#666';
			if (val == '') {
			
				doContinue = false;
				obj.style.color = '#ff0000';
			}

		}
		

		
		if (typeof form['email'] != 'undefined' ) {
		
			if (form['email'] != '') {

			re = new RegExp("[a-zA-Z0-9\.-_]+?(@[a-zA-Z0-9-_]+?)\\.{1}", 'gi');
			e = form['email'].value;
			m = e.match(re);

			if (m == null) {
				document.getElementById('lbl_email').style.color = '#ff0000';
				alert('ongeldig email adres');
				return false;
				doContinue = false;
			}
			
			}
			
		}
	

		number_fields = Array('huisnr', 'telefoon', 'phone');

		for (i in number_fields) {
			
			var c = false;
			
			for (e in required) {
				if (required[e] == number_fields[i]) {
					c = true;
					break;
				}
			}
			
			if (!c) {
				continue;
			}
		
			if (!form[number_fields[i]]) {
				continue;			
			}
			
			obj = document.getElementById('lbl_' + number_fields[i]);
			val = form[number_fields[i]].value;

			re = new RegExp("[0-9\\+\\(\\)\\-]+?", "gi");
			m = val.match(re);

			if (m == null) {
				obj.style.color = '#ff0000';
				doContinue = false;
			}

		}

		if (!doContinue) {
			alert('Niet alle verplichte velden zijn ingevuld.' + "\nVerplichte velden zijn gemarkeerd met een *");
			return false;
		}
		
		if (typeof EndFunction != 'undefined') {
			EndFunction();
		}
	
		form.submit();
		
		//return doContinue;

	}


	function checkForm(form) {

		required = Array(
		
			'achternaam',
			'telefoon',
			'email'

		);

		doContinue = true;

		for (i in required) {

			obj = document.getElementById('lbl_' + required[i]);
			val = document.getElementsByName(required[i])[0].value;
			obj.style.color = '#fff';

			if (val == '') {
				doContinue = false;
				obj.style.color = '#ff0000';
			}

		}

		re = new RegExp("[a-zA-Z0-9\.-_]+?(@[a-zA-Z0-9-_]+?)\\.{1}", 'gi');
		e = document.getElementsByName('email')[0].value;
		m = e.match(re);

		if (m == null) {
			document.getElementById('lbl_email').style.color = '#ff0000';
			doContinue = false;
		}

		number_fields = Array('telefoon');

		for (i in number_fields) {
			
			obj = document.getElementById('lbl_' + number_fields[i]);
			val = document.getElementsByName(number_fields[i])[0].value;

			re = new RegExp("[0-9\\+\\(\\)\\-]+?", "gi");
			m = val.match(re);

			if (m == null) {
				obj.style.color = '#ff0000';
				doContinue = false;
			}

		}

		if (!doContinue) {
			alert('Not all the required fields are filled.' + "\nRequired fields are marked with *");
		}


		return doContinue;

	}


	
	
	function showHide(objId) {
			
		if (window["lastObjId"]) {
			document.getElementById(window["lastObjId"]).style.display = 'none';
		}
		
		obj = document.getElementById(objId);
		
		if (typeof obj == 'undefined') {
			alert('Object ID not found');
			return;
		}
		
		obj.style.display = 'block'
		lastObjId = objId;
		
	}
	
	function Hide(elementid){

		document.getElementById(elementid).style.display = 'none';

}
	
	
	
	function PromoCollapse(PromoObj) {
	
		if (typeof document.getElementById(PromoObj) == 'undefined') {
			return;
		}
	
		if (document.getElementById(PromoObj).style.display == 'none') {
			document.getElementById(PromoObj).style.display = 'block';
		} else {
			document.getElementById(PromoObj).style.display = 'none';
		}
	
	}
		
	
	function popupImageGallery(ArticleId){
	
  		windowObject.venster(570,500, true);
		windowObject.url('/includes/image-gallery.php?articleid=' + ArticleId);

	}
	
	function SwitchImage(ParamImage, ArticleId) {
	
		if (ParamImage == '') {
			return;
		}
		
		document.getElementById('p01a' + ArticleId).src = ParamImage;
	
	}
	
	function CheckNumeric(obj) {
			
		var re = new RegExp("[^0-9]", "gi");
		obj.value = obj.value.replace(re, '');
		
		if (obj.value == 0) {
			obj.value = 1;
		}
	
	}
	
		
	
	function SendForm(FormName, ignoreErrors) {
	
		if (ignoreErrors == null) {
			ignoreErrors = true;
		}
	
		var Form = document.forms[FormName];
		var Elements = Form.elements;
		var PostVars = '';
		
		
		for (var i = 0; i < Elements.length; i++) {
			
			if (Elements[i].name == '' && Elements[i].type != 'submit') {
				if (!ignoreErrors) {
					alert(Elements[i].type + ' name is empty!');
					return false;
				}
			}
			
			PostVars == '' ? preRequisite = '' : preRequisite = '&';
		
			switch (Elements[i].type) {
			
				case "hidden":
				case "textarea":
				case "select":
				case "select-one":
				case "text":
					PostVars += preRequisite + Elements[i].name + '=' + Elements[i].value;
				break;
				
				case "checkbox":
				case "radio":
					if (typeof document[FormName][Elements[i].name].length != 'undefined') {
						var len = document[FormName][Elements[i].name].length;
						for (var e = 0; e < len; e++) {
							if (document[FormName][Elements[i].name][e].checked) {
								PostVars += preRequisite + Elements[i].name + '=' + document[FormName][Elements[i].name][e].value;
							}
						}
					} else {
						if (Elements[i].checked) {
							PostVars += preRequisite + Elements[i].name + '=' + Elements[i].value;
						}
					}
					
				break;
				

			
			}
			
		
		}
	
		AjaxCall('/bestel', function() {
			
			eval(globalXmlData);
			
			UpdateWinkelwagen(winkelwagen['totaalprijs'], winkelwagen['aantal']);
			
			ToonKassa();
			
		}, 'POST', PostVars);
	
		return false;
	}
	
	
	function SlideImages(action, number, max) {
	
		if (typeof globalImageRotateNum == 'undefined') {
			globalImageRotateNum = 1;
		}
		
		if (action != null) {
		
			if (action == 'next' && ((globalImageRotateNum + 1) <= max)) {
			
				document.getElementById('img' + globalImageRotateNum).style.display = 'none';
				document.getElementById('img' + (globalImageRotateNum + 1)).style.display = 'block';
				oldImageRotateNum = globalImageRotateNum;
				globalImageRotateNum += 1;
			
			}
						
			if (action == 'prev' && ((globalImageRotateNum - 1) >= 1)) {
			
				document.getElementById('img' + globalImageRotateNum).style.display = 'none';
				document.getElementById('img' + (globalImageRotateNum - 1)).style.display = 'block';
				oldImageRotateNum = globalImageRotateNum;
				globalImageRotateNum -= 1;
			
			}

		}
		
		if (number != null) {
		
			document.getElementById('img' + globalImageRotateNum).style.display = 'none';
			document.getElementById('img' + number).style.display = 'block';
			oldImageRotateNum = globalImageRotateNum;
			globalImageRotateNum = number;
				
		}
		
		
		if (document.getElementById('hrefNext') != null) {
			if (globalImageRotateNum == max) {
				document.getElementById('hrefNext').style.display = 'none';
			} else {
				document.getElementById('hrefNext').style.display = 'block';
			}
		}
				
		if (document.getElementById('hrefPrev') != null) {
			if (globalImageRotateNum == 1) {
				document.getElementById('hrefPrev').style.display = 'none';
			} else {
				document.getElementById('hrefPrev').style.display = 'block';
			}
		}
				
		document.getElementById('imgHref' + globalImageRotateNum).style.fontWeight = 'bold';
		
		if (typeof oldImageRotateNum != 'undefined' && oldImageRotateNum != globalImageRotateNum) {
			document.getElementById('imgHref' + oldImageRotateNum).style.fontWeight = 'normal';
		}
		
	
	}
	
	

  

	
	function VerwijderBestelling(CRC) {

		PostVars = 'CRC=' + CRC;

		AjaxCall('/winkelwagen/verwijder/', function() {
			
			eval(globalXmlData);

			var c = document.getElementById('crcId' + CRC);
			
			var p = c.parentNode;
			p.removeChild(c);

			UpdateWinkelwagen(winkelwagen['totaalprijs'], winkelwagen['aantal']);
			
		}, 'POST', PostVars);

	}

	function ToonKassa(index) {
	
		windowObject.venster(800, 600, true);
		
		winkelwagen = Array();
		
		//winkelwagen['winkelwagen'] = windowObject.tab('', '/winkelwagen');
		//winkelwagen['gegevens'] = windowObject.tab('2. Uw gegevens', '/winkelwagen/gegevens');
		
		winkelwagen['winkelwagen'] = windowObject.tab('1. Winkelwagen', '/winkelwagen',function() { 
				return false; 
			}
		, true);
		
		winkelwagen['gegevens'] = windowObject.tab('2. Uw gegevens', '/winkelwagen/gegevens',function() { 
				return false; 
			}
		, true);
		
		winkelwagen['betaalmethode'] = windowObject.tab('3. Afrekenen', null,function() { 
				return false; 
			}
		, true);
		
	/*	winkelwagen['bevestiging'] = windowObject.tab('4. Bevestiging', null,function() { 
				return false; 
			}
		, true);*/
		
		if (typeof index == 'undefined') {
			windowObject.activateTab(winkelwagen['winkelwagen']);
		} else {
			windowObject.activateTab(winkelwagen[index]);
		}
		
	}
	
	function SwitchTab(index) {
		windowObject.activateTab( windowObject.returnTabObject(index) );
	}

	function UpdateWinkelwagen(totaalprijs, totaalartikelen) {

		if (typeof parent.frames.document.getElementById('HeaderTotaalPrijs') != 'undefined') {
			parent.frames.document.getElementById('HeaderTotaalPrijs').innerHTML = totaalprijs;
		}

		if (typeof parent.frames.document.getElementById('HeaderArtikelen') != 'undefined') {
			parent.frames.document.getElementById('HeaderArtikelen').innerHTML = totaalartikelen;
		}

	}
	
	
	
	/*	###	GOOGLE AND ROUTE FUNCTIONS ################################################################################################ */
	
	
	
	function GoogleMapsLoader(MapIndex) {
	
		if (!document.getElementById('map' + MapIndex)) {
			return;
		}
		
		if (!document.getElementById('GMap_address' + MapIndex)) {
			return;
		}
		
		var maptitle = '<span style="font-weight: bold; font-size: 14px;">'+document.getElementById('MapsTitle' + MapIndex).value + '</span><br/>';
		
		var address = document.getElementById('GMap_address'+MapIndex).value;
		
		var map = new GMap2(document.getElementById("map" + MapIndex));
		map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());	
		map.setCenter(new GLatLng(37.4419, -122.1419), 13);
	
    	var ValidGooglePoint = false;
    	AGooglePoint = false;
	   	var geocoder = new GClientGeocoder();
	  
	   	if (geocoder) {  		
	   			      
	   		if (address != '') {
	       		var addText = maptitle + address;
	       		
	       		geocoder.getLatLng(
			    	address,
			    	function(point) {
			    	
			      		if (point) {
			        		map.setCenter(point, 13);
			        	
			        		ValidGooglePoint = true;
			        		AGooglePoint = true;
					        var marker1 = new GMarker(point);
					        map.addOverlay(marker1);
					        marker1.openInfoWindowHtml(addText);
					       
			      		} else {
			      			document.getElementById('map' + MapIndex).style.display = 'none';
			      		}
			    	} 
			  	);
			}					 					  
	 	}
			     	
	}
	
	function MapRoute(MapIndex) {
				
		if (!AGooglePoint) {
			return;
		}
		
		var straat = document.getElementById('maps_straat' + MapIndex).value;
		var huisnr = document.getElementById('maps_huisnr' + MapIndex).value;
		var plaats = document.getElementById('maps_plaats' + MapIndex).value;
		var land   = document.getElementById('maps_land' + MapIndex).value;
		var GoogleRouteContinue = true;
		
		var GoogleAddress = Array(
			Array('straat' + MapIndex, straat), 
			Array('huisnr' + MapIndex, huisnr), 
			Array('plaats' + MapIndex, plaats)
		);
		
		for (i in GoogleAddress) {
			document.getElementById('lbl_' +  GoogleAddress[i][0]).style.color	= '#000';
			if (GoogleAddress[i][1] == '') {
				document.getElementById('lbl_' + GoogleAddress[i][0]).style.color	= '#ff0000';		
				GoogleRouteContinue = false;
			}
		}
		
		if (!GoogleRouteContinue) {
		
			alert('Fields marked with * are required!');
			return;
		}
		
			
		
		
		map = new GMap2(document.getElementById("map" + MapIndex));
	   

		document.getElementById("map-text" + MapIndex).innerHTML = '';
  		directionsPanel = document.getElementById("map-text" + MapIndex);
  		
  		GoogleFromAddress = straat + ' ' + huisnr + ', ' + plaats + ' ' + land;
  		GoogleToAddress = document.getElementById('GMap_address'+ MapIndex).value;
  		
  		directions = new GDirections(map, directionsPanel);
        GEvent.addListener(directions, "error", handleErrors);
  		directions.load("from: " + GoogleFromAddress + " to: " + GoogleToAddress, { "locale": 'us_US' });

	
	}
	
	function handleErrors(){
	   if (directions.getStatus().code == G_GEO_UNKNOWN_ADDRESS)
	     alert("No corresponding geographic location could be found for one of the specified addresses. This may be due to the fact that the address is relatively new, or it may be incorrect\nError code: " + directions.getStatus().code);
	   else if (directions.getStatus().code == G_GEO_SERVER_ERROR)
	     alert("A geocoding or directions request could not be successfully processed, yet the exact reason for the failure is not known.\n Error code: " + directions.getStatus().code);
	   
	   else if (directions.getStatus().code == G_GEO_MISSING_QUERY)
	     alert("The HTTP q parameter was either missing or had no value. For geocoder requests, this means that an empty address was specified as input. For directions requests, this means that no query was specified in the input.\n Error code: " + directions.getStatus().code);


	     
	   else if (directions.getStatus().code == G_GEO_BAD_KEY)
	     alert("The given key is either invalid or does not match the domain for which it was given. \n Error code: " + directions.getStatus().code);

	   else if (directions.getStatus().code == G_GEO_BAD_REQUEST)
	     alert("A directions request could not be successfully parsed.\n Error code: " + directions.getStatus().code);
	    
	   else alert("An unknown error occured.");
	   
	}

	
	
	
	function AddFavorite() {
	
		BookmarkURL = 'http://demo.systion.eu';
		BookmarkLBL = 'Systion';
		
		if (window.sidebar) { // Mozilla Firefox Bookmark  
        	window.sidebar.addPanel(BookmarkLBL, BookmarkURL,"");  
        } else if( window.external ) { // IE Favorite  
        	window.external.AddFavorite( BookmarkURL, BookmarkLBL);  
        } else if(window.opera) { // Opera 7+  
            return false; // do nothing - the rel="sidebar" should do the trick  
        } else { // for Safari, Konq etc - browsers who do not support bookmarking scripts (that i could find anyway)  
            alert('Unfortunately, this browser does not support the requested action, please bookmark this page manually.');  
        } 
	
	}
	
	
	
	

