function CheckLengh(obj,iLen,strErrMsg)
{
	str= Trim(obj.value);
	if(str.length != iLen)
	{
	  alert(strErrMsg);	
	  return true;	
	}
	return false;
		
}

function CheckString(obj,strErrMsg)
{
	str= obj.value;
	re=new RegExp ("[^a-zA-Z ]");
	if(re.test(str)==true) 
	{
		
		alert(strErrMsg);
		obj.focus(); 
		return true;   
	}
	
}

function CheckDuplicateSurveyor(strSubject1,strSubject2,strSubject3,strSubject4,strSubject5,strSubject6,strSubject7,strSubject8,strErrMsg)
{
	for (i=1;i<9;i++)
	{
		var strTemp=eval("strSubject" + i)
		//alert("outer val:" + strTemp)	
		var count=0;		
		for (j=1;j<9;j++)
		{
			//alert("j val:" + j)
			//alert("inner val:" + Trim(eval("strSubject" + j )))	
			if (Trim(eval("strSubject" + j )) != "")
			{ 
				if (eval("strSubject" + j )==strTemp )
				{
					count=count + 1
				//	alert("inner counter:" + count);
					if (count > 1)
					{
						alert(strErrMsg);
						return true; 
					}
						
				}
			}
			//alert("outer  counter:" + count);
			
			
		}
		
	}	
	
}
function CheckDuplicateAsso(strSubject1,strSubject2,strSubject3,strSubject4,strSubject5,strSubject6,strErrMsg)
{
	for (i=1;i<7;i++)
	{
		var strTemp=eval("strSubject" + i)
		//alert("outer val:" + strTemp)	
		var count=0;		
		for (j=1;j<7;j++)
		{
			//alert("j val:" + j)
			//alert("inner val:" + Trim(eval("strSubject" + j )))	
			if (Trim(eval("strSubject" + j )) != "")
			{ 
				if (eval("strSubject" + j )==strTemp )
				{
					count=count + 1
				//	alert("inner counter:" + count);
					if (count > 1)
					{
						alert(strErrMsg);
						return true; 
					}
						
				}
			}
			//alert("outer  counter:" + count);
			
			
		}
		
	}	
	
}
function CheckDuplicateFellow(strSubject1,strSubject2,strSubject3,strSubject4,strSubject5,strErrMsg)
{
	for (i=1;i<6;i++)
	{
		var strTemp=eval("strSubject" + i)
		//alert("outer val:" + strTemp)	
		var count=0;		
		for (j=1;j<6;j++)
		{
			//alert("j val:" + j)
			//alert("inner val:" + Trim(eval("strSubject" + j )))	
			if (Trim(eval("strSubject" + j )) != "")
			{ 
				if (eval("strSubject" + j )==strTemp )
				{
					count=count + 1
				//	alert("inner counter:" + count);
					if (count > 1)
					{
						alert(strErrMsg);
						return true; 
					}
						
				}
			}
			//alert("outer  counter:" + count);
			
			
		}
		
	}	
	
}

function CheckDuplicateActuarial(strSubject1,strSubject2,strSubject3,strSubject4,strErrMsg)
{
 //alert("HI")
	for (i=1;i<5;i++)
	{
		var strTemp=eval("strSubject" + i)
		//alert("outer val:" + strTemp)	
		var count=0;		
		for (j=1;j<5;j++)
		{
			//alert("j val:" + j)
			//alert("inner val:" + Trim(eval("strSubject" + j )))	
			if (Trim(eval("strSubject" + j )) != "")
			{ 
				if (eval("strSubject" + j )==strTemp )
				{
					count=count + 1
				//	alert("inner counter:" + count);
					if (count > 1)
					{
						alert(strErrMsg);
						return true; 
					}
						
				}
			}
			//alert("outer  counter:" + count);
			
			
		}
		
	}	
	
}


function CheckDuplicate(strSubject1,strSubject2,strSubject3,strErrMsg)
{
	for (i=1;i<4;i++)
	{
		var strTemp=eval("strSubject" + i)
		//alert("outer val:" + strTemp)	
		var count=0;		
		for (j=1;j<4;j++)
		{
			//alert("j val:" + j)
			//alert("inner val:" + Trim(eval("strSubject" + j )))	
			if (Trim(eval("strSubject" + j )) != "")
			{ 
				if (eval("strSubject" + j )==strTemp )
				{
					count=count + 1
				//	alert("inner counter:" + count);
					if (count > 1)
					{
						alert(strErrMsg);
						return true; 
					}
						
				}
			}
			//alert("outer  counter:" + count);
			
			
		}
		
	}	
	
}

function CheckDuplicateRep(strSubject1,strSubject2,strSubject3,strSubject4,strErrMsg)
{
	for (i=1;i<5;i++)
	{
		var strTemp=eval("strSubject" + i)
		//alert("outer val:" + strTemp)	
		var count=0;		
		for (j=1;j<5;j++)
		{
			//alert("j val:" + j)
			//alert("inner val:" + Trim(eval("strSubject" + j )))	
			if (Trim(eval("strSubject" + j )) != "")
			{ 
				if (eval("strSubject" + j )==strTemp )
				{
					count=count + 1
				//	alert("inner counter:" + count);
					if (count > 1)
					{
						alert(strErrMsg);
						return true; 
					}
						
				}
			}
			//alert("outer  counter:" + count);
			
			
		}
		
	}	
	
}

