/**
 *  Contents
 *    global vars
 *    validateSearch(form, inputValue)
 *    outSearch(form, id)
 *    overSearch(form, id)
 *    focusSearch(el, id)
 *    blurSearch(el, id, inputValue)
 *    text-size vars
 *    mTxtSize(id, size)
 *    txtSize(size)
 *    swapImg(id, img)
 *    showMenu(id)
 *    hideMenu(id)
 *    hideAll()
 *    startHideAllTimer()
 *    stopHideAllTimer()
 *    doMouseOverBtn(imgId, imgOver, imgOut, divId)
 *    doMouseOutBtn(id, img)
 *    submenu vars
 *    icon vars
 *    parseGet(key)
 */

// Initialized explicitly.

window.hasFlash = false;

// SEARCH FUNCTIONS

if (!updir) {
  var updir = "";
}

var searchHasFocus = false;

var searchBgOut = new Image(248, 22);
var searchBgOver = new Image(248, 22);
var findOut = new Image(51, 20);
var findOver = new Image(51, 20);

searchBgOut.src = updir + "imgs/bg_search_out.gif";
searchBgOver.src = updir + "imgs/bg_search_over.gif";
findOut.src = updir + "imgs/btn_find_out.gif";
findOver.src = updir + "imgs/btn_find_over.gif";

/**
 *  Stops submission if no text entered.
 *
 *  @param  {HTMLFormElement} form
 *  @param  {String} inputValue     default text displayed in search box
 */
function validateSearch(form, inputValue)
{
  if (form.search.value == "" || form.search.value == inputValue) {
    return false;
  }
  return true;
}

function outSearch(form, id)
{
  if (!searchHasFocus) {
    form.style.backgroundImage = 'url(' + searchBgOut.src + ')';
    document.getElementById(id).src = findOut.src;
  }
}

function overSearch(form, id)
{
  form.style.backgroundImage = 'url(' + searchBgOver.src + ')';
  document.getElementById(id).src = findOver.src;
}

function focusSearch(el, id)
{
  searchHasFocus = true;

  focusTxtInput(el);

  el.form.style.backgroundImage = 'url(' + searchBgOver.src + ')';
  document.getElementById(id).src = findOver.src;
}

function blurSearch(el, id, inputValue)
{
  searchHasFocus = false;

  blurTxtInput(el, inputValue);

  el.form.style.backgroundImage = 'url(' + searchBgOut.src + ')';
  document.getElementById(id).src = findOut.src;
}

function focusTxtInput(el)
{
  el.style.textAlign = "left";
  el.style.color = "black";
  el.value = "";
}

function blurTxtInput(el, inputValue)
{
  if (el.value == "") {
    el.style.textAlign = "center";
    el.style.color = "#939393";
    el.value = inputValue;
  }
}
// TEXT-SIZE FUNCTIONS

// text sizes
var NORMAL = 1;
var LARGER = 2;
var LARGEST = 3;

var currentTxtSize = NORMAL;
var txtsize1 = new Image(49, 17);
var txtsize2 = new Image(49, 17);
var txtsize3 = new Image(49, 17);

txtsize1.src = updir + "imgs/txtsize1.gif";
txtsize2.src = updir + "imgs/txtsize2.gif";
txtsize3.src = updir + "imgs/txtsize3.gif";

/**
 *  Changes the text-size image according to mouse over/out.
 *
 *  @param  {String} id     element id of text-size image
 *  @param  {int} size      1 of the three text sizes
 *  @type   void
 */
function mTxtSize(id, size)
{
  var el = document.getElementById(id);

  switch (size) {
    case NORMAL:
      el.src = txtsize1.src;
      break;

    case LARGER:
      el.src = txtsize2.src;
      break;

    case LARGEST:
      el.src = txtsize3.src;
      break;
  }
}

function txtSize(size)
{
  currentTxtSize = size;

  switch (size) {
    case NORMAL:
      document.getElementsByTagName("body")[0].style.fontSize = "0.9em";
      break;

    case LARGER:
      document.getElementsByTagName("body")[0].style.fontSize = "1.1em";
      break;

    case LARGEST:
      document.getElementsByTagName("body")[0].style.fontSize = "1.32em";
      break;
  }
}

// NAV BAR FUNCTIONS

var nav_lss_out = new Image(217, 26);
var nav_lss_over = new Image(217, 26);
var nav_xstop_out = new Image(139, 26);
var nav_xstop_over = new Image(139, 26);
var nav_stories_out = new Image(134, 26);
var nav_stories_over = new Image(134, 26);
var nav_right4u_out = new Image(148, 26);
var nav_right4u_over = new Image(148, 26);

nav_lss_out.src = updir + "imgs/nav_lss_out.gif";
nav_lss_over.src = updir + "imgs/nav_lss_over.gif";
nav_xstop_out.src = updir + "imgs/nav_xstop_out.gif";
nav_xstop_over.src = updir + "imgs/nav_xstop_over.gif";
nav_stories_out.src = updir + "imgs/nav_stories_out.gif";
nav_stories_over.src = updir + "imgs/nav_stories_over.gif";
nav_right4u_out.src = updir + "imgs/nav_right4u_out.gif";
nav_right4u_over.src = updir + "imgs/nav_right4u_over.gif";

var currentNavId;
var currentNavOut;

function swapImg(id, img)
{
  if (document.getElementById) {
    document.getElementById(id).src = img.src;
  }
  else if (document.all) {
    document.all[id].src = img.src;
  }
}

function showMenu(id)
{
  document.getElementById(id).style.visibility = "visible";
}

function hideMenu(id)
{
  document.getElementById(id).style.visibility = "hidden";
}

