// JavaScript Document
function form_validation(frm)
{
	for(i=0; i<frm.elements.length; i++)
	{
		var idname = frm.elements[i].id;
		var ex = idname.split("_");
		
		if(ex[0]=="MAN")
		{
			var type = frm.elements[i].type;
			var val = frm.elements[i].value
			var str = frm.elements[i].name;
			var elname = str.replace(/_/, " "); 

			var strlength = trim(val);
			if(strlength == "")
			{
				alert("Please Enter "+ucwords(elname)+":");
				frm.elements[i].focus();
				return false;		
			}
			
			if((type == "text" || type=="textarea" || type == "password") && val == "")
			{
				alert("Please Enter "+ucwords(elname)+":");
				frm.elements[i].focus();
				return false;	
			}
			
			if(type == "password" && (frm.elements[i+1].type == "password" && frm.elements[i+1].value!=""))
			{
				if(val != frm.elements[i+1].value)
				{
					alert("Please Enter Correct "+ucwords(elname)+":");
					frm.elements[i+1].focus();
					return false;	
				}
			}
			
			if(type == "select-one" && (val == "0" || val ==""))
			{
				alert("Please Select "+ucwords(elname)+":");
				frm.elements[i].focus();
				return false;		
			}
		}
		if(ex[1]=="EMAIL")
		{
			checkEmail = val;
			if((checkEmail.indexOf('@') < 0) || ((checkEmail.charAt(checkEmail.length-4) != '.') && (checkEmail.charAt(checkEmail.length-3) != '.'))) 
			{
				alert("You have entered an invalid email address!Please try again.");
				frm.elements[i].focus();
				return false;
			}
		}
		if(ex[1]=="NUM")
		{
			if(val.search(/\S/)==-1)	
			{
				alert("Please Enter Valid "+ucwords(elname)+":");
				frm.elements[i].focus();
				return false;	
			}
		}
	 
   	}
}
function ucwords( str ) {
    return str.replace(/^(.)|\s(.)/g, function ( $1 ) { return $1.toUpperCase ( ); } );
}
function ucfirst( str ) {
    var f = str.charAt(0).toUpperCase();
    return f + str.substr(1, str.length-1);
}

function LTrim( value ) {

var re = /\s*((\S+\s*)*)/;
return value.replace(re, "$1");

}

// Removes ending whitespaces
function RTrim( value ) {

var re = /((\s*\S+)*)\s*/;
return value.replace(re, "$1");

}

// Removes leading and ending whitespaces
function trim( value ) {

return LTrim(RTrim(value));

}

/////////////////////////////////////////////////////////////////////////
function GetXmlHttpObject(handler)
{ 
	var objXmlHttp=null
	if (navigator.userAgent.indexOf("Opera")>=0)
	{
		alert("This example doesn't work in Opera") 
		return 
	}
	if (navigator.userAgent.indexOf("MSIE")>=0)
	{ 
		var strName="Msxml2.XMLHTTP"
		if (navigator.appVersion.indexOf("MSIE 5.5")>=0)
		{
			strName="Microsoft.XMLHTTP"
		} 
		try
		{ 
			objXmlHttp=new ActiveXObject(strName)
			objXmlHttp.onreadystatechange=handler 
			return objXmlHttp
		} 
		catch(e)
		{ 
			alert("Error. Scripting for ActiveX might be disabled") 
			return 
		} 
	} 
	if (navigator.userAgent.indexOf("Mozilla")>=0)
	{
		objXmlHttp=new XMLHttpRequest()
		objXmlHttp.onload=handler
		objXmlHttp.onerror=handler 
		return objXmlHttp
	}
}



function arrHasDupes(cnt) 
{ 
	var myArr = Array();
	for(var i=0;i<cnt;i++)
	{
		var comId = "postionComboID"+i;
		var eleValue = document.getElementById(comId).value;
		if(chkExistence(eleValue, myArr))
		{
			alert("Dupliacte Entry for position: "+eleValue);
			return false;
			//break;
		}
		
	}
}
	
function chkExistence(eleValue,myArr)
{
	for(var i=0;i<myArr.length;i++)
	{
		if(eleValue == myArr[i])
		{
			return true;
		}
		
				
	}
		myArr.push(eleValue);
		return false;
	//alert(val);
	
}

