// JavaScript Ajax Document Boetsserkunst 2011

function getXMLHttp() {
				
	if ( window.XMLHttpRequest ) {
		
		try {
			var XMLHttp = new XMLHttpRequest();
		} catch (e) { }
		
	} else if ( window.ActiveXObject ) {
		
		try {
			var XMLHttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				var XMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) { }
		}
		
	}		
	
	return(XMLHttp);
	
}

function setCufon() {

	
	Cufon.replace('#topnav li a');
	Cufon.replace('#hometeksthdr, .subtitels, .smallsubtitels, .subtitel_ws, #titel_inschrijven', { fontFamily: 'Sansumi-bold', hover: true }); 
	
}

function clrMain() {
	
	var objmain = document.getElementById("main");			
	objmain.innerHTML = "<div id='galerie' class='divbg'>&nbsp;</div>";
	
}


function fnCbMain() {
    
    if ( (XMLHttp.readyState == 4) && (XMLHttp.status == 200) ) {		
		var objmain = document.getElementById("main");			
		objmain.innerHTML = XMLHttp.responseText;  
		setCufon(); 
    }
    
}

function fnHome() {
		
	clrMain();
	
	XMLHttp = getXMLHttp();		
	XMLHttp.open( "POST", "php/home.php", true);
    XMLHttp.onreadystatechange = fnCbMain;
    XMLHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	XMLHttp.send("dbsReq=0");
	
}


function fnProfiel() {
	
	clrMain();
	
	XMLHttp = getXMLHttp();		
	XMLHttp.open( "POST", "php/profiel.php", true);
    XMLHttp.onreadystatechange = fnCbMain;
    XMLHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	XMLHttp.send("dbsReq=0");
	
}

function fnAgenda() {
	
	clrMain();
	
	XMLHttp = getXMLHttp();		
	XMLHttp.open( "POST", "php/agenda.php", true);
    XMLHttp.onreadystatechange = fnCbMain;
    XMLHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	XMLHttp.send("dbsReq=0");
	
}


function fnKlei() {
	
	clrMain();
	
	XMLHttp = getXMLHttp();		
	XMLHttp.open( "POST", "php/klei.php", true);
    XMLHttp.onreadystatechange = fnCbMain;
    XMLHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	XMLHttp.send("dbsReq=0");
	
}

function fnWorkshop() {
	
	clrMain();
	
	XMLHttp = getXMLHttp();		
	XMLHttp.open( "POST", "php/workshop.php", true);
    XMLHttp.onreadystatechange = fnCbMain;
    XMLHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	XMLHttp.send("dbsReq=0");
	
}

function fnContact() {
	
	clrMain();
	
	XMLHttp = getXMLHttp();		
	XMLHttp.open( "POST", "php/contact.php", true);
    XMLHttp.onreadystatechange = fnCbMain;
    XMLHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	XMLHttp.send("dbsReq=0");
	
}

function fnLinks() {
	
	clrMain();
	
	XMLHttp = getXMLHttp();		
	XMLHttp.open( "POST", "php/links.php", true);
    XMLHttp.onreadystatechange = fnCbMain;
    XMLHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	XMLHttp.send("dbsReq=0");
	
}


function fnValidateEmail(email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   return reg.test(email);
}

function fnValidateDate(dat) {
	
	var retval = false;
	
	arDat = dat.split("-");
	
	if( arDat.length==3  ) {
		retval = checkDOK( arDat[0], arDat[1], arDat[2] );
	}
	
	return(retval);
		
}

function checkDOK(ds,ms,ys) {
			
	if( ds == null || ms == null || ys == null ) {
		return(false);
	}
	
	var d = parseInt(ds,10);
	var m = parseInt(ms,10);
	var y = parseInt(ys,10);
	
	if( !d || !m || !y ) {
		return(false);
	}
	
	if( d < 1 || d > 31 || m < 1 || m > 12 || y < 1970 || y > 2100 ) {
		return(false);
	}
		
	switch(m) {
		case 4:
		case 6:
		case 9:
		case 11:
			if( d > 30 ) return(false);
			break;
		case 2:
			if( checkleapyear(y) ) {
				if( d > 29 ) return(false);
			} else {
				if( d > 28 ) return(false);
			} 
			break;           
	}
	return(true);
	
}

