// Copyright 2000 Syvum Technologies Inc.
// http://www.syvum.com
//
// This script is confidential and proprietary information of
// Syvum Technologies Inc., protected by international copyright law.
// Do not copy or use other than as specified in your license agreement
// with Syvum Technologies Inc.

function getCookie(x) { var ci = 0; var clen = x.length; var tclen = document.cookie.length; while (ci < tclen) { cj = ci + clen; if (document.cookie.substring(ci,cj) == x) { ce = document.cookie.indexOf(";", cj); if (ce == -1) ce = tclen; return document.cookie.substring(cj+1,ce); } ci++; } return "";
      }

//alert('hidelogo is ' + hidelogo + ' and singleAction is ' + test);

if (parseFloat(navigator.appVersion) < 4 
    || (navigator.appName!="Microsoft Internet Explorer" 
        && navigator.appName!="Netscape"))
{
}
else if (navigator.appVersion.indexOf("Mac") == -1)
{
var hidelogo = getCookie("hideLogo");

var visib = "hidden";
var onmtext = ' onmouseover="showMenu()" ';
var lookuptext = "";

if (navigator.appName == "Netscape")
{
  window.captureEvents(Event.MOUSEUP);
  window.onMouseUp = syvumAuto;
  visib = "hide";
  onmtext = " ";
  lookuptext = '<a href="#" onmousedown="return syvumPrevSel()" style="color:black; background:white;"><font face=arial size=-2>Lookup</font></a><br>&nbsp; &nbsp;';
}
else
{
  document.body.onmouseup = syvumAuto;
  document.body.onkeypress = syvumCheckKey;
}

var prevword = "";
  //alert("loading script 40 ");
    var syvtext = '<form name=syvum_click_form action="http://www.syvum.com/cgi/click/click.cgi" method=post target="syvum_click"><input type=hidden name=selstr value=""><input type=hidden name=option value="null"><input type=hidden name=location value="null"></form>';

  if (hidelogo == "yes")
    {
    }
  else
    {
      syvtext = '<div class="dlogo" ID="dlogo" style="position:absolute;top:1;visibility:' + visib + ';" zIndex="1000" align="right">' + lookuptext + '<a href="http://www.syvum.com/dict/whatis.html"' + onmtext + '><img src="http://www.syvum.com/images/dlogo.gif" alt="SyvumClick (TM) Dictionary" border=0></a></div>' + syvtext;
    }
 
  if (navigator.appName == "Netscape")
    {
      //alert("still loading ");
      if (hidelogo == "yes")
        {
          document.writeln(syvtext);
        }
      else
        {
          document.writeln('<div class="smenu" ID="smenu" style="position:absolute;top:1;visibility:' + visib + ';" zIndex="1001"> </div>' + syvtext);
        }
    }
  else
    {
      //alert("still loading ");
      if (hidelogo == "yes")
        {
          document.writeln(syvtext);
        }
      else
        {
          document.writeln('<div class="smenu" ID="smenu" style="position:absolute;top:1;visibility:' + visib + ';" zIndex="1001"><table width=100 height=100 border=0 cellspacing=0 cellpadding=0><tr><td align=right valign=bottom><table border=0 cellspacing=1 cellpadding=0 bgcolor=black><tr><td><table cellspacing=1 border=0 cellpadding=1 bgcolor=silver><tr><td align=right><a href="#" onmousedown="return hideMenu()"><font face=arial size="-2" color=black>Hide</font></a></td></tr><tr><td><a href="#" onmousedown="return syvumPrevSel()"><font color=black face=arial size=-1>Lookup</font></a></td></tr><tr><td><a href=http://www.syvum.com/dict/whatis.html><font color=black face=arial size=-1>What is this?</font></a></td></tr><tr><td><a href="#" onmousedown="return editSyvumPrefs()"><font color=black face=arial size=-1>Preferences</font></a></td></tr></table></td></tr></table></td></tr></table></div>' + syvtext);
        }
    }


  if (hidelogo == "yes")
    {
    }
  else
    {
      timevar = setInterval("showdlogo()",100);
    }
  //alert("done writing");

var force = 0;
var menuvar;

} 

function syvumCheckKey()
{
  if (window.event.keyCode == 10)
    {
      syvumForce();
      return false;
    }
  return true;
}

function editSyvumPrefs()
{
   hideMenu();
   window.open("http://www.syvum.com/cgi/click/prefs.cgi?no","prefs","status,scrollbars,height=350,width=500,top=125,left=150,screenX=150,screenY=125");
   return false;
}

function syvumAuto()
{
  force = 0;
  selectWord();
}

function syvumForce()
{
  force = 1;
  selectWord();
}

function syvumPrevSel()
{
  hideMenu();
  force = 1;
  selectWord();
  return false;
}

