// JavaScript Document
//Globale declaraties
var marrUserSettings = Array();
var mPage = '';

	function init(pagina) {
		mPage = pagina;
		getUserSettings();
		setContent(pagina);
		setLang(marrUserSettings['lang']);
	}
	
	
	function setLang(sTaal){
		// De taal wordt aangepast in de cookie
		marrUserSettings['lang'] = sTaal;
		addUserSetting('lang',sTaal);
		// Onderstaant worden enkele tags overlopen (span, div, h1, h3 en button)
		// indien ze class='repLang' binnen de tag hebben wordt de content ervan aangepast in de replaceLang functie
		replaceLang('span');
		replaceLang('h1');
		replaceLang('div');
		replaceLang('pre');
		if (mPage == 'product'){
			ProductInit();
		}
		if (mPage == 'news'){
			NewsInit();
		}
		if (mPage == 'contact'){
			ContactInit();
		}
	}
	


	function replaceLang(sTag){
		// Alle elementen in de huidige pagina met tagname sTag in array steken
		arrTagItems = document.getElementsByTagName(sTag);
		// Alle elementen in arrTagItems overlopen en de nodige bewerken
		for (var i = 0;i < arrTagItems.length;i++){
			if (arrTagItems[i].className == 'repLang'){
				sId = arrTagItems[i].getAttribute('id');
				var sData = transformXML(escape('xml/content.xml'), escape('xml/content.xsl'), marrUserSettings['lang'], sId);
				if (sData.length > 1){
					document.getElementById(sId).innerHTML = sData;
				}
			}
		}
	}
	
	function setContent(pagina) {
		if(pagina == 'index'){
			//standaard even op nl zetten om direct erna toch te kiezen tussen 2 talen
			setLang('nl');
			getUserSettings();
			alert('test')
			}
		else if(pagina == 'news'){
			 NewsInit()
		}
		else if(pagina == 'agenda'){
			 AgendaInit()
		}
		else if(pagina == 'preferences'){
			if (!marrUserSettings['loggedIn']){
				window.location.href="home.html";
			}
			document.getElementById("uName").innerHTML = "&#160;" + marrUserSettings['userName'];
			
		}
	}
	  //////////////////	
	 // UserSettings //
	//////////////////
	
	function addUserSetting(name, value){
		var sUserSettings = readCookie('userSettings');
		// Controleren of er al userSettings zijn
		if (sUserSettings.length > 1){
			// Er zijn al userSettings en we kijken of die die we toevoegen eventueel al bestaan.
			var arrSettings = sUserSettings.split('&');
			var sNewSettings = '';
			var bAdd = true;
			for (i = 0;i < arrSettings.length; i++){
				arrsValue = arrSettings[i].split('=');
				if (arrsValue[0] == name){
					sNewSettings += '&' + name + '=' + value;
					bAdd = false;
				}else{
					sNewSettings += '&' + arrsValue[0] + '=' + arrsValue[1];
				}
			}
			if (bAdd){
				sNewSettings += '&' + name + '=' + value;
			}
			sNewSettings = sNewSettings.substr(1);
		}else{
			// Er is nog geen cookie dus ook geen userSettings, cookie kan expired zijn of eventueel nieuwe gebruiker.
			sNewSettings = name + '=' + value;
		}
		//	Nieuwe cookie schrijven.
		writeCookie('userSettings',sNewSettings,250);
	}

	function getUserSettings(){
		var sUserSettings = readCookie('userSettings');
		var arrSettings = sUserSettings.split('&');
		for (i = 0;i < arrSettings.length; i++){
			arrsValue = arrSettings[i].split('=');
			marrUserSettings[arrsValue[0]] = arrsValue[1];
		}
	}
	
	function delUserSetting(name){
		var sUserSettings = readCookie('userSettings');
		var arrSettings = sUserSettings.split('&');
		var sNewSettings = '';
		for (i = 0;i < arrSettings.length; i+=2){
			var arrWaarden = [];
			arrWaarden = arrSettings[i].split('=');
			if (arrWaarden[i] != name){
				sNewSettings += '&' + arrWaarden[i] + '=' + arrWaarden[i+1];
			}
		}
		// eerste & wegwerken ...
		if (arrSettings.length > 0){
			sNewSettings = sNewSettings.substr(1);
		}
		writeCookie('userSettings',sNewSettings,250);
	}
	
	function setPreferences(){
		// Voorkeuren op de preferences-pagina besturen
		if (document.getElementById("selectTaal").selectedIndex != 0){
			var sTaal = document.getElementById("selectTaal").value;
			marrUserSettings['lang'] = sTaal;
			addUserSetting('lang',sTaal);
		}
		window.location.reload(true);
	}
	
	  /////////////////////////	
	 // Formulier validatie //
	/////////////////////////
	
	function validateContact(){
		document.contactform.txtContactOnderwerp.style.backgroundColor = '#FFFFFF';
		document.contactform.txtContactEmail.style.backgroundColor = '#FFFFFF';
		document.contactform.txtContactNaam.style.backgroundColor = '#FFFFFF';
		var naam = document.contactform.txtContactNaam.value;
		var email = document.contactform.txtContactEmail.value;
		var onderwerp = document.contactform.txtContactOnderwerp.value;
		var boodschap = document.contactform.txtContactBoodschap.value;
		var naamRegxp = /^([a-zA-Z,' ']+)$/;
		var emailRegxp = /^([\w]+)(.[\w]+)*@([\w]+)(.[\w]{2,3}){1,2}$/;
		var onderwerpRegxp = /^([0-9A-Za-z,' ']+)$/;
		if (naamRegxp.test(naam)){
			if (emailRegxp.test(email)){
				if (onderwerpRegxp.test(onderwerp)){
					document.contactform.submit();
					return true;
				}else{
					document.contactform.txtContactOnderwerp.style.backgroundColor = '#8F1A1A';}
			}else{
				document.contactform.txtContactEmail.style.backgroundColor = '#8F1A1A';}
		}else{
			document.contactform.txtContactNaam.style.backgroundColor = '#8F1A1A';}
	}
	


	//Onderstaande stukken JS zijn uit snippets geplukt ...
	  /////////////////////////
	 // Cookiewriter/reader //
	/////////////////////////
	
	function writeCookie(name, value, hours) {
		var expire = "";
		if(hours != null) {
			expire = new Date((new Date()).getTime() + hours * 36000);
			expire = "; expires=" + expire.toGMTString();
		}
		document.cookie = name + "=" + escape(value) + expire;
	}

	function readCookie(name) {
		var cookieValue = "";
		var search = name + "=";
		if(document.cookie.length > 0) {
			offset = document.cookie.indexOf(search);
			if (offset != -1) {
				offset += search.length;
				end = document.cookie.indexOf(";", offset);
				if (end == -1) end = document.cookie.length;
				cookieValue = unescape(document.cookie.substring(offset, end));
			}
		}
		return cookieValue;
	}
	
	function eraseCookie(name) {

		writeCookie(name,"",-1);

		window.location.reload(true);

	}
	
	
function PopupPic(sPicURL, height, width) {
     window.open( "popup.html?"+sPicURL, "","resizable=1",height,width);

   } 
  
 function waitPreloadPage() { //DOM
if (document.getElementById){
document.getElementById('prepage').style.visibility='hidden';
/*document.getElementById('loaded').style.visibility='visible';*/
}else{
if (document.layers){ //NS4
document.prepage.visibility = 'hidden';
/*document.loaded.visibility = 'visible';*/
}
else { //IE4
document.all.prepage.style.visibility = 'hidden';
/*document.all.loaded.style.visibility = 'visible';*/
}
}
}
