function validate() {
var defaultEmptyOK = true;
	var title=document.Mem.Titel.value;
	var anrede=document.Mem.Anrede.value;
	var email=document.Mem.Email.value;
	var name=document.Mem.Vorname.value;
	var last_name=document.Mem.Nachname.value;
	var dob=document.Mem.GebJ.value;
	var addr1=document.Mem.Adressen_Linie_1.value;
	//var addr2=document.Mem.Adressen_Linie_2.value;
	var post_code=document.Mem.Plz.value;
	var city=document.Mem.Ort.value;
	var land=document.Mem.Land.value;
	var tel=document.Mem.Tel.value;

	var gotChecked=0;

	var rech_title=document.Mem.rech_Titel.value;
	var rech_anrede=document.Mem.rech_Anrede.value;
	var rech_email=document.Mem.rech_Email.value;
	var rech_name=document.Mem.rech_Vorname.value;
	var rech_last_name=document.Mem.rech_Nachname.value;
	var rech_dob=document.Mem.rech_GebJ.value;
	var rech_addr1=document.Mem.rech_Adressen_Linie_1.value;
	//var rech_addr2=document.Mem.rech_Adressen_Linie_2.value;
	var rech_post_code=document.Mem.rech_Plz.value;
	var rech_city=document.Mem.rech_Ort.value;
	var rech_land=document.Mem.rech_Land.value;
	var rech_tel=document.Mem.rech_Tel.value;
	
	var rech_gotChecked=0;
/*
	
	var tel=document.Mem..value;
	var tel=document.Mem..value;
*/
	var abo_flag	=	document.Mem.Abo;
	
	if (abo_flag.checked) {
		gotChecked=1;
	}
	else {
		display_alert ("Das Abo feld ist leer. Dieses Feld muss ausgefüllt werden");
		return false;
	}
/* Liefer (delivery) address is now optional	
	//Check if they entered a anrede
	if  (isEmpty(anrede)) {
		display_alert ("Das Anrede feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	//Check if they entered a name
	if  (isEmpty(name)) {
		display_alert ("Das Vorname feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	//Check if they entered a surname
	if  (isEmpty(last_name)) {
		display_alert ("Das Nachname feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	
	//Check if they entered an addr
	if  (isEmpty(addr1)) {
		display_alert ("Das Adresse feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}

	//Check if they entered a company post_code
	if  (isEmpty(post_code)) {
		display_alert ("Das PLZ feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	//Check if they entered a city
	if  (isEmpty(city)) {
		display_alert ("Das Ort feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	//Check if they entered a country
	if  (isEmpty(land)) {
		display_alert ("Das Land feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	
	//Check if they entered an email
	if  (isEmpty(email)) {
		display_alert ("Das email feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	//Check if they entered a valid email
	if  (!validEmail(email)){
		display_alert ("Das email feld ist ungultig.  \nBitte korrekt.");
		return false;
	}
*/
//if  (!isEmpty(rech_name)) {

	//Check if they entered a anrede
	if  (isEmpty(rech_anrede)) {
		display_alert ("Das Rechnung Anrede feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	//Check if they entered a name
	if  (isEmpty(rech_name)) {
		display_alert ("Das Rechnung Vorname feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	//Check if they entered a surname
	if  (isEmpty(rech_last_name)) {
		display_alert ("Das Rechnung Nachname feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	
	//Check if they entered an addr
	if  (isEmpty(rech_addr1)) {
		display_alert ("Das Rechnung Adresse feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}

	//Check if they entered a company post_code
	if  (isEmpty(rech_post_code)) {
		display_alert ("Das Rechnung PLZ feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	//Check if they entered a city
	if  (isEmpty(rech_city)) {
		display_alert ("Das Rechnung Ort feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	//Check if they entered a country
	if  (isEmpty(rech_land)) {
		display_alert ("Das Rechnung Land feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	
	//Check if they entered an email
	if  (isEmpty(rech_email)) {
		display_alert ("Das Rechnung email feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	//Check if they entered a valid email
	if  (!validEmail(rech_email)){
		display_alert ("Das Feld E-Mail ist ungültig.  \nBitte korrigieren Sie Ihre Angaben");
		return false;
	}

//}

	//Check if they entered a phone number
/*
	if  (isEmpty(tel)) {
		display_alert ("Das telefon feld ist leer.  \nDieses Feld muss ausgefüllt werden");
		return false;
	}
	if (agree_tacs_flag.checked==false) {
	display_alert("Please indicate you have read and accept the terms and conditions by clicking the box at the end of the form");
	return false;
	}

	if  (!isInteger(tel))
		{display_alert("Your telephone number is not numeric! \n Please enter your phone number.  Thanks.");
		return false;
	}
	if  (!isInteger(Number))
		{display_alert("Your scratchcard ticket number is not numeric! \n Please enter the number revealed by the scratchcard above.  Thanks.");
		return false;
	}
*/
	//display_alert ("here "+card+name+post_code+r);
return true;



}

function validEmail(email) {
	var cLength 	= email.length;
//display_alert ("We are "+cLength+email);
	//Must be at least 3 long
	if (cLength < 4) {
		return false;
	}
	var hasAt=email.indexOf('@');
	var hasFS=email.indexOf('.');
	//display_alert("tring at"+hasAt+hasFS );
	if (hasAt == -1) {
		//display_alert ("No at! ");
		return false;
	}
	if (hasFS == -1) {
		//display_alert ("No at! ");
		return false;
	}
return true;
}


function strToZero(anyval) {
     anyval = ""+anyval
     if (anyval < "0" || anyval > "999999999999999999999")
	return true;
     else
	return false;
}

// Check for a blank field
function isFieldBlank(theField) {
//display_alert("got "+theField);
        if(theField.value == "")
	  return true;
        else
	display_alert("ret false "+theField);
            return false;
}

// Check for a valid numeric range
function isInRange(theMin, theMax, theField) {

//	theMax++;
        if( (theField >=theMin)
	&&  (theField <= theMax) ) {

		  return true;
	}
        else {
//		display_alert ("date is NOT in range  "+theField +theMin+theMax );
            return false;
	}
}

function display_alert(s) {
	return alert ("Angaben unvollständig!\nBitte füllen Sie alle mit * gekennzeichneten Felder aus.\n\n" + s);
}

// Check whether string s is empty.

function isEmpty(s)
{   return ((s == null) || (s.length == 0))
}

// isInteger (STRING s [, BOOLEAN emptyOK])
//
// Returns true if all characters in string s are numbers.
//
// Accepts non-signed integers only. Does not accept floating
// point, exponential notation, etc.
//
// We don't use parseInt because that would accept a string
// with trailing non-numeric characters.
//
// By default, returns defaultEmptyOK if s is empty.
// There is an optional second argument called emptyOK.
// emptyOK is used to override for a single function call
//      the default behavior which is specified globally by
//      defaultEmptyOK.
// If emptyOK is false (or any value other than true),
//      the function will return false if s is empty.
// If emptyOK is true, the function will return true if s is empty.
//
// EXAMPLE FUNCTION CALL:     RESULT:
// isInteger ("5")            true
// isInteger ("")             defaultEmptyOK
// isInteger ("-5")           false
// isInteger ("", true)       true
// isInteger ("", false)      false
// isInteger ("5", false)     true

function isInteger (s)

{   var i;

    if (isEmpty(s))
       if (isInteger.arguments.length == 1) return true;
       else return (isInteger.arguments[1] == true);

    // Search through string's characters one by one
    // until we find a non-numeric character.
    // When we do, return false; if we don't, return true.

    for (i = 0; i < s.length; i++)
    {
        // Check that current character is number.
        var c = s.charAt(i);

        if (!isDigit(c)) return false;
    }

    // All characters are numbers.
    return true;
}

// Returns true if character c is a digit
// (0 .. 9).

function isDigit (c)
{   return ((c >= "0") && (c <= "9"))
}


//}
