// isEmail (STRING s [, BOOLEAN emptyOK])

// whitespace characters

var whitespace = " \t\n\r";



// 

// Email address must be of form a@b.c ... in other words:

// * there must be at least one character before the @

// * there must be at least one character before and after the .

// * the characters @ and . are both required

function isValidEmail(s)

{   

	if (isEmpty(s)) return false;

   

	// is s whitespace?

	if (isWhitespace(s)) return false;

	    

	// there must be >= 1 character before @, so we

	// start looking at character position 1 

	// (i.e. second character)

	var i = 1;

	var sLength = s.length;



	// look for @

	while ((i < sLength) && (s.charAt(i) != "@"))

	{ i++

	}



	if ((i >= sLength) || (s.charAt(i) != "@")) return false;

	else i += 2;



	// look for .

	while ((i < sLength) && (s.charAt(i) != "."))

	{ i++

	}



	// there must be at least one character after the .

	if ((i >= sLength - 1) || (s.charAt(i) != ".")) return false;

	else return true;

}



// Check whether string s is empty.

function isEmpty(s)

{   

	return ((s == null) || (s.length == 0))

}



// Returns true if string s is empty or 

// whitespace characters only.

function isWhitespace(s)

{   

	var i;



    // Is s empty?

    if (isEmpty(s)) return true;



    // Search through string's characters one by one

    // until we find a non-whitespace character.

    // When we do, return false; if we don't, return true.

    for (i = 0; i < s.length; i++)

    {   

		// Check that current character isn't whitespace.

		var c = s.charAt(i);



		if (whitespace.indexOf(c) == -1) return false;

    }

    // All characters are whitespace.

    return true;

}



function checkForm() { 

	if (!isValidEmail(document.subscribeForm.elements['Email Address'].value)) {

	document.subscribeForm.elements['Email Address'].style.backgroundColor='yellow';

		alert("Please enter a valid Email Address. (name@host.com)");

		document.subscribeForm.elements['Email Address'].focus();

		return false;

	}

}

// clear, fill form text input
function fillclear(inp,str) {
	var theinput = document.getElementById(inp);
	if (theinput.value==str) {
		theinput.value = '';
		}
	else if (theinput.value=='') {
		theinput.value = str;
		}
	}


/* Mouseover, Swap Images, and Preload */

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_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_findObj(n, d) { //v4.01
  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 && d.getElementById) x=d.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];}
}

/* SwapDivs : Show & Hide Expand/Collapse */

function HideContent(d) {
document.getElementById(d).style.display = "none";
}
function ShowContent(d) {
document.getElementById(d).style.display = "block";
}
function ReverseContentDisplay(d) {
if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "block"; }
else { document.getElementById(d).style.display = "none"; }
}