function pruefe_kontaktformular()
{
	var felder = new Array(	new Array('Name', 'Bitte geben Sie Ihren Vor- und Nachnahme an.', '* Vor- und Nachname'),
							new Array('Email', 'Bitte geben Sie Ihre E-Mail Adresse an.', 'email', 'Bitte geben Sie eine gŸltige E-Mail Adresse an.', '* email-Adresse'));

	fehler = pruefe_formular('Kontaktformular', felder);

	if (fehler)
	{
		alert(fehler);
		return false;
	}
	return true;
}

function OpenWindow(theURL, winName, myWidth, myHeight, scrollbars, resizeable) 
{
	if (!myWidth) 
	{
		myWidth = 312;
	}
	if (!myHeight) 
	{
		myHeight= 280;
	}
	if (winName == '')
	{
		winName = 'standardWindow';
	}

	if (window.screen)
	{
		var myLeft = (screen.width  - myWidth)  / 2;
		var myTop  = (screen.height - myHeight) / 2;
	}

	if (scrollbars == '' || scrollbars == 'no') 
	{
		scrollbars = 'no';
	} 
	else 
	{
		scrollbars = 'yes';
	}

	if (resizeable == '' || resizeable == 'no') 
	{
		resizeable = 'no';
	} 
	else 
	{
		resizeable = 'yes';
	}

	windowHandle = window.open(theURL, winName, 'scrollbars='+scrollbars+', resizable='+resizeable+', dependent=yes, left='+myLeft+', top='+myTop+', width='+myWidth+', height='+myHeight);
	windowHandle.focus();
}

/**
 * Universelle Funktion zum Ueberpruefen von Werten in Formularen.
 *
 * @param string formular: Der Name des Formulars, wie er im Attribut "name" des "form"-Tags angegeben ist.
 * @param array felder: Die zu pruefenden Formularfelder. Diese muessen in einem zweidimensionalen Array definiert werden.
 *						In der zweiten Dimension steht als erstes Element der Name des zu pruefenden Felds und als zweites Element
 *						der Fehlertext, wenn das Feld leer ist oder nicht angekreuzt wurde.
 *
 *						Beispiel:
 *
 *						var felder = new Array(	new Array('Nachname', 'Bitte geben Sie Ihren Nachname an.'),
 *									 			new Array('Vorname', 'Bitte geben Sie Ihren Vorname an.'),
 *									 			new Array('Email', 'Bitte geben Sie Ihre E-Mail Adresse an.'),
 *									 			new Array('subscribe', 'Bitte geben Sie an, ob Sie den Newsletter abonnieren oder kŸndigen wollen.'));
 *
 */
function pruefe_formular(formular, felder)
{
	var obj;
	var form_obj;
	var fehler = '';
	var radio_fehler = true;
	
	form_obj = document.getElementById(formular);
	
	/*
	 * Pruefung der Felder
	 */
	for (i in felder)
	{
		if (typeof form_obj[felder[i][0]].type == 'string')
		{
			/*
			 * Textfelder, Textareas und Selectfelder
			 */
			obj = document.getElementById(felder[i][0]);

			if (form_obj[felder[i][0]].type == 'select-multiple')
			{
				/*
				 * Selectfeld mit "multiple"-Attribut
				 */
				multiple_fehler = true;
				for (k = 0; k < form_obj[felder[i][0]].length; k++)
				{
					if (form_obj[felder[i][0]][k].selected)
					{
						multiple_fehler = false;
					}
				}
				
				if (multiple_fehler)
				{
					fehler += felder[i][1]+"\n";
				}
			}
			else if (form_obj[felder[i][0]].type == 'checkbox')
			{
				if (!form_obj[felder[i][0]].checked)
				{
					fehler += felder[i][1]+"\n";
				}
			}
			else
			{
				if (felder[i][2] == 'email')
				{
					if (obj.value == felder[i][4])
					{
						fehler += felder[i][1]+"\n";
					}
					else
					{
						if (!pruefe_email_adresse(obj.value))
						{
							fehler += felder[i][3] + "\n";
						}
					}
				}
				else
				{
					if (obj.value == felder[i][2] )
					{
						fehler += felder[i][1]+"\n";
					}
				}
			}
		}
		else
		{
			/*
			 * Radiobuttons
			 */
			radio_fehler = true;
			for (k = 0; k < form_obj[felder[i][0]].length; k++)
			{
				if (form_obj[felder[i][0]][k].checked)
				{
					radio_fehler = false;
				}
			}
			
			if (radio_fehler)
			{
				fehler += felder[i][1]+"\n";
			}
		}
	}
	return fehler;
}

/**
 * Prueft eine E-Mail Adresse auf ihre formale Gueltigkeit
 */
function pruefe_email_adresse(s)
{
	var regExpErlaubt = false;
	var res 		  = false;
	
	if (typeof(RegExp) == 'function')
	{
		var b = new RegExp('abc');
		
		if (b.test('abc') == true)
		{
			regExpErlaubt = true;
		}
	}

	if (regExpErlaubt)
	{
		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)
	}
	return res;
}

/**
 * Funktion von www.einfach-fuer-alle.de
 */
function onFocusClearDefault( thisValue, defaultValue )
{
	if ( thisValue == defaultValue )
	{
		return '';
	}
	return thisValue;
}