 var timeOn = null;
 var check = false;
 function init(FABTab,SubNav) {

   if (document.layers) {
     //Netscape 4
     layerRef="document.layers";
     styleSwitch="";
     visibleVar="show";
     what ="ns4";
   } else if (document.all) {
     //Running IE
     layerRef="document.all";
     styleSwitch=".style";
     visibleVar="visible";
     what ="ie";
   } else if (document.getElementById) {
     //Netscape 6
     layerRef="document.getElementById";
     styleSwitch=".style";
     visibleVar="visible";
     what="moz";
   } else {
     //Older than 4.0 browser
     what="none";
     newbrowser = false;
   }

   check = true;
   //resetSubNav(SubNav);
   if (FABTab != 0) {
     showFAB(FABTab);
   }
 }

 function showFAB(navNbr) {
   turnAllFABOff();

   if(check){
     if (what =="none") {
       return;
     } else if (what == "moz") {
       //.hd li.on em
       //turn active tab on
       var className;
       className = document.getElementById("fabtabs").getElementsByTagName("li")[navNbr-1].className.replace("off", "on");
       document.getElementById("fabtabs").getElementsByTagName("li")[navNbr-1].className = className;
       className = document.getElementById("fab"+navNbr).className.replace("hide", "show");
       document.getElementById("fab"+navNbr).className = className;
     } else {
       //.hd li.on em
       //turn active tab on
       var className;
       className = document.getElementById("fabtabs").getElementsByTagName("li")[navNbr-1].getAttribute("className").replace("off", "on");
       document.getElementById("fabtabs").getElementsByTagName("li")[navNbr-1].setAttribute("className", className);
       document.getElementById("fab"+navNbr).setAttribute("className", "show"); //error?
     }
   } else {
     return;
   }
 }

 function turnFABOff(navNbr) {
   if(check){
     if (what =="none"){
       return;
     } else if (what == "moz") {
       //.hd li.off em
       var className;
       className = document.getElementById("fabtabs").getElementsByTagName("li")[navNbr-1].className.replace("on", "off");
       document.getElementById("fabtabs").getElementsByTagName("li")[navNbr-1].className = className;
       className = document.getElementById("fab"+navNbr).className.replace("show", "hide");
       document.getElementById("fab"+navNbr).className = className;
     } else {
       var className;
       className = document.getElementById("fabtabs").getElementsByTagName("li")[navNbr-1].getAttribute("className").replace("on", "off");
       document.getElementById("fabtabs").getElementsByTagName("li")[navNbr-1].setAttribute("className", className);
       document.getElementById("fab"+navNbr).setAttribute("className", "hide");
     }
   }
 }

 function turnAllFABOff() {
   var obj = document.getElementById("fabtabs").getElementsByTagName("li");
   for (var i=1; i<=obj.length; i++) {
     turnFABOff(i.toString());
   }
 }