function hideAll()
{
  var els = false;
  
  if (currentNavId && currentNavOut) {
    swapImg(currentNavId, currentNavOut);
  }

  if (document.getElementById) {
    els = document.getElementsByTagName("div");
  }
  else if (document.all) {
    els = document.all.tags("div");
  }

  if (els) {
    for (var i = 0; i < els.length; i++) {
      if (els.item(i).className == "popup") {
        hideMenu(els.item(i).id);
      }
    }
  }
}

var timerId = null;
var timecount = 200;  // milleseconds

function startHideAllTimer()
{
  if (!timerId) {
    timerId = setTimeout("hideAll()", timecount);
  }
}

function stopHideAllTimer()
{
  if (timerId) {
    clearTimeout(timerId);
    timerId = null;
  }
}

function doMouseOverBtn(imgId, imgOver, imgOut, divId)
{
  stopHideAllTimer();
  hideAll();
  swapImg(imgId, imgOver);
  showMenu(divId);
  currentNavId = imgId;
  currentNavOut = imgOut;
}



function doMouseOutBtn(id, img)
{
  startHideAllTimer();
}

// SUBMENU IMAGES

var subm_lss_impact_out = new Image(237, 55);
var subm_lss_impact_over = new Image(237, 55);
var subm_lss_options_out = new Image(186, 55);
var subm_lss_options_over = new Image(186, 55);
var subm_lss_symptom_out = new Image(183, 55);
var subm_lss_symptom_over = new Image(183, 55);
var subm_lss_whatis_out = new Image(290, 55);
var subm_lss_whatis_over = new Image(290, 55);
var subm_right4u_find_out = new Image(263, 55);
var subm_right4u_find_over = new Image(263, 55);
var subm_right4u_info_out = new Image(379, 55);
var subm_right4u_info_over = new Image(379, 55);
var subm_right4u_question_out = new Image(254, 55);
var subm_right4u_question_over = new Image(254, 55);
var subm_xstop_clinical_out = new Image(158, 55);
var subm_xstop_clinical_over = new Image(158, 55);
var subm_xstop_consider_out = new Image(292, 55);
var subm_xstop_consider_over = new Image(292, 55);
var subm_xstop_faq_out = new Image(252, 55);
var subm_xstop_faq_over = new Image(252, 55);
var subm_xstop_how_out = new Image(194, 55);
var subm_xstop_how_over = new Image(194, 55);

subm_lss_impact_out.src = "imgs/subm_lss_impact_out.png";
subm_lss_impact_over.src = "imgs/subm_lss_impact_over.png";
subm_lss_options_out.src = "imgs/subm_lss_options_out.png";
subm_lss_options_over.src = "imgs/subm_lss_options_over.png";
subm_lss_symptom_out.src = "imgs/subm_lss_symptom_out.png";
subm_lss_symptom_over.src = "imgs/subm_lss_symptom_over.png";
subm_lss_whatis_out.src = "imgs/subm_lss_whatis_out.png";
subm_lss_whatis_over.src = "imgs/subm_lss_whatis_over.png";
subm_right4u_find_out.src = "imgs/subm_right4u_find_out.png";
subm_right4u_find_over.src = "imgs/subm_right4u_find_over.png";
subm_right4u_info_out.src = "imgs/subm_right4u_info_out.png";
subm_right4u_info_over.src = "imgs/subm_right4u_info_over.png";
subm_right4u_question_out.src = "imgs/subm_right4u_question_out.png";
subm_right4u_question_over.src = "imgs/subm_right4u_question_over.png";
subm_xstop_clinical_out.src = "imgs/subm_xstop_clinical_out.png";
subm_xstop_clinical_over.src = "imgs/subm_xstop_clinical_over.png";
subm_xstop_consider_out.src = "imgs/subm_xstop_consider_out.png";
subm_xstop_consider_over.src = "imgs/subm_xstop_consider_over.png";
subm_xstop_faq_out.src = "imgs/subm_xstop_faq_out.png";
subm_xstop_faq_over.src = "imgs/subm_xstop_faq_over.png";
subm_xstop_how_out.src = "imgs/subm_xstop_how_out.png";
subm_xstop_how_over.src = "imgs/subm_xstop_how_over.png";

// ICONS

var iconBookmark = new Image(21, 20);
var iconBookmarkOver = new Image(21, 20);
var iconEmail = new Image(21, 20);
var iconEmailOver = new Image(21, 20);
var iconPrint = new Image(21, 20);
var iconPrintOver = new Image(21, 20);

iconBookmark.src = "imgs/icon_bookmark.gif";
iconBookmarkOver.src = "imgs/icon_bookmark_over.gif";
iconEmail.src = "imgs/icon_email.gif";
iconEmailOver.src = "imgs/icon_email_over.gif";
iconPrint.src = "imgs/icon_print.gif";
iconPrintOver.src = "imgs/icon_print_over.gif";

/**
 *  Parses the get request string for the requested key.
 *
 *  @param  {String}  key   key value to search
 *  @return If key exists then its value else blank string
 *  @type   {String}
 */
function parseGet(key)
{
  var getArgs = location.search.substr(1).split("&");
  var arg;

  for (var i = 0; i < getArgs.length; i++) {
    try {
      arg = getArgs[i].split("=");

      if (arg[0].indexOf(key) != -1) {
        return arg[1];
      }
    }
    catch (e) {}
  }

  return "";
}

function makeBookmark(title, uri)
{
  if (window.sidebar) {
    window.sidebar.addPanel(title, uri, "");
  }
  else if (window.external) {
    window.external.AddFavorite(uri, title);
  }
}
