function matchRegExp(theStr)
	{
	switch (theStr)
		{
		case "Num": 
			theStr = /^[0-9]+$/;
			break;
		case "Alpha": 
			theStr = /^[a-zA-z]+$/;
			break;
		case "AlphaNum": 
			theStr = /[^<>]+$/;
			break;
		case "Email":
			theStr = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
			break;
		}
		return theStr;
	}	
function validateForm(f)
		{   
        var str = "";
		var elements = f.getElementsByTagName('input');
		for(i = 0; i < f.length; i++)
	  	{  
		var pattern = f[i].getAttribute('pattern');
		if (pattern != null && pattern != '') // if the input has a pattern attribute, and if it is not an empty string(NS6 only)
			{			
			value = f[i].value;  
			cleanChar = value.match(matchRegExp(pattern));
		  	if(cleanChar == null)
				{
				str += f.elements.item(i).getAttribute('errorMessage') + "\n";	  	
				//f.elements.item(i).style.background = inputErrBGcol;	
				}
	    	}  
		}		
		if (str != "")
			{    
			alert("Form incomplete\n\n" +str);  
			return false;  
			} else {    
			return true;
			}			
		}