function vote() {
  var respOK = false;

   for (var i=0; i < document.poll.answer.length; i++) {
      if (document.poll.answer[i].checked) {
      respOK = true;
      break;
    }
   }

  if (respOK == true) {
      document.poll.submit();
  } else {
    alert("Please select the answer for which you wish to vote.");
  }
}

 function redirCruiseAdvancedSearch() {
   objForm1 = document.CruiseSearchForm;
   objForm2 = document.CruiseForm2;

   if (objForm1 != null && objForm2 != null) {
     objForm2.RegionID.value = objForm1.RegionID.value;
     objForm2.ShipId.value = objForm1.ShipId.value;
     objForm2.DPortId.value = objForm1.DPortId.value;
     objForm2.VPortId.value = objForm1.VPortId.value;
     objForm2.MinDay.value = objForm1.MinDay.value;
     objForm2.MaxDay.value = objForm1.MaxDay.value;
     objForm2.Month.value = objForm1.Month.value;
     objForm2.LineID.value = objForm1.LineID.value;
     objForm2.Length.value = objForm1.Length.value;
   }

   objForm2.submit();
 }

 function redirResortAdvancedSearch() {
   objForm = document.ResortSearchForm;
   objForm.submit();
 }

  function setRiverSearchFormAction(objForm) {
    var val = objForm.SearchID[objForm.SearchID.selectedIndex].value;

    if (val == "662") objForm.action ="http://www.EuropeanRiverCruises.com/danube_cruise_deals.cfm";
    else if (val == "675") objForm.action = "http://www.EuropeanRiverCruises.com/dnieper_cruise_deals.cfm";
    else if (val == "666") objForm.action = "http://www.EuropeanRiverCruises.com/douro_cruise_deals.cfm";
    else if (val == "667") objForm.action = "http://www.EuropeanRiverCruises.com/elbe_cruise_deals.cfm";
    else if (val == "668") objForm.action = "http://www.EuropeanRiverCruises.com/mosel_cruise_deals.cfm";
    else if (val == "670") objForm.action = "http://www.EuropeanRiverCruises.com/oder_cruise_deals.cfm";
    else if (val == "671") objForm.action = "http://www.EuropeanRiverCruises.com/po_cruise_deals.cfm";
    else if (val == "665") objForm.action = "http://www.EuropeanRiverCruises.com/rhine_cruise_deals.cfm";
    else if (val == "672") objForm.action = "http://www.EuropeanRiverCruises.com/rhone_cruise_deals.cfm";
    else if (val == "673") objForm.action = "http://www.EuropeanRiverCruises.com/saone_cruise_deals.cfm";
    else if (val == "674") objForm.action = "http://www.EuropeanRiverCruises.com/seine_cruise_deals.cfm";
    else if (val == "676") objForm.action = "http://www.EuropeanRiverCruises.com/volga_cruise_deals.cfm";
    else if (val == "1") objForm.action = "http://www.EuropeanRiverCruises.com/germany_river_cruises.cfm";
    else if (val == "2") objForm.action = "http://www.EuropeanRiverCruises.com/france_river_cruises.cfm";
    else if (val == "3") objForm.action = "http://www.EuropeanRiverCruises.com/russia_river_cruises.cfm";
    else if (val == "M") objForm.action = "http://www.mississippirivercruises.com/river_cruise_ticker.cfm";
    else if (val == "N") objForm.action = "http://www.nilerivercruise.com/egypt_nile_cruise_deals.cfm";
    else if (val == "Y") objForm.action = "http://www.yangtzerivercruises.com/yangtze_cruise_deals.cfm";
    else objForm.action = "http://www.EuropeanRiverCruises.com/european_river_cruises.cfm";

  }

  function submitRiverSearch() {
    objForm = document.RiverSearchForm;
    setRiverSearchFormAction(objForm);
    objForm.submit();
  }

 function highlightElement(id) {
   if(check){
     if (what =="none"){
       return;
     } else if (what == "moz") {
       //.hd li.off em
       if (document.getElementById(id).className != null) {
         var className = document.getElementById(id).className.replace("off", "on");
         document.getElementById(id).className = className;
       }
     } else {
       var className = document.getElementById(id).getAttribute("className").replace("off", "on");
       document.getElementById(id).setAttribute("className", className);
     }
   }
   //alert(id + ' "' + className + '"');
 }

  function unhighlightElement(id) {
  /* */
   if(check){
     if (what =="none"){
       return;
     } else if (what == "moz") {
       //.hd li.off em
      if (document.getElementById(id).className != null) {
        var className = document.getElementById(id).className;
        if (className.indexOf("on") != -1) {
          className = className.replace("on", "off");
        } else {
           if (className.indexOf("off") == -1) {
            className = className + " off";
          }
        }
        document.getElementById(id).className = className;
      }
    } else {
        var className = document.getElementById(id).getAttribute("className");
        if (className.indexOf("on") != -1) {
          className = className.replace("on", "off");
        } else {
          if (className.indexOf("off") == -1)  {
            className = className + " off";
          }
        }
        document.getElementById(id).setAttribute("className", className);
     }
   }
 }

  function subscribe() {
    //Make sure that all fields have been filled in.
    var formObj = document.subonline;
    var formOK = true;

    for (x = 0; x < formObj.length; x++) {
      var elemObj = formObj.elements[x];
      if (elemObj.type != "hidden") {
        unhighlightElement(elemObj.name);
      }
      if ((elemObj.type == "text" || elemObj.type == "select-one") && elemObj.name != "Code" && elemObj.name != "BillAddress2" && elemObj.name != "MailAddress2" && elemObj.value=="") {
        if (elemObj.name.indexOf("Mail") != 0 || (formObj.Same == undefined || formObj.Same.checked == false)) {
          highlightElement(elemObj.name);
          formOK = false;
        }
      }
      if (elemObj.type == "radio") {
        var radioOK = false;
        var radioElem = formObj[elemObj.name];
        for (var i=0; i < radioElem.length; i++) {
          if (radioElem[i].checked) {
            radioOK = true;
            break;
          }
        }
        if (radioOK == false) {
          highlightElement(elemObj.name);
          formOK = false;
        }
      }
    }

    if (formOK == true) {
        formObj.submit();
    } else {
      alert ("It appears your subscription request is missing some important information.");
    }
  }

