// +------------------------------------------------------------+
// | Form Validation Control		 Version 1.0                |
// | Created on 25/09/2001           Last Modified 26/09/2001   |
// | Authors:						 Narayana Rao Surapaneni    | 
// | eMail:                          narayana@consultant.com    |
// +------------------------------------------------------------+
// +------------------------------------------------------------+
// | Please follow the intructions given below. Don't change    |
// | anything other than required.                              |
// +------------------------------------------------------------+


//function for checking all numeric values
function isAllDigits(formName,fldName,fldValue,fldLblValue)
{

    var flag=true
    var test = "" + fldValue
    if(test.length<=0)
    {
		return false
    }
    else
	{
		for (var k =0; k < test.length; k++)
		{
		    var c = test.substring(k, k+1);
		    if (isDigit(c) == false)
		        {
					flag=false

		        }
		}
		if(flag == false)
		{
			alert("Vul aub alleen cijfers in bij veld " + fldLblValue);
			eval("document."+formName+"."+fldName+".focus()");
			return false
		}
		else
		{
			return true

		}
    }
    return true
 }

 //funtion to check whether the given character is numeric or not.This function is used in
 //isAlldigits() function.


function isDigit(c)
{
var test = "" + c;
if (test == "0" || test == "1" || test == "2" || test == "3" || test == "4"
    || test == "5" || test == "6" || test == "7" || test == "8" || test == "9")
{
	return true;
}
return false;
}

//function for checking early whitespace
function isWhiteSpace(formName,fldName,fldValue,fldLblValue)
{
	var s;
	s= fldValue.substring(0,1)

	if(s==" ")
	{
		eval("document."+formName+"."+fldName).value =  fldValue.substring(1,fldValue.length);
	}
return true
}


//Checks for numeric values only
function isNumeric(formName,fldName,fldValue,fldLblName)
{
	var compareString="1234567890";
	if (fldValue.length != 0)	
	{
		for (var Count=0; Count < fldValue.length; Count++)
		{
			if (compareString.indexOf(fldValue.substring (Count, Count+1)) == -1)
			{
				alert( fldLblName + " moet numeriek zijn");
				eval("document."+formName+"."+fldName+".focus()");
				return false;
			}
		}
	return true;
	}
}


//Checks for Alpha Numeric Values
function isAlphaNumeric(formName,fldName,fldValue,fldLblValue)
{
	var compareString="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
	if (fldValue.length != 0)	
	{
		for (var Count=0; Count < fldValue.length; Count++)
		{
			if (compareString.indexOf(fldValue.substring (Count, Count+1)) == -1)
			{
				alert(fldLblValue + " veld moet alphanumeriek zijn");
				eval("document."+formName+"."+fldName+".focus()");
				return false;
			}
		}
	return true;
	}
}

//Checks for Alpha charaters only
function isAlpha(formName,fldName,fldValue,fldLblValue)
{
	var compareString="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
	if (fldValue.length != 0)	
	{
		for (var Count=0; Count < fldValue.length; Count++)
		{
			if (compareString.indexOf(fldValue.substring (Count, Count+1)) == -1)
			{
				alert(fldLblValue + " veld mag alleen Alpha karakter zijn");
				eval("document."+formName+"."+fldName+".focus()");
				return false;
			}
		}
	return true;
	}
}


//An email validation function
function isEmail(formName,fldName,fldValue,fldLblName)
{
	var compareString = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@._-'";
	var compNumeric = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@._-'";
	var dotFlag = false;
	var rateFlag = false;
	var dotCount;
	var	rateCount;

	if(fldValue.length < 7)
	{
		alert(fldLblName+ " moet uit meer dan zes tekens bestaan");
		eval("document."+formName+"."+fldName+".focus()");
		return false;
	}

	
	if (fldValue.substring(0,1) == "." || fldValue.substring(0,1) == "@"
	|| fldValue.substring(fldValue.length-1,fldValue.length) == "." 
	|| fldValue.substring(fldValue.length-1,fldValue.length) == "@")
	{
		alert("Begin of eindig aub uw " + fldLblName +" adres niet met '.' of '@'");
		eval("document."+formName+"."+fldName+".focus()");
		return false;
	}
		
	for (var Count=0; Count < fldValue.length; Count++) 
	{
		if (compareString.indexOf(fldValue.substring(Count, Count+1)) == -1)
		{
			alert("Vul aub een geldig " +  "alphanumeric, '.' en '@' in bij email adres in " + fldLblName);
			eval("document."+formName+"."+fldName+".focus()");
			return false;
		}		

		if(fldValue.substring(Count, Count+1)==".")
		{
			dotFlag = true;
			dotCount = Count;
		}
		
		if(fldValue.substring(Count, Count+1)=="@")
		{
			rateFlag = true;
			rateCount = Count;

		}
	}
		if((dotFlag == false && rateFlag == false) || (dotFlag==false && rateFlag==true) || (dotFlag==true && rateFlag==false))
		{
			alert("Er moet minimaal één '.' en één '@' teken bestaan in veld " + fldLblName);
			eval("document."+formName+"."+fldName+".focus()");
			return false;
		}

		if((rateCount - dotCount) == 1 )
		{
			alert("'@' mag niet direct volgen achter '.' in veld " + fldLblName);
			eval("document."+formName+"."+fldName+".focus()");
			return false;
		}

		if((dotCount - rateCount) == 1 )
		{
			alert("'.' mag niet direct volgen achter '@' in veld " + fldLblName);
			eval("document."+formName+"."+fldName+".focus()");
			return false;
		}

		if(compNumeric.indexOf(fldValue.substring(0,1))== -1)
		{
			alert("Email should not start with numeric characters in " + fldLblName);
			eval("document."+formName+"."+fldName+".focus()");
			return false;
		}
	
	return true;	
}
