

var checkValue = false;

function f1Action(sForm)

{
	//add checking submit captchaconfirm;
	if($('captchaconfirm') && $('captchaconfirm').className !='')
	{
		$('errormsgmain').innerHTML = '<div>Please repeat the code correctly.</div>';
	}

	Form.reset(sForm);

	var cForm = $(sForm);

	Form.focusFirstElement(cForm)

	

	var cInputs = Form.getElements(cForm);

	

	

	cInputs.each(function(cInput){

	var sId = cInput.id;

	switch(sId){

		case 'vorname':

		case 'nachname':

		//case 'betreff':

		case 'mitteilung':

		case 'captchaconfirm':

		

		case 'recommendsubject':

		case 'namefrom':

		case 'messagesend':

		

		//only order form

		        case 'order_strassenr':

            case 'order_strassenr_2':

            case 'order_plzort':

            case 'order_plzort_2':

            case 'order_land':

		

					Event.observe(sId, 'blur', fRequired, false);

		break;

		

		case 'semail':

		

		case 'receiverad':

		case 'youremail':

					Event.observe(sId, 'blur', fEmail, false);

		break;

		case 'telefon':

		case 'telefax':

					Event.observe(sId, 'blur', fPhone, false);

		break;

		

		case 'semail_1':

					Event.observe(sId, 'blur', fEmailConfirm, false);		

		break;

		

		case 'zustimmung':

          Event.observe(sId, 'blur', fCheck, false);	

		break;

	    }

    });



	cForm.onsubmit = function(event){

	    var checkPassRequire = true;

	    var checkMail = true;

	    var checkTelfax = true;

	    var checkTelfon = true;

	    var checkEmailConfirm = true;

	    var checkAgree = true;

		cInputs.each(function(cInput){

			var sId =cInput.id;

			switch(sId){

		        case 'vorname':

		        case 'nachname':

		        //case 'betreff':

		        case 'mitteilung':

		        case 'captchaconfirm':



		        case 'recommendsubject':

		        case 'namefrom':

		        case 'messagesend':

		        

		        

		        //only order form

		        case 'order_strassenr':

            case 'order_strassenr_2':

            case 'order_plzort':

            case 'order_plzort_2':

            case 'order_land':

		        

		        

		            fRequired(event, cInput);

			        checkPassRequire = checkPassRequire && checkValue;

			        break;

	            case 'semail':	            

		        case 'receiverad':

		        case 'youremail':

				    fEmail(event, cInput);

				    checkMail = checkMail && checkValue;

			        break;

	            case 'telefon':

				    fPhone(event, cInput);

				    checkTelfon = checkValue;

			        break;

	            case 'telefax':

				    fPhone(event, cInput);

				    checkTelfax = checkValue;

			        break;

			    case 'semail_1':

			        fEmailConfirm(event, cInput);

				    checkEmailConfirm = checkValue;

			        break;

			        

			    case 'zustimmung':

			    fCheck(event, cInput);

          checkAgree =checkValue;

			}

		    });

		if(checkPassRequire && checkMail && checkTelfax && checkTelfon && checkEmailConfirm && checkAgree)

		{

		    cForm.submit();

		    return true;

		}

		else

		{

		    var errMsg = '';

		    errMsg += checkPassRequire ? '':'<div>All fields marked with * are required. </div>';

		    errMsg += checkMail ? '':'<div>Please enter a valid e-mail address.</div>';

			errMsg += checkTelfon ? '':'<div>The telephone number entered contains invalid characters. </div>';	    

			errMsg += checkTelfax ? '':'<div>The fax number entered contains invalid characters. </div>';

			errMsg += checkEmailConfirm ? '':'<div>The entered e-mail addresses are not identic.</div>';

			errMsg += checkAgree ? '':'<div>Please confirm the data protection.</div>';

			

			

		    $('errormsgmain').innerHTML = errMsg;

		}

		return false;

	}



}

function $P(obj){return $(obj).parentNode;}

function $Evt(event){return event||window.event;}

function $oEvt(event,obj){

	if(obj){

		if(obj.type=='hidden') return;

		oEvt = obj;

	}

	else{

		event = $Evt(event);

		if(event.keyCode==13){return;}

		oEvt = event.srcElement||event.target;

	}

	return oEvt;

}

function $fId(event){

	var oF;

	if($oEvt(event).tagName.toLowerCase()=='form'){oF = $oEvt(event);}	

	else{oF = Event.findElement($Evt(event),'form');}

	return oF.id;

}

function $Req(id){

	if($(id).className.indexOf('req')>-1){return true;}

	else{return false}

}



function fRequired(event,obj){

	var oEvt = $oEvt(event,obj);

	if(!oEvt) return;

	if(oEvt.value == '')

	{

	    oEvt.className += ' requredfield';

	    checkValue = false;

	}

	else

	{

	    oEvt.className  =  '';

	    checkValue = true;

	}

}

function fEmail(event,obj){

	var oEvt = $oEvt(event,obj);

	if(!oEvt) return;

	if(oEvt.value == '' || !/^(-|\.|\w)+\@((-|\w)+\.)+[A-Za-z]{2,}$/.test(oEvt.value))

	{

	    oEvt.className += ' requredfield';

	    checkValue = false;

	}

	else

	{

	    oEvt.className  = '';

	    checkValue = true;

	}

}



function fEmailConfirm(event,obj){

	var oEvt = $oEvt(event,obj);

	if(!oEvt) return;

	if(!$('semail')) return;

	if(oEvt.value != $('semail').value)

	{

	    oEvt.className += ' requredfield';

	    checkValue = false;

	}

	else

	{

	    oEvt.className  = '';

	    checkValue = true;

	}

}



function fPhone(event,obj){

	var oEvt = $oEvt(event,obj);

	if(!oEvt) return;

	if(oEvt.value != '' && !/^([0-9]|\(|\)|\/|\-|\s|\+)+$/.test(oEvt.value))

	{

	    oEvt.className += ' requredfield';

		checkValue = false;

    }

	else

	{

	    oEvt.className  = '';

	    checkValue = true;

	}

}



function fCheck(event,obj){

	var oEvt = $oEvt(event,obj);

	if(!oEvt) return;

	if(!oEvt.checked)

	{

		checkValue = false;

  }

	else

	{

	    checkValue = true;

	}

}