// JavaScript Document
/* ****************************************************************
   This javascript is to filterout the special char.

   Author:         Zafar Hayat

   Date:           08/28/2007

   Special
   Considerations:

   Parameters In : string, option
   
   Any additional info: None.	

   Maintenance:
   Who		Date		Description
   -------------- 	-------- 	---------------------------------------------------------------
  JSButalid		11/29/07    Allow space in pattern3 which is used to validate 
					city field.
   **************************************************************** */
function trimAll(sString) 
{
while (sString.substring(0,1) == ' ')
{
sString = sString.substring(1, sString.length);
}
while (sString.substring(sString.length-1, sString.length) == ' ')
{
sString = sString.substring(0,sString.length-1);
}
return sString;
}

function stringValid(inString,inOption) {
	//var pattern1 = /^[a-zA-Z\-\'\w\s]+$/;	//allow A-Z,  dash and signgle quote.
	var pattern1 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ '-";
	var pattern2 = /^[a-zA-Z0-9\#\w\s]+$/;	// allow, A-Z, 0-9 and #
	var pattern3 = /^[a-zA-Z\ ]+$/;		// allow, A-Z and space
	var pattern4 = /^[0-9]+$/;			// allow, 0-9
	var pattern5 = /^[a-zA-Z0-9\_\-\@\.]+$/;	// allow, A-Z, 0-9, underscore, dash, @ and period.
	var pattern6 = /^[a-zA-Z0-9]+$/;	// allow, A-Z, 0-9.
	var pattern7 = /^[a-zA-Z0-9\,\.\ ]+$/;	// allow, A-Z, 0-9, comma, period and space.	
	var tfld = trimAll(inString.value);
	var tfld=tfld.toUpperCase(); 
	var strlen=tfld.length;
	
	switch(inOption) {				//kind of select in RPG
	case "1":
		for (var i=0;i<strlen;i++){
			if(pattern1.indexOf(tfld.charAt(i))<0){
				return false;
			} // end of if
		} //end of for loop
		return true;
		break;
	case "2":
		if (!pattern2.test(tfld)) { // if incoming char are not in pattern
			return false;		//return false
		} else {
		return true; }
		break;				//exit the switch
	case "3":
		if (!pattern3.test(tfld)) { // if incoming char are not in pattern
			return false;		//return false
		} else {
		return true; }
		break;				//exit the switch
	case "4":
		if (!pattern4.test(tfld)) { // if incoming char are not in pattern
			return false;		//return false
		} else {
		return true; }
		break;				//exit the switch
	case "5":
		if (!pattern5.test(tfld)) { // if incoming char are not in pattern
			return false;		//return false
		} else {
		return true; }
		break;				//exit the switch
	case "6":
		if (!pattern6.test(tfld)) { // if incoming char are not in pattern
			return false;		//return false
		} else {
		return true; }
		break;				//exit the switch	
	case "7":
		if (!pattern7.test(tfld)) { // if incoming char are not in pattern
			return false;		//return false
		} else {
		return true; }
		break;				//exit the switch			
		
	default:
		return true;
	}
}