function Form1_Validator(theForm)
	{
	
		if (theForm.Firma.value.length > 50)
		{
			alert("Enter just 50 characters into the field \"Company Name\".");
			theForm.Firma.focus();
			return (false);
		}	
		

		if (theForm.Vorname.value == "")
		{
			alert("Please, enter your \"First Name\".");
			theForm.Vorname.focus();
			return (false);
		}
		if (theForm.Vorname.value.length < 1)
		{
			alert("Enter at least 1 character into the field \"Last Name\".");
			theForm.Vorname.focus();
			return (false);
		}
		if (theForm.Vorname.value.length > 50)
		{
			alert("Just enter 50 characters at maximum into the field \"First Name\".");
			theForm.Vorname.focus();
			return (false);
		}
		var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ- \t\r\n\f";
		var checkStr = theForm.Vorname.value;
		var allValid = true;
		for (i = 0;  i < checkStr.length;  i++)
		{
			ch = checkStr.charAt(i);
			for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
				break;
			if (j == checkOK.length)
			{
			allValid = false;
			break;
			}
		}
		if (!allValid)
		{
			alert("Just enter characters and empty spaces into the field \"First Name\".");
			theForm.Vorname.focus();
			return (false);
		}
		
		
		if (theForm.Nachname.value == "")
		{
			alert("Please, enter your \"Last Name\".");
			theForm.Nachname.focus();
			return (false);
		}
		if (theForm.Nachname.value.length < 1)
		{
			alert("Enter at minimum 1 character into the field \"Last Name\".");
			theForm.Nachname.focus();
			return (false);
		}
		if (theForm.Nachname.value.length > 50)
		{
			alert("Just enter 50 character at maximum into the field \"Last Name\".");
			theForm.Nachname.focus();
			return (false);
		}
		var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ- \t\r\n\f";
		var checkStr = theForm.Nachname.value;
		var allValid = true;
		for (i = 0;  i < checkStr.length;  i++)
		{
			ch = checkStr.charAt(i);
			for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
				break;
			if (j == checkOK.length)
			{
			allValid = false;
			break;
			}
		}
		if (!allValid)
		{
			alert("Please just enter character and empty spaces into the field \"Last Name\".");
			theForm.Nachname.focus();
			return (false);
		}



		if (theForm.Straße.value == "")
		{
			alert("Please enter a valid \"Address\".");
			theForm.Straße.focus();
			return (false);
		}
		if (theForm.Straße.value.length < 1)
		{
			alert("Enter 1 character at minimum into the field \"Address\".");
			theForm.Straße.focus();
			return (false);
		}
		if (theForm.Straße.value.length > 50)
		{
			alert("Just enter 50 character into the field \"Address\".");
			theForm.Straße.focus();
			return (false);
		}
		var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ0123456789- \t\r\n\f .";
		var checkStr = theForm.Straße.value;
		var allValid = true;
		for (i = 0;  i < checkStr.length;  i++)
		{
			ch = checkStr.charAt(i);
			for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
				break;
			if (j == checkOK.length)
			{
			allValid = false;
			break;
			}
		}
		if (!allValid)
		{
			alert("Just enter characters, numbers and empty spaces into the field \"Address\".");
			theForm.Straße.focus();
			return (false);
		}

	//alert(theForm.LKZ.value + "!")

		if ((theForm.Land.value=="Germany") && (theForm.PLZ.value == ""))
		{
			alert("Enter a valid \"Postal Code\", for Germany a 5-digit number.");
			theForm.PLZ.focus();
			return (false);
		}
		if ((theForm.Land.value=="Germany") && (theForm.PLZ.value.length < 5))
		{
			alert("Please enter a valid zip code into the field \"Postal Code\", for Germany a 5-digit number.");
			theForm.PLZ.focus();
			return (false);
		}
		if ((theForm.Land.value=="Germany") && (theForm.PLZ.value.length > 5))
		{
			alert("Just enter 5 numbers at maximum into the field \"Postal Code\".");
			theForm.PLZ.focus();
			return (false);
		}	
		if ((theForm.Land.value=="Germany") && (isNaN(theForm.PLZ.value)))
		{
			alert("Please enter a valid Postal Code of your area, postal code has to be a 5-digit number for Germany.");
			theForm.PLZ.focus();
			return false;
		}
		if ((theForm.PLZ.value != "") && (isNaN(theForm.PLZ.value)))
		{
			alert("Please enter a valid Postal Code of your area, postal code has to be a 5-digit number for Germany or enter a simple \"0\" and give us the ZIP code in the field \"city\".");
			theForm.PLZ.focus();
			return false;
		}
		if (theForm.PLZ.value == "")
		{
			alert("Please enter a valid Postal Code of your area, postal code has to be a 5-digit number for Germany. For other countries you can enter a simple \"0\" and give us the ZIP code in the field \"city\".");
			theForm.PLZ.focus();
			return false;
		}
		
		if (theForm.Ort.value == "")
		{
			alert("Please enter your city into the field \"City\".");
			theForm.Ort.focus();
			return (false);
		}
		if (theForm.Ort.value.length < 1)
		{
			alert("Type at least 1 character into the field \"City\".");
			theForm.Ort.focus();
			return (false);
		}
		if (theForm.Ort.value.length > 40)
		{
			alert("Just enter 40 characters into the field \"City\".");
			theForm.Ort.focus();
			return (false);
		}
		var checkOK = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzƒŠŒŽšœžŸÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿ1234567890 \t\r\n\f -";
		var checkStr = theForm.Ort.value;
		var allValid = true;
		for (i = 0;  i < checkStr.length;  i++)
		{
			ch = checkStr.charAt(i);
			for (j = 0;  j < checkOK.length;  j++)
			if (ch == checkOK.charAt(j))
				break;
			if (j == checkOK.length)
			{
			allValid = false;
			break;
			}
		}
		if (!allValid)
		{
			alert("Just enter characters and empty spaces into the field \"City\".");
			theForm.Ort.focus();
			return (false);
		}
		

		if (theForm.Land.value == "")
		{
			alert("Choose your \"Country\".");
			theForm.LKZ.focus();
			return (false);
		}
		
		
		if (theForm.Telefon.value != "")
		{
			var checkOK = "1234567890";
			var checkStr = theForm.Telefon.value;
			var allValid = true;
			for (i = 0;  i < checkStr.length;  i++)
			{
				ch = checkStr.charAt(i);
				for (j = 0;  j < checkOK.length;  j++)
				if (ch == checkOK.charAt(j))
					break;
				if (j == checkOK.length)
				{
				allValid = false;
				break;
				}
			}
			if (!allValid)
			{
				alert("Just enter numbers into the field \"Phone\".");
				theForm.Telefon.focus();
				return (false);
			}
			if (theForm.Telefon.value.length < 1)
			{
				alert("Enter at least 1 number into the field \"Phone\".");
				theForm.Telefon.focus();
				return (false);
			}
			if (theForm.Telefon.value.length > 25)
			{
				alert("Just enter 25 numbers into the field \"Phone\".");
				theForm.Telefon.focus();
				return (false);
			}
			
			if (theForm.Vorwahl.value == "") 
			{
				alert("Add your area code please!");
				theForm.Vorwahl.focus();
				return(false);
			}
		}
		
		
		if (theForm.Vorwahl.value != "")
		{
			var checkOK = "1234567890";
			var checkStr = theForm.Vorwahl.value;
			var allValid = true;
			for (i = 0;  i < checkStr.length;  i++)
			{
				ch = checkStr.charAt(i);
				for (j = 0;  j < checkOK.length;  j++)
				if (ch == checkOK.charAt(j))
					break;
				if (j == checkOK.length)
				{
				allValid = false;
				break;
				}
			}
			if (!allValid)
			{
				alert("Please just enter numbers into the field \"Area Code\".");
				theForm.Vorwahl.focus();
				return (false);
			}
			if (theForm.Vorwahl.value.length < 1)
			{
				alert("Enter at least 1 number into the field \"Area Code\".");
				theForm.Vorwahl.focus();
				return (false);
			}
			if (theForm.Vorwahl.value.length > 10)
			{
				alert("Just enter 10 number into the field \"Area Code\".");
				theForm.Vorwahl.focus();
				return (false);
			}
		}
		
		
		if (theForm.Fax.value != "")
		{
			var checkOK = "1234567890";
			var checkStr = theForm.Fax.value;
			var allValid = true;
			for (i = 0;  i < checkStr.length;  i++)
			{
				ch = checkStr.charAt(i);
				for (j = 0;  j < checkOK.length;  j++)
				if (ch == checkOK.charAt(j))
					break;
				if (j == checkOK.length)
				{
				allValid = false;
				break;
				}
			}
			if (!allValid)
			{
				alert("Just enter numbers into the field \"Fax\".");
				theForm.Fax.focus();
				return (false);
			}
			if (theForm.Fax.value.length < 1)
			{
				alert("Enter at least 1 number into the field \"Fax\".");
				theForm.Fax.focus();
				return (false);
			}
			if (theForm.Fax.value.length > 25)
			{
				alert("Just enter 25 numbers into the field \"Fax\".");
				theForm.Fax.focus();
				return (false);
			}
			
			if (theForm.FaxVorwahl.value == "") 
			{
				alert("Add your fax area code please!");
				theForm.FaxVorwahl.focus();
				return(false);
			}
		}
		
		
		if (theForm.FaxVorwahl.value != "")
		{
			var checkOK = "1234567890";
			var checkStr = theForm.FaxVorwahl.value;
			var allValid = true;
			for (i = 0;  i < checkStr.length;  i++)
			{
				ch = checkStr.charAt(i);
				for (j = 0;  j < checkOK.length;  j++)
				if (ch == checkOK.charAt(j))
					break;
				if (j == checkOK.length)
				{
				allValid = false;
				break;
				}
			}
			if (!allValid)
			{
				alert("Please just enter numbers into the field \"Fax Area Code\".");
				theForm.FaxVorwahl.focus();
				return (false);
			}
			if (theForm.FaxVorwahl.value.length < 1)
			{
				alert("Enter at least 1 number into the field \"Fax Area Code\".");
				theForm.FaxVorwahl.focus();
				return (false);
			}
			if (theForm.FaxVorwahl.value.length > 10)
			{
				alert("Just enter 10 number into the field \"Fax Area Code\".");
				theForm.FaxVorwahl.focus();
				return (false);
			}
		}
		
				
		if (theForm.Mail.value != "")
		{
			var checkOK = "@.";
			var checkStr = theForm.Mail.value;
			var mailValid = false;
			var allValid = false;
			for (i = 0;  i < checkStr.length;  i++)
			{
				ch = checkStr.charAt(i);
				for (j = 0;  j < checkOK.length;  j++)
				if (ch == checkOK.charAt(j))
				{	
					if (ch == "@")
						mailValid = true;
					if ((mailValid == true) && (ch == "."))
					{
					//alert("Punkt bei i=" + i + " und i an Position=" + checkStr.length)
						if(i!=checkStr.length-1)
						{
							allValid = true;  //Punkt an der letzten Stelle 
						}
						
					}
				}
				
			}
			if ((!allValid) || (!mailValid))
			{
				alert("Enter a valid mail address into the field \"E-Mail\".");
				theForm.Mail.focus();
				return (false);
			}
			if (theForm.Mail.value.length < 1)
			{
				alert("Enter at least 1 letter into the field \"E-Mail\".");
				theForm.Mail.focus();
				return (false);
			}
			if (theForm.Mail.value.length > 50)
			{
				alert("Just enter 50 letters into the field \"E-Mail\".");
				theForm.Mail.focus();
				return (false);
			}
		}
	Form1.submit()
	return (true);
	}
	
	function fillLand(index){
		document.Form1.Land.value = document.Form1.LKZ.options[index].text;
	}
	
