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 MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

/*
The isEmpty and isWhitespace functions were taken straight from Netscape's JavaScript development site, http://developer.netscape.com.
*/


// whitespace characters
var whitespace = " \t\n\r";

/****************************************************************/

// Check whether string s is empty.
function isEmpty(s)
{ return ((s == null) || (s.length == 0)) }

/****************************************************************/

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 ForceEntry(val, str) {
   var strInput = new String(val.value);

   if (isWhitespace(strInput)) {
	alert(str);
	return false;
   } else
	return true;

}

/****************************************************************/

function CheckSelection(val, str) {
	var isSelected = val.selectedIndex
	if (isSelected == 0) {
		alert(str);
		return false;}
	else{
		return true;
	}
}

function validateEmailForm(theForm) {
	if (theForm.email.value == "")
	{
		alert("Please enter your email address");
		theForm.email.focus();
		return(false);
	}
	else if (!isEmail(theForm.email.value))
	{
		alert("Please enter your email address in the correct format");
		theForm.email.focus();
		return(false);
	}
	return(true);
}
function validateForm(theForm) {
	if (theForm.email.value == "")
	{
		alert("Please enter your email address");
		theForm.email.focus();
		return(false);
	}
	else if (!isEmail(theForm.email.value))
	{
		alert("Please enter your email address in the correct format");
		theForm.email.focus();
		return(false);
	}
	return(true);
}


function isEmail(formInput)
{
	var atpos, dotpos, lastpos;
		apos = formInput.indexOf("@");
		dotpos = formInput.lastIndexOf(".");
		lastpos = formInput.length-1;
		if (apos < 1 || dotpos - apos < 2 || lastpos - dotpos > 3 || lastpos - dotpos < 2)
		{
			return(false);
		}
		return(true);
}

function emailForm_submit()
{	if (document.emailForm.email.value == "")
	{
		alert("Please enter your email address");
		document.emailForm.email.focus();
	}
	else if (!isEmail(document.emailForm.email.value))
	{
		alert("Please enter your email address in the correct format");
		document.emailForm.email.focus();
	}
	else{
	document.emailForm.submit();
	}
}

//-------------------------------------
// dfeehely - Feb 16, 2005
// check form values.
//-------------------------------------
function checkForm(theform, emailfield, ignoreList) {
	var str;
	var strIgnoreList;
	var strEmailField;
	var arrIgnoreList;
	var arrEmailFieldList;
	var boolIgnoreFlag;

	str="";
	strIgnoreList = new String(ignoreList);
	strEmailField = new String(emailfield);
	arrIgnoreList = strIgnoreList.split(',');
	arrEmailFieldList = strEmailField.split(',');
	boolIgnoreFlag=false;


	for(i=0; i < theform.elements.length; i++) {
		if(theform.elements[i].name != "") {
			boolIgnoreFlag=false;
			//Check if current field is on ignore list
			for (var m=0; m <  arrIgnoreList.length; m++) {
				if(theform.elements[i].name == arrIgnoreList[m].toString()) {
					boolIgnoreFlag=true;
				}
			}

			if (boolIgnoreFlag ==  false) {
				// Loop through email fields and validate
				for (var k=0; k <  arrEmailFieldList.length; k++) {
					if(theform.elements[i].name == arrEmailFieldList[k]) {
						if(echeck(theform.elements[i].value) == false) {
							alert("Please enter a valid email address");
							theform.elements[i].focus();
							return false;
						}
					}
				}
				
				if(theform.elements[i].type == "select-one") {
					var strSelRes = theform.elements[i].options[theform.elements[i].selectedIndex].value;
					if((strSelRes == "")||(strSelRes == "none")) {
						alert("Please select a value for " + theform.elements[i].name );
						theform.elements[i].focus();
						return false;
					}
				} else if(theform.elements[i].type == "text") {
					if(theform.elements[i].value == "") {
						alert("Please enter a value for " + theform.elements[i].name );
						theform.elements[i].focus();
						return false;
					}
				} else if(theform.elements[i].type == "textarea") {
					var strVal;
					strVal = "";
					strVal = theform.elements[i].value
					strVal = strReplace(theform.elements[i].value, "\\n", "")
					if(strVal == "") {
						alert("Please enter a value for " + theform.elements[i].name );
						theform.elements[i].focus();
						return false;
					}
				} else if(theform.elements[i].type == "radio") {
					var strRadioName;
					var boolCheckedFlag;
					strRadioName = theform.elements[i].name;
					boolCheckedFlag = false;

					for(j=0;j<theform.elements[strRadioName].length;j++) {
						//alert(theform.elements[strRadioName][j].checked);
						if(theform.elements[strRadioName][j].checked == true) {
							boolCheckedFlag = true;
						}
					}

					if(boolCheckedFlag == false) {
						alert("Please select a value for " + theform.elements[i].name );
						theform.elements[i].focus();
						return false;
					}
				}


			}
		}
	}

	return true;
}


//---------------------------------
// dfeehely - check email format
//---------------------------------
function echeck(str) {

	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1){
	   alert("Invalid E-mail ID")
	   return false
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   alert("Invalid E-mail ID")
	   return false
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		alert("Invalid E-mail ID")
		return false
	}

	 if (str.indexOf(at,(lat+1))!=-1){
		alert("Invalid E-mail ID")
		return false
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		alert("Invalid E-mail ID")
		return false
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
		alert("Invalid E-mail ID")
		return false
	 }
	
	 if (str.indexOf(" ")!=-1){
		alert("Invalid E-mail ID")
		return false
	 }

	 return true					
}

//-------------------------------------
// dfeehely - Feb 16, 2005
// replace string.
//-------------------------------------
function strReplace(strsrc, strfind, strreplace) {
	var thisSrcString;
	var thisRepString;
	var thisResString;
	var thisRegExp;

	thisSrcString = new String(strsrc);
	thisRepString = new String(strreplace);
	thisRegExp = new RegExp(strfind,'gi')

	thisResString = thisSrcString.replace(thisRegExp, thisRepString);
	return thisResString
}
	
//---------------------------------
// dfeehely - Mar 21, 2005
// Popup Window
//---------------------------------
function PopUp(theURL,winName,features) {
	window.open(theURL,winName,features);
}



//---------------------------------
// dfeehely - Apr 12, 2005
// Confirm statement delete
//---------------------------------
function confirmStatementDelete(s) {
	var reply;
	reply = confirm("Are you sure you want to delete this statement?");
	if (reply == true) {
		document.location = "../asp/statements_deleteOK.asp?s=" + s;
	}
	return false;
}


//---------------------------------
// dfeehely - Apr 12, 2005
// Confirm statement delete
//---------------------------------
function confirmParliamentaryQuestionDelete(s) {
	var reply;
	reply = confirm("Are you sure you want to delete this Parliamentary Question?");
	if (reply == true) {
		document.location = "../asp/ParliamentaryQuestion_deleteOK.asp?q=" + s;
	}
	return false;
}
