// LOCK FORM ON SUBMIT

var timestamp = 0;
  
function lockForm(myForm, FieldsToReset)
{
	if(((new Date()).valueOf())-timestamp<2000)
	{
		window.alert("Ihre Nachricht wird verarbeitet...");
		timestamp = (new Date()).valueOf();
		return false;
	}
	timestamp = (new Date()).valueOf();
	
	var fields = FieldsToReset.split(",");
	
	for (var i=0; i < fields.length; ++i)
	{
		if (myForm.elements[fields[i]]) {
			myForm.elements[""+ fields[i]+"2"].value = myForm.elements[fields[i]].value;
			myForm.elements[fields[i]].value = "";
		}
	}
	
	return true;
 	
 }


// CHECK FORM REQUIREMENTS

function checkText(theField, FieldTitle)
{
	if (theField && theField.value == "")
  	{
		alert("Bitte das Feld '" + FieldTitle + "' ausfüllen.");
		theField.focus();
		return false;
  	}
}


function checkSelect(theField, FieldTitle)
{
	if (theField) {
	selectedItemIndex = theField.selectedIndex;
 	selectedItem = theField.options[selectedItemIndex].value;
 	
 	if(selectedItem == "")
 	{
		alert("Bitte das Feld '" + FieldTitle + "' ausfüllen.");
		theField.focus();
		return(false);	
 	}
	}
}


function checkCheckbox(theField, FieldTitle)
{	
	if(theField.checked == false)
	{
		alert("Bitte das Feld '" + FieldTitle + "' ausfüllen.");
		theField.focus();
		return false;	
	}
}

function checkRadio(theField, FieldTitle)
{	
	var checked = false;
	var i = 0;
	while (theField[i])
	{
		if (theField[i].checked == true) checked = true;
		i++;
	}
	
	if(checked == false)
	{
		alert("Bitte das Feld '" + FieldTitle + "' auswählen.");
		theField[0].focus();
		return false;	
	}
}

function checkEmail(theField, FieldTitle)
{
	var s = theField.value
	
	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)
	{
		reg = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)'+
                   '(\\@)([a-zA-Z0-9\\-\\.]+)'+
                   '(\\.)([a-zA-Z]{2,4})$');
		res = (reg.test(s));
	}
	else
	{
		res = (s.search('@') >= 1 &&
		       s.lastIndexOf('.') > s.search('@') &&
		       s.lastIndexOf('.') >= s.length-5)
	}
	
	if (theField && res==false)
  	{
		alert("Ungültige " + FieldTitle + ".");
		theField.focus();
		return false;
  	}
	
}