email_defaulttext     = "E-Mail Adresse";
search_defaulttext    = "Suchbegriff";
firstname_defaulttext = "Vorname";
lastname_defaulttext  = "Nachname";
memberid_defaulttext  = "Mitgliedsnummer";

function clear_element (object, defaulttext) {

   if (object.value == defaulttext) object.value = "";

}

function restore_element (object, defaulttext) {

   if (object.value.length == 0) object.value = defaulttext;

}

function checknewsletterform() {

   if ((MM_findObj("email").value == email_defaulttext) || (checkemail(MM_findObj("email").value) == false) || (MM_findObj("email").value.length == 0)) {
   
      alert('Bitte gib eine gültige E-Mail Adresse ein');
      
      return false;
      
   }
   
}

function checksearchform() {

   if ((MM_findObj("search").value == search_defaulttext) || (MM_findObj("search").value.length == 0)) {
   
      alert('Bitte gib einen Suchbegriff ein');
      
      return false;
      
   }
   
}

function checkloginform() {

   login_error=false;
   errormsg="";
   
   if(MM_findObj("first_name").value == "" || MM_findObj("first_name").value == firstname_defaulttext) {
   
      login_error=true;
      errormsg=errormsg+"Bitte gib deinen Vornamen ein.\n";
      
   }
   
   if(MM_findObj("last_name").value == "" || MM_findObj("last_name").value == lastname_defaulttext) {
   
      login_error=true;
      errormsg=errormsg+"Bitte gib deinen Nachnamen ein.\n";
      
   }
   
   if(MM_findObj("member_id").value == "" || MM_findObj("member_id").value == memberid_defaulttext) {
   
      login_error=true;
      errormsg=errormsg+"Bitte gib deine Mitgliedsnummer ein.\n";
      
   }
   
   if(login_error) {
   
      alert("Bitte korrigiere deine Eingaben:\n\n"+errormsg);
      return false;
      
   } else {
   
      return true;
      
   }
   
}
	
function MM_findObj(n, d) { //v3.0
   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); return x;
}

function checkemail(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) {
   
      return false;
      
   }
   
   var user=matchArray[1]
   var domain=matchArray[2]
   
   if (user.match(userPat)==null) {
   
      return false;
      
   }
   
   var IPArray=domain.match(ipDomainPat)
   
   if (IPArray!=null) {
   
      for (var i=1;i<=4;i++) {
      
         if (IPArray[i]>255) {
         
            return false;
            
         }
         
      }
      
      return true;
      
   }
   
   var domainArray=domain.match(domainPat)
   
   if (domainArray==null) {
   
      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) {
   
      return false;
      
   }
   
   if (len<2) {
   
      return false;
      
   }
   
   return true;
   
}
