//------------------------------------------------------------------------------------

function AndSubmit(myurl, formname)
{
		myObj = eval('document.' + formname);
		myObj.action = myurl;
		myObj.submit();
}

//------------------------------------------------------------------------------------

function ConfirmAndSubmit(myurl, formname, hinweis)
{
	delete_rec 	= confirm(hinweis);
	
	if(delete_rec)
	{
		myObj = eval('document.' + formname);
		myObj.action = myurl;
		myObj.submit();
	}
}

//------------------------------------------------------------------------------------

function CheckAndSubmit(myurl, formname, formfields, email, cbox, cboxnr, selectfields)
{
	
	InputOk=true;
	
	if(cbox && InputOk)
	{
		InputOk = checkBoxCheck(formname, cbox, cboxnr);
	}
	
	if(formfields && InputOk)
	{
		InputOk = checkInput(formname, formfields);
	}
	
	if(selectfields && InputOk)
	{
		InputOk = checkSelectFields(formname, selectfields);
	}
	
	if(email && InputOk)
	{
		InputOk = checkEmail(formname, email);
	}
	
	
	if(InputOk && myurl)
	{

		myObj = eval('document.' + formname);
		myObj.action = myurl;
		myObj.submit();

	}

}

//------------------------------------------------------------------------------------

function checkBoxCheck(formname, cbox, cboxnr)
{

	cboxnr=parseInt(cboxnr);

	for(var i=0; i<cboxnr; i++)
	{

		if(eval("document." + formname + "." + cbox + "["+ i + "].checked"))
		{
			return true;
		}
	}
	
	alert('Sie haben noch keine Auswahl getroffen!');
	return false;
}

//------------------------------------------------------------------------------------

function checkInput(formname, checkArray){

 	checkField = checkArray.split(",");

	var arrLength = checkField.length;
	var benoetigteFelder = '';

	for(var i=0; i<arrLength; i++){
		  var field = document.forms[formname].elements[checkField[i]].value;
		  if (field == false){
					benoetigteFelder = benoetigteFelder + " > " + document.forms[formname].elements[checkField[i]].name + "\n";
			}
	}

	if(benoetigteFelder == false)
	{
		return true;
	}
	else
	{
		alert('Folgende Eingabefelder müssen \nSie unbedingt ausfüllen:\n\n' + benoetigteFelder);
		return false;
	}
	
}

//------------------------------------------------------------------------------------

function checkSelectFields(formname, checkArray)
{
 	checkField = checkArray.split(",");

	var arrLength = checkField.length;
	var benoetigteFelder = '';

	for(var i=0; i<arrLength; i++)
	{
	  if (document.forms[formname].elements[checkField[i]].selectedIndex == 0)
		{
			benoetigteFelder = benoetigteFelder + " > " + document.forms[formname].elements[checkField[i]].name + "\n";
		}
	}

	if(benoetigteFelder == false)
	{
		return true;
	}
	else
	{
		alert('Treffen Sie bitte eine Auswahl bei folgenden Feldern:\n\n' + benoetigteFelder);
		return false;
	}

}

//------------------------------------------------------------------------------------

function checkEmail(formname, numFields)
{

	checkNumFields = numFields.split(",");
	var arrLength = checkNumFields.length;

	for(var i=0; i<arrLength; i++)
	{  
		if(document.forms[formname].elements[checkNumFields[i]].value > '')
		{
			if	((document.forms[formname].elements[checkNumFields[i]].value.indexOf("@") == -1) ||
					 (document.forms[formname].elements[checkNumFields[i]].value.indexOf(".") == -1))
			{
				alert("No valid e-mail address");
				return false;		
			}
			else
			{
				return true;
			}
		}
	}
}

//------------------------------------------------------------------------------------


function PublicCheckAndSubmit(muss_input, myurl, formname)
{
	arr_muss_input = muss_input.split(";");
	arr_muss_input_len = arr_muss_input.length;
	
	// Array für Fehlermeldung wird erstellt
	my_infoarray = new Array('Inkorrekte oder keine Eingabe\nin folgenden Feldern:\n\n');
			
	for(i=0; i<arr_muss_input_len; i++)
	{
		my_feld 			= arr_muss_input[i];
		arr_my_feld 	= my_feld.split(":");
		
		// Übergabeparameter referenziert Feldtyp: Num, Anum, Sel
		if(arr_my_feld[2] == 'num'){
			checkNum();
		}
		if(arr_my_feld[2] == 'anum'){
			checkANum();
		}
		if(arr_my_feld[2] == 'sel'){
			checkSel();
		}		
	}
	
	if(my_infoarray.length > 1){		
		my_array = my_infoarray.join("");
		alert(my_array);
	}
	else{
		AndSubmit(myurl, formname);
	}
}

function checkNum()
{
	var reg	= /^[0-9]+,?[0-9]*$/;
	res = reg.test(arr_my_feld[1]);
	cmsinfo(res);
}

function checkANum()
{
	var reg = /^(\w)+(\w|\W|\s)*$/;
	res = reg.test(arr_my_feld[1]);
	cmsinfo(res);
}

function checkSel()
{
	var reg = /^[1-9]|\s$/;
	res = reg.test(arr_my_feld[1]);
	cmsinfo(res);
}

function cmsinfo()
{
	if(!(res))
	{
		var my_info = arr_my_feld[0];
		my_infoarray[my_infoarray.length] = ' > ' + my_info + '\n';
	}
}
