<!-- Formularspezifische Funktionen
if( document.addEventListener ) document.addEventListener( 'DOMContentLoaded', contact, false);

function contact(){
  // Hide forms
  $( 'form.contact' ).hide().end();

  // Processing
  $( 'form.contact' ).find( 'li/label' ).not( '.nocontact' ) .each( function( i ){
    var labelContent = this.innerHTML;
    var labelWidth = document.defaultView. getComputedStyle( this, '' ).getPropertyValue( 'width' );
    var labelSpan = document.createElement( 'span' );
        labelSpan.style.display = 'block';
        labelSpan.style.width = labelWidth;
        labelSpan.innerHTML = labelContent;
    this.style.display = '-moz-inline-box';
    this.innerHTML = null;
    this.appendChild( labelSpan );
  } ).end();

  // Show forms
  $( 'form.contact' ).show().end();
}

function MM_findObj(n, d) { //v4.01
  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_changeProp(objName,x,theProp,theValue) { //v6.0
  var obj = MM_findObj(objName);
  if (obj && (theProp.indexOf("style.")==-1 || obj.style)){
    if (theValue == true || theValue == false)
      eval("obj."+theProp+"="+theValue);
    else eval("obj."+theProp+"='"+theValue+"'");
  }
}

function checkform(formularname, feldnamen, emailfeld, meldefeld) {

	var check = 0;
	var email_pflicht = false;
	
	// 2 CSS-Stile definieren f?r die Markierung der Pflichtfelder
	
	var attributes_marked_1 = "style.color";		// Schriftfarbe
	var attributes_marked_1a = "#FF0000";			// Farbwert Alarmfarbe
	var attributes_marked_1b = "#000000";			// Farbwert normale Farbe
	
	var attributes_marked_2 = "style.fontWeight";	// Schriftdicke
	var attributes_marked_2a = "bold";				// Schriftdicke Alarm
	var attributes_marked_2b = "normal";			// Schriftdicke normal
	
	var formular = document.forms[formularname];
	var pflichtfelder = feldnamen.split(";");
	
	var werte = new Array();
	var felder = new Array();
	
	for(var i = 0; i < pflichtfelder.length; i++) {
		werte[i] = formular.elements[pflichtfelder[i]];
		felder[i] = pflichtfelder[i] + "_feld";
		
		if (pflichtfelder[i] == emailfeld) { email_pflicht = true;}
		
		// Radiobuttons pruefen
		if ( werte[i].length != undefined ) {	
			var radiochecker = false;
			for(var k = 0; k < werte[i].length; k++) {
				if (werte[i][k].checked == true || werte[i].length > 2) { // Bug mit Selectboxen
					radiochecker = true;
				}
			}
                     // alert (werte[i].value + radiochecker); 
		}
	  
		if (werte[i].value == "" || radiochecker == false) {
			MM_changeProp(felder[i],'',attributes_marked_1,attributes_marked_1a,'SPAN');
			MM_changeProp(felder[i],'',attributes_marked_2,attributes_marked_2a,'SPAN');
			//werte[i].focus();
			var check = 1;

		} else {
			MM_changeProp(felder[i],'',attributes_marked_1,attributes_marked_1b,'SPAN');
			MM_changeProp(felder[i],'',attributes_marked_2,attributes_marked_2b,'SPAN');
		}
	}
	// E-Mail-Feld
        
	var email = formular.elements[emailfeld];
	var email_feld = emailfeld + "_feld";
	//alert (email_feld);
	if (email.value != "") {
		var emailok = EMail(email.value);
	}
	
	if (emailok == false) {
		MM_changeProp(email_feld,'',attributes_marked_1,attributes_marked_1a,'SPAN');
		MM_changeProp(email_feld,'',attributes_marked_2,attributes_marked_2a,'SPAN');
		//formular.email_feld.focus();
		var check = 1;
	} else {
		if (email_pflicht == false) {
			MM_changeProp(email_feld,'',attributes_marked_1,attributes_marked_1b,'SPAN');
			MM_changeProp(email_feld,'',attributes_marked_2,attributes_marked_2b,'SPAN');
		}
	}
	
	if (check == 0) {
		MM_changeProp(meldefeld,'','innerHTML','&nbsp;Ihre Eingaben werden gesendet ...&nbsp;','SPAN');
		formular.submit();
	} else {
		MM_changeProp(meldefeld,'','innerHTML','&nbsp;Bitte beachten Sie die markierten Felder.&nbsp;','SPAN');
	}
}

function EMail(s)
{
 var a = false; var res = false;
 if(typeof(RegExp) == 'function')
 {
  var b = new RegExp('abc');
  if(b.test('abc') == true){a = true;}
  }
 if(a == true)
 {
  var reg = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)'+'(\\@)([a-zA-Z0-9\\-\\.]+)'+'(\\.)([a-zA-Z]{2,4})$');
  var res = (reg.test(s));
 }
 else
 {
  var res = (s.search('@') >= 1 && s.lastIndexOf('.') > s.search('@') && s.lastIndexOf('.') >= s.length-5)
 }
 return(res);
}