
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':
		    Event.observe(sId, 'blur', fRequired, false);
		    break;
		case 'semail':
			Event.observe(sId, 'blur', fEmail, false);
		    break;
		case 'telefon':
		case 'telefax':
			Event.observe(sId, 'blur', fPhone, false);
		    break;
	    }
    });

	cForm.onsubmit = function(event){
	    var checkPassRequire = true;
	    var checkMail = true;
	    var checkTelfax = true;
	    var checkTelfon = true;
		cInputs.each(function(cInput){
			var sId =cInput.id;
			switch(sId){
		        case 'vorname':
		        case 'nachname':
		        case 'betreff':
		        case 'mitteilung':
		        case 'captchaconfirm':
		            fRequired(event, cInput);
			        checkPassRequire = checkPassRequire && checkValue;
			        break;
	            case 'semail': 
				    fEmail(event, cInput);
				    checkMail = checkMail && checkValue;
			        break;
	            case 'telefon':
				    fPhone(event, cInput);
				    checkTelfon = checkTelfon && checkValue;
			        break;
	            case 'telefax':
				    fPhone(event, cInput);
				    checkTelfax = checkTelfax && checkValue;
			        break;
			}
		    });

		if(checkPassRequire && checkMail && checkTelfax && checkTelfon)
		{
		    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>';
		    $('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.addClassName('requredfield');
	    checkValue = false;
	}
	else
	{
	    oEvt.removeClassName('requredfield');
	    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.addClassName('requredfield');
	    checkValue = false;
	}
	else
	{
	    oEvt.removeClassName('requredfield');
	    checkValue = true;
	}
}



function fEmailConfirm(event,obj){
	var oEvt = $oEvt(event,obj);
	if(!oEvt) return;
	if(!$('semail')) return;
	if(oEvt.value != $('semail').value)
	{
	    oEvt.addClassName('requredfield');
	    checkValue = false;
	}
	else
	{
	    oEvt.removeClassName('requredfield');
	    checkValue = true;
	}
}

function fPhone(event,obj){
	var oEvt = $oEvt(event,obj);
	if(!oEvt) return;
	if(oEvt.value != '' && !/^([0-9]|\(|\)|\/|\-|\s|\+)+$/.test(oEvt.value))
	{
	    oEvt.addClassName('requredfield');
		checkValue = false;
    }
	else
	{
	    oEvt.removeClassName('requredfield');
	    checkValue = true;
	}
}

