
//	*************************************************************************
//		Validering :: Checker om inputværdien kun indeholder [mellemrum) 
//	*************************************************************************
function validateForSpc(inpStrObj)
{
	var strObj		= inpStrObj;
	var strObjVal	= inpStrObj.value;

	var intStrLen			=	strObjVal.length	//Feltets længde
	var blnErr_OnlySpaces	=	true				//Returnerer = True (KUN mellemrum)
	var strIllegalChar		=	" "					//Streng, der er "ikke OK!"

	for (i=0; i < intStrLen; i++)					//Der ittereres (på strengens længde)
	{
	strChar = strObjVal.charAt(i);
		if (strChar != strIllegalChar)
		{
			blnErr_OnlySpaces = false;				//Ændres -> der anvend. ikke kun mellemrum
		}
	}

	if (blnErr_OnlySpaces == true)
	{
		return (true);			//	=	Det er KUN mellemrum i strengen
	}else{
		return (false);			//	=	Der er IKKE kun mellemrum i strengen
	}
}

//	*************************************************************************
//		Validering :: Checker om inputværdien indeholder "illegale" tegn
//	*************************************************************************
function validateIllegalChars(inpStrObj)
{
	var strObj		= inpStrObj;
	var strObjVal	= inpStrObj.value;

	var intStrLen		=	strObjVal.length;
	var blnIllChars		=	false;
	var strIllegalChars	=	"'<>&%*[]()"

	//	Gennemløber streng - input/tekststreng
	OuterIt:
	for (i=0; i < intStrLen; i++)
	{
		strChar = strObjVal.charAt(i);

		//	Gennemløber streng - illegale chars
		for (j=0; j < strIllegalChars.length; j++)
		{
			if (strChar == strIllegalChars.charAt(j))
			{
				blnIllChars = true;
				break OuterIt;
			}
		}
	}

	if (blnIllChars == true)
	{
		return (true);	//	=	Det ER ulovlige tegn i strengen
	}else{
		return (false);	//	=	Det ER IKKE ulovlige tegn i strengen
	}
}

//	*************************************************************************
//		Validering :: Undersøger inputværdiens format/type  - numbers | currency | text
//	*************************************************************************
function validateCharType(inpStrObj, inpChkType)
{
	var strObj		= inpStrObj;
	var strObjVal	= strObj.value;
	var intStrLen	= strObjVal.length;
	var chkType		= inpChkType;
	var blnIllChars = false;

	switch(chkType){
		case 'date':
			var strCharOK = "1234567890-";
			break;
		case 'numbers':
			var strCharOK = "1234567890";
			break;
		case 'currency':
			var strCharOK = "1234567890,";
			break;
		case 'text':
			var strCharOK = " aAbBcCdDeéÉEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZæÆøØåÅäÄöÖüÜ1234567890.!():=,_-/&%\r\n";
			break;
		case 'text2':
			var strCharOK = " aAbBcCdDeéÉEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZæÆøØåÅäÄöÖüÜ1234567890.,/&\r\n();:-_!";
			break;
		case 'menuitem':
			var strCharOK = " aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZæÆøØåÅäÄöÖüÜ1234567890.!?=,_-/&\"";
			break;
		case 'email':
			var strCharOK = " aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZæÆøØåÅäÄöÖüÜ1234567890.-@";
			break;
		case 'www':
			var strCharOK = " aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZæÆøØåÅäÄöÖüÜ1234567890/:-_.";
			break;
		case 'password':
			var strCharOK = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
			break;
		case 'folder':
			var strCharOK = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_";
			break;
	}

	Outer_it:
	for (i=0; i < intStrLen; i++)
	{
		strChar = strObjVal.charAt(i);
		
		Inner_it:
		for (j=0; j < strCharOK.length; j++)
		{
			if (strChar == strCharOK.charAt(j)){
				break Inner_it;
			}

			if (j == (strCharOK.length-1)){
				blnIllChars = true;
				break Outer_it;
			}
		}
	}

	if (blnIllChars == true)
		return (false);
}

//	*************************************************************************
//		Validering :: Undersøger om inputværdien har format som en email-adresse
//	*************************************************************************
function validateEmail(inpStrObj)
{
	var strObj		= inpStrObj;
	var strObjVal	= inpStrObj.value;

    if(strObjVal.indexOf("@") == -1)
    {
      alert("Emailadressen er ikke gyldig - adressen skal indeholde \'@\'");
      return (false);
    }
    if(strObjVal.indexOf(".") == -1)
    {
      alert("Emailadressen er ikke gyldig - adressen skal slutte med f.eks. \'.dk\'");
      return (false);
    }
  return (true);
}

//	*************************************************************************
//		Check :: Udvidet check af formfield - version 2.0
//	*************************************************************************
function checkEntryType2(inpStrObj, inpStrErr, inpStrCharType, inpRequired)
{
	var strObj		= inpStrObj;
	var strErr		= inpStrErr;
	var strCharType	= inpStrCharType;
	
	switch(strCharType){
		case 'date':
			var strErr2 = "Der skal indtastes en dato i feltet."
			break;
		case 'numbers':
			var strErr2 = "Der må kun indtastes tal (0-9) i feltet."
			break;
		case 'currency':
			var strErr2 = "Der må kun indtastes tal og decimalkomma (0-9 og ,) i feltet."
			break;
		case 'text':
			var strErr2 = "Der må kun indtastes almindelig tekst i feltet."
			break;
		case 'text2':
			var strErr2 = "Der må kun indtastes almindelig tekst i feltet."
			break;
		case 'menuitem':
			var strErr2 = "Der må kun indtastes almindelig tekst i feltet."
			break;
		case 'email':
			var strErr2 = "Der må kun indtastes tegn, der kan indgå i en email-adresse."
			break;
		case 'www':
			var strErr2 = "Der må kun indtastes tegn, der kan indgå i en www-adresse."
			break;
		case 'password':
			var strErr2 = "Der må kun indtastes følgende tegn: a-Z, 0-9."
			break;
		case 'folder':
			var strErr2 = "Der må kun indtastes følgende tegn: _, a-Z, 0-9."
	}

	if (validateCharType(strObj, strCharType)==false){
		alert(strErr2);
//		strObj.focus();
		return(false);
	}

	if (inpRequired==1){
		if (strObj.value==""){
			alert(strErr);
//			strObj.focus();
			return (false);
		}
		if (validateForSpc(strObj)==true){
			alert('Der må ikke kun tastes [mellemrum] i feltet.');
//			strObj.focus();
			return(false);
		}
	}
}


//	*************************************************************************
//		Check :: Check at formfield-/inputværdien er en emailadresse
//	*************************************************************************
function checkEmail(inpStrObj)
{
	var strObj		= inpStrObj;
	var strObjVal	= inpStrObj.value;

	if (strObjVal==""){
		alert('Indtast venligst en email-adresse.');
		strObj.focus();
		return(false);
	}
	if (validateForSpc(strObj)==true){
		alert('Der må ikke kun tastes [mellemrum] i feltet.');
		strObj.focus();
		return(false);
	}
	if (validateIllegalChars(strObj)==true){
		alert('Der må ikke anvendes specialtegn (f.eks. \', <, >) i emailadressen.');
		strObj.focus();
		return(false);
	}
	if (validateEmail(strObj)==false){
		strObj.focus();
		return(false);
	}
}