function CheckDuplicateCIS(strSubject1,strSubject2,strErrMsg)
{
	for (i=1;i<3;i++)
	{
		var strTemp=eval("strSubject" + i)
		//alert("outer val:" + strTemp)	
		var count=0;		
		for (j=1;j<3;j++)
		{
			//alert("j val:" + j)
			//alert("inner val:" + Trim(eval("strSubject" + j )))	
			if (Trim(eval("strSubject" + j )) != "")
			{ 
				if (eval("strSubject" + j )==strTemp )
				{
					count=count + 1
				//	alert("inner counter:" + count);
					if (count > 1)
					{
						alert(strErrMsg);
						return true; 
					}
						
				}
			}
			//alert("outer  counter:" + count);
			
			
		}
		
	}	
	
}
function ValidateDropDown(strDDlName,strErrMsg)
		{
			if (eval("document.getElementById('" + strDDlName  + "').selectedIndex") == 0)
			{
				alert(strErrMsg);
				return false
			}	
			else
				return true;	
			
		}
function ValidateEmail(objInput)
{
    var sTemp;
    var charno;
    sTemp = '';
    sTemp	=	objInput.value ;

    re1=/@{1}/g		//new RegExp("[@]");
	re2=/\.{2,}/		//new RegExp("[.]");
	re3=/[^\w@.-]/   //new RegExp("[a-zA-Z0-9-_@.]");
	re4= new RegExp("[a-zA-Z0-9_-]@[a-zA-Z0-9_-]+[.\.][a-zA-Z0-9_-]+");
	arr = sTemp.match(re1);
	if (arr == null)
		{charno = 0;}
	else
		{charno = arr.length;}
    if (charno != 1 || re2.test(sTemp)==true || re3.test(sTemp)==true || re4.test(sTemp)==false)
    {
		alert("Enter a valid email address. eg. johnsmith@xyzmail.com. \nEmail can be alphanumeric with an underscore or dash.");
		objInput.focus();
		return true;
    }
}

//check for empty spaces in a text field
function ff_CheckForEmptySpaces(txtControl , sMessage)
{
	
	if (Trim(txtControl.value) == '')
	{
	   alert(sMessage);
	   txtControl.focus();
	   return true;
	}
}

 
function ff_Trim(str)
 {
  while (str.charCodeAt(0)==32)
  {
    str=str.substr(1,str.length-1);
  }   
  while (str.charCodeAt(str.length-1)==32)
  {
    str=str.substr(0,str.length-1);
  }   
  return str;
 }

function Trim( str ) 
{
	var resultStr = "";
	
	resultStr = TrimLeft(str);
	resultStr = TrimRight(resultStr);
	
	return resultStr;
}

function TrimLeft( str ) 
{
	var resultStr = "";
	var i = len = 0;

	// Return immediately if an invalid value was passed in
	if (str+"" == "undefined" || str == null)	
		return null;

	// Make sure the argument is a string
	str += "";

	if (str.length == 0) 
		resultStr = "";
	else 
	{	
  		// Loop through string starting at the beginning as long as there
  		// are spaces.
//	  	len = str.length - 1;
		len = str.length;
		
  		while ((i <= len) && (str.charAt(i) == " "))
			i++;

   	// When the loop is done, we're sitting at the first non-space char,
 		// so return that char plus the remaining chars of the string.
  		resultStr = str.substring(i, len);
  	}

  	return resultStr;
} // end TrimLeft


function TrimRight( str ) 
	{
	var resultStr = "";
	var i = 0;

	// Return immediately if an invalid value was passed in
	if (str+"" == "undefined" || str == null)	
		return null;

	// Make sure the argument is a string
	str += "";
	
	if (str.length == 0) 
		resultStr = "";
	else 
	{
  		// Loop through string starting at the end as long as there
  		// are spaces.
  		i = str.length - 1;
  		while ((i >= 0) && (str.charAt(i) == " "))
 			i--;
 			
 		// When the loop is done, we're sitting at the last non-space char,
 		// so return that char plus all previous chars of the string.
  		resultStr = str.substring(0, i + 1);
  	}
  	
  	return resultStr;  	
} // end TrimRight
function ff_CheckEmptySpacesForTextArea(objInput,sDisplayMessage)
{
	var str;
	var regExp;
	str = objInput.value;

	regExp 	= new RegExp("\r","g");
	str 	= str.replace(regExp,"");

	regExp 	= new RegExp("\n","g");
	str	= str.replace(regExp,"");
	str	= Trim(str);

	if(str.length==0)
	{
		alert(sDisplayMessage);
		objInput.focus();
		return true;
	}
	return false;
}

function IsNotNumeric (objInput, sColName)
{
	if ((isNaN(objInput.value)) || (objInput.value < 0 ))
	{
		alert(sColName + " should be numeric.");
		objInput.focus();
		return true;
	}
	return false;				
}