var ruvalid = "";
var bgNotValid = "#B6CFEE";
var bgValid = "#F5F5F5";

function isEmail(eml)
// function to check whether the e-mail address is valid
// it must have at least this format ( char + @ + char + . + char )
{	
	a = eml.value.search(/@/i);
	a1 = eml.value.substring(0,a);
	a2 = a1.length;
	
	a = a + 1;
	b = eml.value.indexOf(".");
	b1 = eml.value.substring(a,b);
	b2 = b1.length;
	
	b = b + 1;
	c = eml.value.length;
	c1 = eml.value.substring(b,c);
	c2 = c1.length;

	if (eml.value.indexOf("@") != "-1" && eml.value.indexOf(".") != "-1" && a2 >= 1 && b2 >= 1 && c2 >= 1) {
		return true;
	} else {
		return false;
	}		
}

function setColor(el, bg) {
  if (el.style) el.style.backgroundColor = bg;
}

function checkobj(obj,msg) {
	if (typeof(obj) != 'undefined' && typeof(obj[0]) != 'undefined' && obj[0].type == 'radio') {
		isselected = 0
		for (i=0;i < obj.length;i++) {
			if (obj[i].checked == true)
				isselected = 1
		}
		if (isselected == 0) {
			ruvalid += msg
			for (i=0;i < obj.length;i++) {
				setColor(obj[i], bgNotValid)
			}
		} else {
			for (i=0;i < obj.length;i++)	
				setColor(obj[i], bgValid)
		}
	}
}

function validateProfileForm(obj)
{
	ruvalid = "";
	var doc = document.ProfileForm;

	if (doc.name.value == "") {ruvalid += "- you should enter your *name*\n"; setColor(doc.name, bgNotValid);} else {setColor(doc.name, bgValid);}

	if (ruvalid != "") {
		errMsg = 'EssenBahnhof Profile Form Validation \n------------------------------------------\n\n' + ruvalid + '\n';
		alert(errMsg);
		return false;
	} else {
		return true;
	}
}

function validateEmailForm(obj)
{
	ruvalid = "";
	var doc = document.AccountEmail;

	var eml = doc.email;
	var emailOK = isEmail(eml);

	if (doc.email.value == "" ){
		ruvalid += "Please enter an *e-mail address*.\n"; 
		setColor(doc.email, bgNotValid);
	}else if (emailOK==false){
		ruvalid += "Please enter a valid *e-mail address*.\r";  
		setColor(doc.email, bgNotValid);
	}else{
		setColor(doc.email, bgValid);
	}

	if (ruvalid != "") {
		errMsg = 'EssenBahnhof Email Form Validation \n------------------------------------------\n\n' + ruvalid + '\n';
		alert(errMsg);
		return false;
	} else {
		return true;
	}
}

function validatePasswordForm(obj)
{
	ruvalid = "";
	var doc = document.AccountPassword;

	if (doc.password_new.value == "") {ruvalid += "- you should enter your *NEW password*\n"; setColor(doc.password_new, bgNotValid);} else {setColor(doc.password_new, bgValid);}
	if (doc.password_confirm.value == "") {ruvalid += "- you should CONFIRM your *NEW password*\n"; setColor(doc.password_confirm, bgNotValid);} else {setColor(doc.password_confirm, bgValid);}

	if ((doc.password_new.value !== "") || (doc.password_confirm.value !== "")){
		if (doc.password_new.value !== doc.password_confirm.value) {ruvalid += "- *NEW password* and *NEW password confirmation* are not equal!\n"; setColor(doc.password_new, bgNotValid); setColor(doc.password_confirm, bgNotValid);} else {setColor(doc.password_new, bgValid); setColor(doc.password_confirm, bgValid);}
	}

	if (ruvalid != "") {
		errMsg = 'EssenBahnhof Password Change Form Validation \n------------------------------------------\n\n' + ruvalid + '\n';
		alert(errMsg);
		return false;
	} else {
		return true;
	}
}

function validateLoginForm(obj)
{
	ruvalid = "";
	var doc = document.Login;

//	var eml = doc.EmailAddress;
//	var emailOK = isEmail(eml);

	if (doc.UserName.value == "") {ruvalid += "- you should enter your *user name*\n"; setColor(doc.UserName, bgNotValid);} else {setColor(doc.UserName, bgValid);}
	if (doc.Password.value == "") {ruvalid += "- you should enter your *password*\n"; setColor(doc.Password, bgNotValid);} else {setColor(doc.Password, bgValid);}

	if (ruvalid != "") {
		errMsg = 'EssenBahnhof Login Form Validation \n------------------------------------------\n\n' + ruvalid + '\n';
		alert(errMsg);
		return false;
	} else {
		return true;
	}
}

function validateRegisterForm(obj)
{
	ruvalid = "";
	var doc = document.Register;

	var eml = doc.email;
	var emailOK = isEmail(eml);

	if (doc.email.value == "" ){
		ruvalid += "- please enter an *e-mail address*.\n"; 
		setColor(doc.email, bgNotValid);
	}else if (emailOK==false){
		ruvalid += "- please enter a valid *e-mail address*.\r";  
		setColor(doc.email, bgNotValid);
	}else{
		setColor(doc.email, bgValid);
	}

	if (doc.username.value == "") {ruvalid += "- you should enter your *user name*\n"; setColor(doc.username, bgNotValid);} else {setColor(doc.username, bgValid);}
	if (doc.name.value == "") {ruvalid += "- you should enter your *name*\n"; setColor(doc.name, bgNotValid);} else {setColor(doc.name, bgValid);}
	//if (doc.lastname.value == "") {ruvalid += "- you should enter your *last name*\n"; setColor(doc.lastname, bgNotValid);} else {setColor(doc.lastname, bgValid);}

	if (ruvalid != "") {
		errMsg = 'Member Registration\n------------------------------------------\n\n' + ruvalid + '\n';
		alert(errMsg);
		return false;
	} else {
		return true;
	}
}

function validateLostPasswordForm(obj)
{
	ruvalid = "";
	var doc = document.LostPassword;

	var eml = doc.email;
	var emailOK = isEmail(eml);

	if (doc.email.value == "" ){
		ruvalid += "- please enter an *e-mail address*.\n"; 
		setColor(doc.email, bgNotValid);
	}else if (emailOK==false){
		ruvalid += "- please enter a valid *e-mail address*.\r";  
		setColor(doc.email, bgNotValid);
	}else{
		setColor(doc.email, bgValid);
	}

	if (ruvalid != "") {
		errMsg = 'Member Password Retrieval\n------------------------------------------\n\n' + ruvalid + '\n';
		alert(errMsg);
		return false;
	} else {
		return true;
	}
}


