// JavaScript Document
function UnCryptMailto(s, shift) {
	var n=0;
	var r="";
	for(var i=0;i<s.length;i++) { 
		n=s.charCodeAt(i); 
		if (n>=8364) {n = 128;}
		r += String.fromCharCode(n-(shift)); 
	}
	return r;
}
function linkTo_UnCryptMailto(s, shift)	{
	location.href=UnCryptMailto(s, shift);
}



<!-- Original:  Sandeep V. Tamhankar  -->
<!-- mod:  Wilhelm Jansen -->
<!-- Begin
function emailCheck (emailStr) {

if(document.pb4form.Mitteilung.value == "")  {
   alert("Bitte geben Sie eine Mitteilung ein!");
   document.pb4form.Mitteilung.focus();
   return false;
  }
if(document.pb4form.Name.value == "")  {
   alert("Bitte geben Sie Ihren Nachnamen ein!");
   document.pb4form.Name.focus();
   return false;
  }
if(document.pb4form.Vorname.value == "")  {
   alert("Bitte geben Sie Ihren Vornamen ein!");
   document.pb4form.Vorname.focus();
   return false;
  }
if(document.pb4form.Strasse.value == "")  {
   alert("Bitte geben Sie Ihre Strasse ein!");
   document.pb4form.Strasse.focus();
   return false;
  }
if(document.pb4form.HausNr.value == "")  {
   alert("Bitte geben Sie Ihre Hausnummer ein!");
   document.pb4form.HausNr.focus();
   return false;
  }
if(document.pb4form.PLZ.value == "")  {
   alert("Bitte geben Sie Ihre PLZ ein!");
   document.pb4form.PLZ.focus();
   return false;
  }
if(document.pb4form.Ort.value == "")  {
   alert("Bitte geben Sie Ihren Ort ein!");
   document.pb4form.Ort.focus();
   return false;
  }
if(document.pb4form.Tel.value == "")  {
   alert("Bitte geben Sie Ihren Telefonnummer ein!");
   document.pb4form.Tel.focus();
   return false;
  }


// Test country oder TLD.
//  1 für testen, 0 nicht testen
var checkTLD=1;
 
// TLDs Liste
var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
 
// user@domain format
var emailPat=/^(.+)@(.+)$/;
 
// Liste zeichen ( ) < > @ , ; : \ " . [ ]
var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
var validChars="\[^\\s" + specialChars + "\]";
 
// in Anführungszeichen? (dann sind special charakters erlaubt)
var quotedUser="(\"[^\"]*\")";
 
// domains mit IP addressen
 
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) {
 
// test Anzahl der @
 
alert("Bitte geben Sie eine korrekte E-Mail-Adresse ein!");
return false;
}
var user=matchArray[1];
var domain=matchArray[2];
 
// test gültige ASCII characters (0-127).
 
for (i=0; i<user.length; i++) {
if (user.charCodeAt(i)>127) {
alert("Bitte geben Sie eine korrekte E-Mail-Adresse ein!");
return false;
   }
}
for (i=0; i<domain.length; i++) {
if (domain.charCodeAt(i)>127) {
alert("Der Domainname hat ung&uuml;ltige Zeichen!");
return false;
   }
}
 
 
if (user.match(userPat)==null) {
 
// user nicht OK
 
alert("Bitte geben Sie eine korrekte E-Mail-Adresse ein!");
return false;
}
 
// IP addresse OK ?
 
var IPArray=domain.match(ipDomainPat);
if (IPArray!=null) {
 
// es handelt sich um eine IP-Adresse
 
for (var i=1;i<=4;i++) {
if (IPArray[i]>255) {
alert("Empfänger IP-Adresse is ungültig !");
return false;
   }
}
return true;
}
 
// Domain ist ein "symbolic name",  gültig ?
 
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("Domainname ist ungültig !");
return false;
   }
}
 
/*
domain name valid, testen bekannte top-level domain
hostname vorangestellt ?
*/
 
if (checkTLD && domArr[domArr.length-1].length!=2 &&
domArr[domArr.length-1].search(knownDomsPat)==-1) {
alert("Die E-Mail-Adresse muss mit einer bekannter Domain (TLD) oder mit 2 Zeichen enden!");
return false;
}
 
// hostname vorangestellt ?
 
if (len<2) {
alert("Bitte geben Sie eine korrekte E-Mail-Adresse ein!");
return false;
}
 
// hier angekommen ist alles OK
return true;
}
 
//  End -->


var getElementsByClassName = function (className, tag, elm){
         if (document.getElementsByClassName) {
                   getElementsByClassName = function (className, tag, elm) {
                            elm = elm || document;
                            var elements = elm.getElementsByClassName(className),
                                      nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
                                      returnElements = [],
                                      current;
                            for(var i=0, il=elements.length; i<il; i+=1){
                                      current = elements[i];
                                      if(!nodeName || nodeName.test(current.nodeName)) {
                                               returnElements.push(current);
                                      }
                            }
                            return returnElements;
                   };
         }
         else if (document.evaluate) {
                   getElementsByClassName = function (className, tag, elm) {
                            tag = tag || "*";
                            elm = elm || document;
                            var classes = className.split(" "),
                                      classesToCheck = "",
                                      xhtmlNamespace = "http://www.w3.org/1999/xhtml",
                                      namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
                                      returnElements = [],
                                      elements,
                                      node;
                            for(var j=0, jl=classes.length; j<jl; j+=1){
                                      classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
                            }
                            try      {
                                      elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
                            }
                            catch (e) {
                                      elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
                            }
                            while ((node = elements.iterateNext())) {
                                      returnElements.push(node);
                            }
                            return returnElements;
                   };
         }
         else {
                   getElementsByClassName = function (className, tag, elm) {
                            tag = tag || "*";
                            elm = elm || document;
                            var classes = className.split(" "),
                                      classesToCheck = [],
                                      elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
                                      current,
                                      returnElements = [],
                                      match;
                            for(var k=0, kl=classes.length; k<kl; k+=1){
                                      classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
                            }
                            for(var l=0, ll=elements.length; l<ll; l+=1){
                                      current = elements[l];
                                      match = false;
                                      for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
                                               match = classesToCheck[m].test(current.className);
                                               if (!match) {
                                                        break;
                                               }
                                      }
                                      if (match) {
                                               returnElements.push(current);
                                      }
                            }
                            return returnElements;
                   };
         }
         return getElementsByClassName(className, tag, elm);
};

