// Functions that are necessary for Mouseover / Mouseout for Images

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

/* *** Function to display the message/tooltip in the status bar *** */
function DisplayStatusMessage(sMessage)
{		
	window.status=sMessage;
	return true;
}
// Function to trim the string
function trim(strInput)
{
// for trimLeft
	var strTemp = new  String(strInput)
	while(strTemp.charAt(0)==" ")
	{
		strTemp = strTemp.slice(1);
	}
// for TrimRight
	var iLength = strTemp.length;
	iLength--;// accounts for zero based index
	while(strTemp.charAt(iLength)==" ")
	{
		strTemp = strTemp.slice(0,iLength--);
	}
	return strTemp;
}


//function to validate email
function  SearchAT( fldemailIn )  
{
	if(fldemailIn.value!=''){
		var	 emailIn = TrimString(fldemailIn.value)
		var  numAtChars;
		var  userNameIn;
		var  domainNameIn;
		var  addressFields = new Array();
		var  alertString = "";
		addressFields = emailIn.split( '@' );
		numAtChars = addressFields.length - 1;
	
		if (( numAtChars  ==  0 )||( numAtChars  >  1 )|| ( addressFields[0] == "" )||( addressFields[1] == "" ))
			alertString = "Enter a Valid Email(xxxx@xx.xx)";
		else
			{
			userNameIn   = addressFields[0];
			domainNameIn = addressFields[1];

			if ( userNameIn.indexOf(" ") != -1 )
				alertString = "Enter a Valid Email(xxxx@xx.xxx)";
			else if (domainNameIn.indexOf(" ") != -1 )
				alertString = "Enter a Valid Email(xxxx@xx.xxx)";

			else if (isStandardDomain( domainNameIn ) == false )
				alertString = "Enter a Valid Email(xxxx@xx.xxx)";

			else
				return true;

			}
		if(alertString!='')
		{
		alert(alertString);
		fldemailIn.value="";
		fldemailIn.focus();
		}
	}
}


function  isStandardDomain(domainIn )
{
	var  isStandardReturn = false;
	var  last4chars  =  domainIn.substring( domainIn.length-4, domainIn.length );
	var  last3chars  =  domainIn.substring( domainIn.length-3, domainIn.length );

	last4chars = last4chars.toUpperCase();
	var  countryCodePattern = /\.[a-zA-Z][a-zA-Z]/;
	if      ( last4chars == ".COM" ) isStandardReturn = true;
	else if ( last4chars == ".EDU" ) isStandardReturn = true;
	else if ( last4chars == ".GOV" ) isStandardReturn = true;
	else if ( last4chars == ".NET" ) isStandardReturn = true;
	else if ( last4chars == ".MIL" ) isStandardReturn = true;
	else if ( last4chars == ".ORG" ) isStandardReturn = true;

	else if ( last3chars.search( countryCodePattern )   !=  -1 )
		isStandardReturn = true;
	return  isStandardReturn;
} 

// function to remove spaces
function TrimString(strInput)
{
	while(strInput.charAt(0)==" ")
	{
		strInput = strInput.slice(1);
	}
	var iLength = strInput.length;
	iLength--;
	while(strInput.charAt(iLength)==" ")
	{
		strInput = strInput.slice(0,iLength--);
	}
	return strInput;
}

function WindowStatus(sMessage)
{
	window.status=sMessage
	return true;
	
}