function selectWord() 
{
  var str;
  if (document.getSelection)
    {
      str = document.getSelection();
    }
  else if (document.selection && document.selection.createRange)
    {
      if (document.activeElement.tagName == "INPUT" || document.activeElement.tagName == "TEXTAREA" )
        {
           return;
        }

      var range = document.selection.createRange();
      str = range.text;
    }
  else
    {
      return;
    }

  if (str == "" || str == " ") 
    {
      if (force == 1)
        {
          if (document.all)
            {
              str = prompt("Please enter text to lookup using SyvumClick", "");
              if (str == null || str == "" || str == " ") 
                {
                  prevword = "";
                  return;
                }
            }
          else
            {
              prevword = "";
              alert ("Please select (mark/highlight) the text to lookup first.");
              return;
            }
        }
      else
        {
          prevword = "";
          return;
        }
    }

  while (str.indexOf(" ", 0) == 0)
    {
      str = str.substring(1, str.length);
    }

  while (str.indexOf("\n", 0) == 0)
    {
      str = str.substring(1, str.length);
    }

  while (str.indexOf(" ", 0) == str.length - 1)
    {
      str = str.substring(0, str.length - 1);
    }

  while (str.indexOf("\n", 0) == str.length - 1)
    {
      str = str.substring(0, str.length - 1);
    }

  trigger = 0;
  if (force == 1)
    {
      if (str.length > 1)
        {
          trigger = 1;
        }
      force = 0;
    }
  else
    {
      if (str.length> 1)
        {
          if (str.indexOf(" ", 0) >= 0 || str.indexOf("\n") >= 0)
            {
              prevword = str;
            }
          else if (str != prevword)
            {
              trigger = 1;	  
            }
        }
    }

  if (trigger == 1)
  {
    prevword = str;
    var windowname = "syvum_click";
    window.document.syvum_click_form.target = windowname;
    var w = window.open("http://www.syvum.com/click/main.html","syvum_main","status,scrollbars,height=500,width=770,top=0,left=0,screenX=0,screenY=0");
    w.focus();
    window.document.syvum_click_form.selstr.value = str;
    window.document.syvum_click_form.location.value = location.href;
  }
}

function showdlogo() {
  if (!dl)
    {
      var dl;
      if(navigator.appName == "Netscape") 
        {
          dl = eval("document.dlogo");
        }
  
      if (navigator.appVersion.indexOf("MSIE") != -1)
        {
          dl = document.all.dlogo;
        }

      if (dl)
        {
          dl.onmouseover = setwst1;
          dl.onmouseout = setwst2;
        }
    }

  if (dl)
  {
    if(navigator.appName == "Netscape") 
    {
      dl.top = (window.innerHeight+window.pageYOffset-54);
      dl.left = (window.innerWidth+window.pageXOffset-58);
      dl.visibility = "show";
    }
    else if (navigator.appVersion.indexOf("Mac") == -1)
    {
      dl.style.top = (document.body.clientHeight+document.body.scrollTop-39);
      dl.style.left =(document.body.clientWidth+document.body.scrollLeft-41);
      dl.style.visibility = "visible";
      dl.style.display = "block";
    }
  }
  else
  {
    //clearInterval(timevar);
  }
}

function showMenu() {
  if (!SyvumMenu)
    {
      var SyvumMenu;
      SyvumMenu = document.all.smenu;
    }

  if (SyvumMenu)
  {
      SyvumMenu.style.top = (document.body.clientHeight+document.body.scrollTop-139);
      SyvumMenu.style.left =(document.body.clientWidth+document.body.scrollLeft-120);
      SyvumMenu.style.visibility = "visible";
      SyvumMenu.style.display = "block";
      SyvumMenu.onmouseleave = hideMenu;
      SyvumMenu.onmouseover = showMenu;
      SyvumMenu.onscroll = hideMenu;
      clearInterval(menuvar);
      menuvar = setInterval("hideMenu()",10000);
  }
  else
  {
    //clearInterval(menuvar);
  }
}

function hideMenu() {
  if (!SyvumMenu)
    {
      var SyvumMenu;
      if(navigator.appName == "Netscape") 
        {
          SyvumMenu = eval("document.smenu");
        }
  
      if (navigator.appVersion.indexOf("MSIE") != -1)
        {
          SyvumMenu = document.all.smenu;
        }
    }

  if (SyvumMenu)
  {
    if(navigator.appName == "Netscape") 
    {
      SyvumMenu.visibility = "hide";
    }
    else if (navigator.appVersion.indexOf("Mac") == -1)
    {
      SyvumMenu.style.visibility = "hidden";
      SyvumMenu.style.display = "none";
    }
  }

  clearInterval(menuvar);

  if (timevar)
    clearInterval(timevar);

  timevar = setInterval("showdlogo()",100);
  return false;
}

function setwst1()
{
  window.status = "Double-click or mark any word to look it up";
  return true;
}

function setwstMenu1()
{
  window.status = "Visit SyvumClick home";
  return true;
}

function setwstMenu2()
{
  window.status = "Edit your SyvumClick preferences";
  return true;
}

function setwstMenu3()
{
  window.status = "Enable your browser with SyvumClick";
  return true;
}

function setwst2()
{
  window.status = "";
  return true;
}

