// Prüfen ob mindestens ein Eingabefeld ausgefüllt wurde
function validateForm(form,anyfield,defaultvalues,requiredfields,min_anzahl_zeichen)
{
	/* Alle Inputfelder im Formular vom Typ 'text'*/
	var formularId = $(form).attr('id');
	var inputfields = $('#'+formularId +' :text');
	
	// erst die Required Felder testen
	for (var i = 0; i < requiredfields.length; i++)
	{
		for (var j = 0; j < inputfields.length; j++)
		{	
			if (requiredfields[i] == inputfields[j].name && ( jQuery.trim(inputfields[j].value).length < min_anzahl_zeichen || isDefaultValue(defaultvalues,inputfields[j].value)))
			{
				/*alert("Bitte einen Ort mit mindestens " + min_anzahl_zeichen + " Zeichen eingeben!");*/
				alert("Bitte geben Sie im Feld '"+inputfields[j].title+"' mindestens " + min_anzahl_zeichen + " Zeichen eingeben!");
				inputfields[j].focus();
				return false;
			}
		}
	}
	// Test ob irgendwas ausgefüllt ist
	if (anyfield == true)
	{
		// wenn nur ein Eingabefeld, dann muss dieses gefüllt sein
		if (inputfields.length == 1)
		{ 
			if ( jQuery.trim(inputfields[0].value).length < min_anzahl_zeichen || isDefaultValue(defaultvalues,inputfields[0].value))
			{
				alert("Bitte einen Ort mit mindestens " + min_anzahl_zeichen + " Zeichen eingeben!");
				inputfields[0].focus();
				return false;
			}
		}
		
		// wenn mehrer Felder, dann muss mindestens eins davon gefüllt sein, und wenn etwas eingegeben wurde, dann muss es mind. der min anzahl zeichen entsprechen
		else
		{
			var hasvalue = false;
			for (var i = 0; i < inputfields.length; i++)
			{
				var inputelement = inputfields[i];
				if (jQuery.trim(inputelement.value).length >= min_anzahl_zeichen)
				{
					if (!isDefaultValue(defaultvalues,inputelement.value))
					{
						hasvalue = true;
						break;
					}
				}	
			}
			if (!hasvalue)
			{
				alert("Bitte einen Suchbegriff oder Ort mit mindestens " + min_anzahl_zeichen + " Zeichen eingeben!");
				inputfields[0].focus();
				return false;
			}
		}
	}
	
	for (var i = 0; i < inputfields.length; i++)
	{
		var inputelement = inputfields[i];
		if (!isDefaultValue(defaultvalues,inputelement.value) && jQuery.trim(inputelement.value).length < min_anzahl_zeichen)
		{
			alert("Bitte einen Suchbegriff oder Ort mit mindestens " + min_anzahl_zeichen + " Zeichen eingeben!");
			inputelement.focus();
			return false;
		}
	}	
		
	// noch vorhandene Defaultvalues löschen
	for (var i = 0; i < inputfields.length; i++)
	{
		if (isDefaultValue(defaultvalues,inputfields[i].value))
			inputfields[i].value = "";
	}	
	return true;
}		

function isDefaultValue(defaultvalues,value)
{
	var isdefaultvalue = false;
	for (var j = 0; j < defaultvalues.length; j++)
	{
		if (value == defaultvalues[j])
		{
			isdefaultvalue = true;
			break;
		}
	}		
	return isdefaultvalue;
}	

$(function(){
//	if(!Modernizr.input.placeholder){
		$("input[placeholder]").each(
				function()
				{ 
					if( $(this).attr("placeholder")!="" && ( $.trim($(this).val())=="" || $(this).val()== $(this).attr("placeholder") ) )
					{
						$(this).val($(this).attr("placeholder"));
						$(this).focus(function(){
									if($(this).val()==$(this).attr("placeholder"))
										{
											$(this).val("");
										}
					});
					$(this).blur(function(){
						if($.trim($(this).val())=="")
						{
							$(this).val($(this).attr("placeholder"));
						}
					});
				}
		});
//	}
});