function freetrial() {
//Make sure that all fields have been filled in.
  var formObj = document.freetrial;
  var respOK = true;

  for (x = 0; x < formObj.length; x++) {
    var elemObj = formObj.elements[x];

    if (elemObj.type != "hidden") {
      unhighlightElement(elemObj.name);
    }

    if (elemObj.type != "hidden" && elemObj.value=="" && elemObj.name != "FTMName" && elemObj.name != "FTAddress2" && elemObj.name != "MName" && elemObj.name != "Address2") {
      highlightElement(elemObj.name);
      respOK = false;
    }
  }

  var emailOK = true;
  if (respOK == true && formObj.Email) {
    var str = formObj.Email.value;
    if ((str.indexOf(".") <= 2) || (str.indexOf("@") <= 0)) {
      emailOK = false;
      respOK = false;
      highlightElement("Email");
    }
  }
  if (respOK == true && formObj.FTEmail) {
    var str = formObj.FTEmail.value;
    if ((str.indexOf(".") <= 2) || (str.indexOf("@") <= 0)) {
      emailOK = false;
      respOK = false;
      highlightElement("FTEmail");
    }
  }

  if (respOK == true) {
      formObj.submit();
  } else {
    if (emailOK == false) {
      alert ("Please provide a complete email address that we may use to contact you, e.g., yourname@aol.com.");
    } else {
      alert("It appears your request for a free trial is missing some important information.");
    }
  }
}

  function cyclecalc() {
    //Make sure that all fields have been filled in.
    var formObj = document.fgform;
    var formOK = true;

    for (x = 0; x < formObj.length; x++) {
      var elemObj = formObj.elements[x];
      if (elemObj.type != "hidden") {
        unhighlightElement(elemObj.name);
      }
      if (elemObj.value=="") {
        highlightElement(elemObj.name);
        formOK = false;
      }
    }

    if (formOK == true) {
        formObj.submit();
    } else {
      alert ("It appears your form is missing some important information.");
    }
  }

  function advertise() {
    //Make sure that all fields have been filled in.
    var formObj = document.advertise;
    var formOK = true;

    for (x = 0; x < formObj.length; x++) {
      var elemObj = formObj.elements[x];
      if (elemObj.type != "hidden") {
        unhighlightElement(elemObj.name);
      }
      if ((elemObj.type == "text" || elemObj.type == "select-one") && elemObj.name != "AdvAddress2" && elemObj.value=="") {
        highlightElement(elemObj.name);
        formOK = false;
      }
      if (elemObj.type == "radio") {
        var radioOK = false;
        var radioElem = formObj[elemObj.name];
        for (var i=0; i < radioElem.length; i++) {
          if (radioElem[i].checked) {
            radioOK = true;
            break;
          }
        }
        if (radioOK == false) {
          highlightElement(elemObj.name);
          formOK = false;
        }
      }
    }

    var emailOK = true;
    if (formOK == true) {
      var str = formObj.AdvEmail.value;
      if ((str.indexOf(".") <= 2) || (str.indexOf("@") <= 0)) {
        emailOK = false;
      }
    }

    var phoneOK = true;
    if (formOK == true) {
      var str = formObj.AdvPhone.value.toString();
      if (str.length < 10) {
        phoneOK = false;
      }
    }

    if (emailOK == false && phoneOK == false) {
      highlightElement("AdvEmail");
      highlightElement("AdvPhone");
      alert ("Please provide a valid phone number and email address that we can use to contact you.");
      return;
    }

    if (emailOK == false) {
      highlightElement("AdvEmail");
      alert ("Please provide a complete email address that we may use to contact you, e.g., yourname@aol.com.");
      return;
    }

    if (phoneOK == false) {
      highlightElement("AdvPhone");
      alert ("Please provide a valid phone number that we may use to contact you, including area code.");
      return;
    }

    if (formOK == true) {
      formObj.submit();
    } else {
      alert ("It appears your request for a media kit is missing some important information.");
    }
  }

  function sendfriend() {
    //Make sure that all fields have been filled in.
    var formObj = document.sendfriend;
    var formOK = true;

    for (x = 0; x < formObj.length; x++) {
      var elemObj = formObj.elements[x];
      if (elemObj.type != "hidden") {
        unhighlightElement(elemObj.name);
      }
      if (elemObj.type == "text" && elemObj.value=="") {
        highlightElement(elemObj.name);
        formOK = false;
      }
    }

    if (formOK == true) {
      var str = formObj.SendEmail.value;
      if ((str.indexOf(".") <= 2) || (str.indexOf("@") <= 0)) {
        highlightElement(formObj.SendEmail.name);
        alert ("Please provide your complete email address, e.g., yourname@aol.com.");
        return;
      }
    }

    if (formOK == true) {
      var str = formObj.FriendEmail.value;
      if ((str.indexOf(".") <= 2) || (str.indexOf("@") <= 0) || (str.indexOf(",") != -1) || (str.indexOf(";") != -1)) {
        highlightElement(formObj.FriendEmail.name);
        alert ("Please provide your friend's complete email address, e.g., yourfriendsname@aol.com.");
        return;
      }
    }

    if (formOK == true) {
      formObj.submit();
    } else {
      alert ("It appears your form is missing some important information.");
    }
  }
    function addrchange() {
    //Make sure that all fields have been filled in.
    var formObj = document.subonline;
    var formOK = true;

    for (x = 0; x < formObj.length; x++) {
      var elemObj = formObj.elements[x];
      if (elemObj.type != "hidden") {
        unhighlightElement(elemObj.name);
      }
      if ((elemObj.type == "text" || elemObj.type == "select-one") && elemObj.name != "Code"
        && elemObj.name != "OldMName" && elemObj.name != "MName"
        && elemObj.name != "OldAddress2" && elemObj.name != "Address2" && elemObj.value=="") {
        if (elemObj.name.indexOf("Mail") == -1 || formObj.Same.checked == false) {
          highlightElement(elemObj.name);
          formOK = false;
        }
      }
      if (elemObj.type == "radio") {
        var radioOK = false;
        var radioElem = formObj[elemObj.name];
        for (var i=0; i < radioElem.length; i++) {
          if (radioElem[i].checked) {
            radioOK = true;
            break;
          }
        }
        if (radioOK == false) {
          highlightElement(elemObj.name);
          formOK = false;
        }
      }
    }

    if (formOK == true) {
        formObj.submit();
    } else {
      alert ("It appears your address change request is missing some important information.");
    }
  }

  function SearchGoogle() {
    document.SearchForm.q.value=document.aspnetForm.q2.value;
    document.SearchForm.submit();
  }