

var ns6=document.getElementById&&!document.all

function restrictinput(maxlength,e,placeholder){
if (window.event&&event.srcElement.value.length>=maxlength)
return false
else if (e.target&&e.target==eval(placeholder)&&e.target.value.length>=maxlength){
var pressedkey=/[a-zA-Z0-9\.\,\/]/ //detect alphanumeric keys
if (pressedkey.test(String.fromCharCode(e.which)))
e.stopPropagation()
}
}

function countlimit(maxlength,e,placeholder){
var theform=eval(placeholder)
var lengthleft=maxlength-theform.value.length
var placeholderobj=document.all? document.all[placeholder] : document.getElementById(placeholder)
if (window.event||e.target&&e.target==eval(placeholder)){
if (lengthleft<0)
theform.value=theform.value.substring(0,maxlength)
placeholderobj.innerHTML=lengthleft
}
}


function displaylimit(theform,thelimit){
var limit_text='Nog <span id="'+theform.toString()+'">'+thelimit+'</span> karakters.'
if (document.all||ns6)
document.write(limit_text)
if (document.all){
eval(theform).onkeypress=function(){ return restrictinput(thelimit,event,theform)}
eval(theform).onkeyup=function(){ countlimit(thelimit,event,theform)}
}
else if (ns6){
document.body.addEventListener('keypress', function(event) { restrictinput(thelimit,event,theform) }, true); 
document.body.addEventListener('keyup', function(event) { countlimit(thelimit,event,theform) }, true); 
}
}


 var now  = new Date();
      now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);

  var visits = getCookie("counter");
  var layout = getCookie("state");
  var currState;

function setCookie(name, value, expires, path, domain, secure) {
      var curCookie = name + "=" + escape(value) +
          ((expires) ? "; expires=" + expires.toGMTString() : "") +
          ((path) ? "; path=" + path : "") +
          ((domain) ? "; domain=" + domain : "") +
          ((secure) ? "; secure" : "");
      document.cookie = curCookie;
    }

function getCookie(name) {
      var dc = document.cookie;
      var prefix = name + "=";
      var begin = dc.indexOf("; " + prefix);
      if (begin == -1) {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
      } else
        begin += 2;
      var end = document.cookie.indexOf(";", begin);
      if (end == -1)
        end = dc.length;
      return unescape(dc.substring(begin + prefix.length, end));
    }

function setState(){
      currLayout();
      if (document.forms[0].saveState.checked) setCookie("state",currState,now);
    }

function setLayout(){
  visits++;
  setCookie("counter", parseInt(visits), now);
  if (layout) {
    for (i=0;i<document.forms[0].length;i++) document.forms[0].elements[i].checked = false;
    for (i=0;i<layout.length;i+=2) {
       ind = (layout.charAt(i)==0) ? layout.charAt(i+1) : layout.charAt(i)+layout.charAt(i+1);
       document.forms[0].elements[ind].checked = true;
    }
  }
  document.forms[0].saveState.checked = false;
}

function currLayout(){
  currState = "";
  for ( i=0;i<document.forms[0].length; i++ ) {
    if (document.forms[0].elements[i].checked) {
       tmp = "0" + i;
       tmp = tmp.charAt(tmp.length-2) + tmp.charAt(tmp.length-1);
       currState += tmp;
    }
  }
}

	function validEmail(email) {
		if (email == "") {
		MailError="Vul eerst de beide e-mail adressen in";
			return false
		}
		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=email.match(emailPat)
		if (matchArray==null) {
  		MailError="Fout in opgegeven e-mailadres! tip: een  spatie of / : ; , tekens worden niet geaccepteerd! Let vooral op spaties wanneer je een e-mailadres kopieert. Controleer het even.";
  			return false
		}
		var user=matchArray[1]
		var domain=matchArray[2]
		if (user.match(userPat)==null) {
    		MailError="De gebruikers naam:" + user + " is niet goed.";
    		        return false
		}

		var IPArray=domain.match(ipDomainPat)
		if (IPArray!=null) {
    	  	for (var i=1;i<=4;i++) {
	    	if (IPArray[i]>255) {
	        MailError="Het IP nummer is niet goed kan dit niet zo verzenden!";
	        	return false
	    		}
    		}
    		return true
		}	

		var domainArray=domain.match(domainPat)
		if (domainArray==null) {
		MailError="De domein naam is niet juist.";	
			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>4) {
   		MailError="De domein naam is niet juist het moet eindigen in een twee letter land (.be .nl .us .it) een drie letter domein (.com .net .org .edu .mil) of 4 letters (.info .trade etc.).";		
   			return false
		}
		if (domain=="hotmaill.com") {
		MailError="Je wilt zenden naar: " + domain + " maar hotmail is toch met één L.";		
			return false
		}
		if (domain=="hotmial.com") {
		MailError="Je wilt zenden naar: " + domain + " bedoel je niet hotmail.";	
			return false
		}
		if (domain=="hoymail.com") {
		MailError="Je wilt zenden naar: " + domain + " bedoel je niet hotmail.";	
			return false
		}
		if (domain=="hotmaol.com") {
		MailError="Je wilt zenden naar: " + domain + " bedoel je niet hotmail.";	
			return false
		}
		if (domain=="hgotmail.com") {
		MailError="Je wilt zenden naar: " + domain + " bedoel je niet hotmail";	
			return false
		}
		if (domain=="hotamil.com") {
		MailError="Je wilt zenden naar: " + domain + " bedoel je niet hotmail";	
			return false
		}
		if (domain=="hotmal.com") {
		MailError="Je wilt zenden naar: " + domain + " bedoel je niet hotmail.";	
			return false
		}
		if (domain=="cello.nl") {
		MailError="Je wilt zenden naar: " + domain + " maar dat moet toch chello.nl zijn";	
			return false
		}
		if (len<2) {
		MailError="Inet adres zit geen HOSTNAAM zoals naam@HOSTNAME.be";
   			return false
		}
        return true;
}

function submitIt(form) {
            if (!validEmail(form.sender_email.value) &&
            !validEmail(form.recip_email.value) ||
            !validEmail(form.recip_email.value) ||
            !validEmail(form.sender_email.value)) {
			alert (MailError)
	    if (!validEmail(form.sender_email.value) &&
            !validEmail(form.recip_email.value)) {
			form.sender_email.focus()
			form.sender_email.select() }
        else {
            if (!validEmail(form.sender_email.value)) {
			form.sender_email.focus()
			form.sender_email.select()
            }

        else {
            if (!validEmail(form.recip_email.value)) {
			form.recip_email.focus()
			form.recip_email.select()
            }
        }
        }
			return false
        }
		return true
	}

function playSound(formObj)
  {
    {
     musicName =
formObj.midifile.options[formObj.midifile.selectedIndex].value; }
     if (musicName != "none")
     {
          window.location= "" + musicName;
      }
    else
     {
      alert("SEND-A-CARD Advice: Please select the music.");
      }
   }