function checkleapyear(datea) {
	
	datea = parseInt(datea);

	if(datea%4 == 0)
	{
		if(datea%100 != 0)
		{
			return true;
		}
		else
		{
			if(datea%400 == 0)
				return true;
			else
				return false;
		}
	}
	return false;
	
}


function fnSendEmail() {
		
	var objMsg = document.getElementById("eaTxt");
	var objEmailAdres = document.getElementById("ea");
	
	var msg = "";
	if( !fnValidateEmail(objEmailAdres.value) ) msg += " - U geen (correct) emailadres heeft ingevuld\n";
	if( !objMsg.value ) msg += " - U geen bericht heeft ingevuld\n";
	
	if( msg ) {
		msg = "Het bericht kan niet worden verstuurd omdat:\n\n" + msg +"\n";
		alert( msg );
	} else {
		XMLHttp = getXMLHttp();		
		XMLHttp.open( "POST", "php/contact.php", true);
		XMLHttp.onreadystatechange = fnCbMain;
		XMLHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
		XMLHttp.send("dbsReq=1&Msg=" + objMsg.value + "&EmailAdres=" +  objEmailAdres.value );
	}
	
}


function fnToggleDiv(hide) {
	
	objDivContainer = document.getElementById("container");
	objDivOverlay = document.getElementById("divOverlay");
	
	if( hide ) {
		objDivContainer.style.display    = "none";
		objDivContainer.style.visibility = "hidden";	
	} else {
		objDivContainer.style.display    = "block";
		objDivContainer.style.visibility = "visible";
	}
}


function fnValidInschrijving() {
	
	var Msg = "";
	
	
	if( !document.getElementById("voornaam").value ) {
		Msg += " - Voornaam\r\n";
	}
	
	if( !document.getElementById("achternaam").value ) {
		Msg += " - Achternaam\r\n";
	}
	
	if( !fnValidateEmail( document.getElementById("email").value ) ) {
		Msg += " - Emailadres" + ( document.getElementById("email").value ? " (geen geldig adres)" : "") + "\r\n";
	}
	
	if( !document.getElementById("telefoonnummer").value ) {
		Msg += " - Telefoonnummer\r\n";
	}
	
	
	if( !( document.getElementById("chkDinsdag").checked || document.getElementById("chkWoensdag").checked) ) {
		Msg += " - Avonden\r\n";
	}
	
	if( !fnValidateDate( document.getElementById("datum").value ) ) {
		Msg += " - Aanvangsdatum " + ( document.getElementById("datum").value ? " (geen geldig datum: d-mm-yyyy)" : "") + "\r\n";
	}
	
	if( Msg != "" ) {
		Msg = "Een van de volgende gegevens zijn niet of niet goed ingevuld:\r\n\r\n" + Msg;
	}
	
	return(Msg);
	
}

function fnInschrijven() {

	if( Msg = fnValidInschrijving() ) {
		alert(Msg);
	} else {
		
		XMLHttp = getXMLHttp();		
		XMLHttp.open( "POST", "php/inschrijven.php", true);
		XMLHttp.onreadystatechange = fnCbInschrijven;
		XMLHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
		XMLHttp.send("vn=" + document.getElementById("voornaam").value + 
					 "&an="	+ document.getElementById("achternaam").value + 
					 "&em="	+ document.getElementById("email").value + 
					 "&tn="	+ document.getElementById("telefoonnummer").value + 
					 "&as="	+ document.getElementById("adres").value + 
					 "&pc="	+ document.getElementById("postcode").value + 
					 "&wp="	+ document.getElementById("woonplaats").value + 
					 "&ad="	+ (document.getElementById("chkDinsdag").checked ? "-1" : "0") + 
					 "&aw="	+ (document.getElementById("chkWoensdag").checked ? "-1" : "0") + 
					 "&dt="	+ document.getElementById("datum").value + 
					 "&op="	+ document.getElementById("opm").value
					 );
	}
	
}

function fnCbInschrijven() {
    
    if ( (XMLHttp.readyState == 4) && (XMLHttp.status == 200) ) {		
		var objmain = document.getElementById("inschrijving");			
		objmain.innerHTML = XMLHttp.responseText;  
		setCufon(); 
    }
    
}
