function isValidEmail(str) 
{
	return (str.search( /\w+((-\w+)|(\.\w+)|(\_\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z]{2,5}/ ) != -1);
}

function isValidPassword(str) 
{
	return (str.search( /^([a-zA-Z0-9_-]{6,20})$/ ) != -1); //\w{3,14}$ </A>
}

function isValid() 
{
	var frm = document.forms[0];
	var element;

	for (i = 0; i < frm.elements.length; i++) 
	{
		element = frm.elements[i];
		
		if ((element.name.indexOf('_x_') != -1 || element.name.indexOf('xe_') != -1 || element.name.indexOf('xp_') != -1) && element.value.trim().length == 0)
		{
			element.focus();
			alert("Bitte füllen Sie alle mit einem Sternchen (*)\r\ngekennzeichneten Eingabefelder vollständig aus.");
			return false;
		}

		if (((element.name.indexOf('_e_') != -1 && element.value.length > 0) || element.name.indexOf('xe_') != -1) && !isValidEmail(element.value))
		{
			element.focus();
			alert("Bitte geben Sie eine gültige Emailadresse ein.");
			return false;
		}

		if (((element.name.indexOf('_p_') != -1 && element.value.length > 0) || element.name.indexOf('xp_') != -1) && !isValidPassword(element.value))
		{
			element.focus();
			alert("Benutzername und Passwort dürfen keine Leer- und Sonderzeichen \r\nenthalten und müssen zwischen 6 und 20 Zeichen lang sein.");
			return false;
		}

		if (element.name.indexOf('_c_') != -1 && !element.checked)
		{
			element.focus();
			alert("Bitte akzeptieren Sie unseren Datenschutzhinweis.");
			return false;
		}

		if (element.name.indexOf('_1_') != -1)
		{
			for (j = 0; j < frm.elements.length; j++) 
			{
				element2 = frm.elements[j];
				
				if (element2.name.indexOf('_2_') != -1 && element.value != element2.value)
				{
					element.focus();
					alert("Die beiden Passwörter stimmern nicht überein.");
					return false;
				}
			}
		}
	}

	return true;
}

function ltrim()
{
	return this.replace(/^\s+/,'');
}

function rtrim()
{
	return this.replace(/\s+$/,'');
}

function trim()
{
	return this.replace(/^\s+/,'').replace(/\s+$/,'');
}

String.prototype.trimLeft = ltrim;
String.prototype.trimRight = rtrim;
String.prototype.trim = trim;