function setChecked(targetName){ 
	document.frmDocMgmt[targetName][1].checked = true }
function setSelected(targetName){ 
	document.frmDocMgmt[targetName][0].selected = true }
document.activePopup = new Array;

function openWindow(sUrl,sName,sParam){

	if (navigator.userAgent.toLowerCase().indexOf("msie 5.0")>0)
	{
		window.open(sUrl,sName,sParam);
	}
	else{
	 document.activePopup.push(window.open(sUrl,sName,sParam));
	}
}

function closePopup(){
	if (navigator.userAgent.toLowerCase().indexOf("msie 5.0")>0)
	{
		self.close();
	}
	else{
		for(var x=0;x<document.activePopup.length;x++){
		 document.activePopup[x].close()
		self.close();
		}
	}
}

function getCapacity()
{
	radioChecked = false

	for(i=0;i<document.forms[0].elements.length;i++)
	{
		if(document.forms[0].elements[i].id == "UserPreferences1_47_RadioButtonList1" && document.forms[0].elements[i].checked)
		{
			radioChecked = true
		}
	}

	if(document.getElementById("UserPreferences1_45_DropDownList1").value.toLowerCase() == "other")
	{
		alert ('Sorry, We currently do not support calculating the "Other" pool shape.  Please enter your pool capacity.'); 
	}
	else if(!radioChecked)
	{
		alert ('You must select a Preferred Dimension to calculate your pools capacity.'); 
	}
	else
	{
		window.open('/Fed/BAQCIL/Common/Quickforms/CapacityCalc/capcacityCalc.htm','','scrollbars=no,width=250,height=270,toolbars=no')
	}
}

function swapImage(img, state)
{
	img.src = img.src.substring(0,img.src.lastIndexOf("_") + 1) + state + img.src.substring(img.src.lastIndexOf("."),img.src.length)
}

   /*
   * Validate Ask An Expert and Dealer Contact Email Forms
   */
  function validateEmailForm(objForm) {


     var errorMsg = "";

     errorMsg += notNull(objForm.txtName, "Please Enter Your Name\n");
     errorMsg += notNull(objForm.txtSubject, "Please Enter a Subject\n");
     errorMsg += notNull(objForm.txtPhone, "Please Enter a Phone Number\n");
     errorMsg += validEmail(objForm.txtEmailAddress, "Please Enter a Valid Email Address\n");
     errorMsg += notNull(objForm.mmoMessage, "Please Enter a Message\n");

     if (errorMsg != "") {
       alert(errorMsg);
     }
     else {
     	var strMessage = "";
	strMessage = objForm.mmoMessage.value;
	while (strMessage.indexOf("\r\n") != -1)
	{	
		strMessage = strMessage.replace("\r\n", ' ');			
	}
	objForm.mmoMessage.value = strMessage;
       objForm.submit();
      }
   }

   function notNull(objField, Msg) {

     if (objField.value == null || objField.value == "" || objField.value == " ") {
       return Msg;
     }

     return "";
   }

  /*
   * Verifies that an email conforms to RFC 822 email address standard
   */
   function validEmail(objField, Msg) {

       if (objField.value == null || objField.value == "") {
           return Msg;
       }
       else {
           // Patterns
           var emailPat=/^(.+)@(.+)$/
           var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
           var validChars="\[^\\s" + specialChars + "\]"
           var quotedUser="(\"[^\"]*\")"
           var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
           var atom=validChars + '+'
           var word="(" + atom + "|" + quotedUser + ")"
           var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
           var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

           var matchArray=objField.value.match(emailPat)
           if (matchArray==null) {
             return Msg;
           }
           var user=matchArray[1]
           var domain=matchArray[2]

           // See if "user" is valid 
           if (user.match(userPat)==null) {
               // user is not valid
               return Msg;            }

           var IPArray=domain.match(ipDomainPat)
           if (IPArray!=null) {
             // this is an IP address
             for (var i=1;i<=4;i++) {
               if (IPArray[i]>255) {
                   return Msg;
               }
             }
           }

           // Domain is symbolic name
           var domainArray=domain.match(domainPat)
           if (domainArray==null) {
             return Msg;
           }

           /* Now we need to break up the domain to get a count of how many atoms
              it consists of. */
           var atomPat=new RegExp(atom,"g")
           var domArr=domain.match(atomPat)
           var len=domArr.length
           if (domArr[domArr.length-1].length<2 || 
               domArr[domArr.length-1].length>3) {
              // the address must end in a two letter or three letter word.
              return Msg;
           }

           // Make sure there's a host name preceding the domain.
           if (len<2) {
              return Msg;
           }
       }

       return "";
   }

//function viewHelp(sUrl) { windows.open(sURL) }