function MM_showHideLayers() {
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

function MM_findObj(n, d) {
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImgRestore() {
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() {
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function zet_emoticon(sIcon) {
	document.forms.frmGuestbook.txtComment.value += " " + sIcon + " "
	MM_showHideLayers('divEmoticons','','hide')
}

function SubmitForm()
{
	var txtWeb = document.getElementById('txtWeb');
	var rnd = Math.floor(Math.random()*1111111);
	//if(confirm("Als beveiliging tegen spam vragen we je onderstaand cijfer even over te typen.\n\n\n"+rnd);
	if(CheckURL(txtWeb.value))
	{
		document.forms['frmGuestbook'].action="";
		//alert("verzenden");
		document.forms['frmGuestbook'].submit();
	}
	else{
		//alert("spam");
		document.forms['frmGuestbook'].action="postspam.html";
	}
}

function CheckURL(urlStr)
{
	// mail-address
	if(urlStr.substring(0,4)!="http" && urlStr.indexOf("@")>1)
		return emailCheck(urlStr);
	
	// URL
	var txtWeb = document.getElementById('txtWeb');
	if (urlStr.indexOf(" ")!=-1)
	{
		alert("In een URL kunnen geen spaties voorkomen.\n\n["+emailStr+"]");
		txtWeb.value='';
		return false;
	}
	if(urlStr==""||urlStr==null)
	{
		txtWeb.value='';
		return true;
	}
	urlStr=urlStr.toLowerCase();
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var atom=validChars + '+';
	var urlPat=/^http:\/\/(\w*)\.([\-\+a-z0-9]*)\.(\w*)/;
	var matchArray=urlStr.match(urlPat);
	if (matchArray==null)
	{
		alert("De URL blijkt verkeerd te zijn. \nControleer of de url begint met http:// en 2 punten bevat.\n\n["+urlStr+"]");
		txtWeb.value='';
		return false;
	}
	var user=matchArray[2];
	var domain=matchArray[3];
	for (i=0; i<user.length; i++)
	{
		if (user.charCodeAt(i)>127) 
		{
			alert("De url bevat ongeldige tekens.\n\n["+urlStr+"]");
			txtWeb.value='';
			return false;
		}
	}
	for (i=0; i<domain.length; i++)
	{
		if (domain.charCodeAt(i)>127)
		{
			alert("De url bevat ongeldige tekens.\n\n["+urlStr+"]");
			txtWeb.value='';
			return false;
		}
	}
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) 
	{
		if (domArr[i].search(atomPat)==-1)
		{
			alert("De url blijkt foutief te zijn.\n\n["+urlStr+"]");
			txtWeb.value='';
			return false;
		}
	}
	if (domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].length!=3) { //&& domArr[domArr.length-1].search(knownDomsPat)==-1) {
		alert("De url moet eindigen met een domein van 3 letters of een landcode van 2 letters.\n\n["+urlStr+"]");
		txtWeb.value='';
		return false;
	}
	return true;
}

function emailCheck (emailStr) {
	var emailPat=/^(.+)@(.+)$/
	var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
	var validChars="\[^\\s" + specialChars + "\]"
	var quotedUser="(\"[^\"]*\")"
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
	var atom=validChars + '+'
	var word="(" + atom + "|" + quotedUser + ")"
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
	var matchArray=emailStr.match(emailPat)
	if (matchArray==null) {
		alert("Foutief mail-adres;\n\nHet e-mail-adres blijkt verkeerd te zijn (controleer @ en punten)\n\n["+emailStr+"]")
		return false
	}
	var user=matchArray[1]
	var domain=matchArray[2]
	if (user.match(userPat)==null) {
		alert("Foutief mail-adres;\n\nDe gebruikersnaam in het mail-adres blijkt verkeerd te zijn\n\n["+emailStr+"]")
		return false
	}

	var IPArray=domain.match(ipDomainPat)
	if (IPArray!=null) {
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
				alert("Foutief mail-adres:\n\nBestemmings- IP-adres is ongeldig!\n\n["+emailStr+"]")
				return false
			}
		}
		return true
	}
	var domainArray=domain.match(domainPat)
	if (domainArray==null) {
		alert("Foutief mail-adres;\n\nHet domein klopt niet.\n\n["+emailStr+"]")
		return false
	}

	var atomPat=new RegExp(atom,"g")
	var domArr=domain.match(atomPat)
	var len=domArr.length
	if (domArr[domArr.length-1].length<2 || 
		domArr[domArr.length-1].length>3) {
	   alert("Foutief mail-adres;\n\nHet mail-adres moet eindigen met een domein van 3 letters of een landcode van 2 letters.\n\n["+emailStr+"]")
	   return false
	}
	
	if (len<2) {
	   alert("Foutief mail-adres;\n\nHet adres bevat geen provider!\n\n["+emailStr+"]")
	   return false
	}
	
	return true;
}

window.status = "© 2003 - "+((new Date()).getFullYear())+" K.T.O.G. De Zodemannen | Alle rechten voorbehouden - Site technology: www.w-Design.be"