 IE4 = (document.all) ? 1 : 0;  // Or IE4+
 NS4 = (document.layers) ? 1 : 0;
 ver4 = (IE4 || NS4) ? 1 : 0;

// alert (navigator.appVersion);
 Gecko = (navigator.product == 'Gecko');
  NS4 = NS4 || Gecko;
  ver4 = ver4 || Gecko;
if (ver4)
{
//  alert ("Good browser");
  whichIm = null;
  Zoom_Im = "";
  useName = "imZ";
  Images = new Array (40);
  Img = new Array (40);
  Ix = 0;
  Time_Id = 0;
  Find_Images ();
  Find_Links ();
}

function Find_Images ()
{
  for (i = 0; i < document.images.length; i++)
  {
    Im = document.images [i];
    if (Im.name.indexOf (useName) != -1)
    {
//alert (Im.name);
      Img [Im.name] = new Image ();
      Img [Im.name].src = Im.src.substring (0, Im.src.length - 5) + "b.gif";
      if (NS4)
      {
//        document.images [i].onMouseOver = Zoom_In;
        Images [Ix++] = document.images [i];
      } 
      else
      {
        document.images [i].onmouseover = Zoom_In;
      }
    }
  }
}

function Find_Links ()
{
  for (i = 0; i < document.links.length; i++)
  {
    Link = document.links [i];
    Link.onMouseOver = Zoom_In;
  }
}

function Zoom_In (Ev)
{
  clearTimeout (Time_Id);
  if (NS4 || Gecko)
  {
//alert ("here " + Ev.target);
    if (Ev.target == "[object Image]")
    {
//alert ("here 2");
      whichIm = Ev.target;
      gotIt = true;
    }
    else
    {
      gotIt = getImage (Ev.pageX, Ev.pageY);
    }
    if (!gotIt) return;
  }
  else
  {
    whichIm = event.srcElement;
  }

//alert (Zoom_Im + " " + whichIm.name);
  if (Zoom_Im != whichIm.name)
  {
if (0)
{
    newWidth  = 191;
    newHeight = 92;
    bigSrc = whichIm.src.substring (0, whichIm.src.length - 5) + "b.gif";
    TheLink = Link [whichIm.name];
    Map = '<MAP NAME="Stuga_Map"><AREA SHAPE="RECT" COORDS="0,0,102,49" HREF="' + TheLink + '" ONMOUSEOUT="Start_Timer()"></MAP>';
//    bigImStr = '<IMG NAME="imBig" SRC="' + bigSrc + '" WIDTH="' + newWidth + '" HEIGHT="' + newHeight + '" BORDER="0" USEMAP="#Stuga_Map">' + Map;
    bigImStr = '<IMG NAME="imBig" SRC="images/trans.gif" WIDTH="' + newWidth + '" HEIGHT="' + newHeight + '" BORDER="0" USEMAP="#Stuga_Map">' + Map;
//alert (bigImStr);    
}
    if (NS4)
    {
if (0)
{
      with (document.elZoom.document)
      {
        open ();
        write (bigImStr);
        close ();
      }
}     
//alert (Img [whichIm.name].src);
// no ok      document.elZoom.document.images ["imBig"].Alt = "HEJ";
      document.elZoom.document.images ["imBig"].src = Img [whichIm.name].src;
      TheLink = Link [whichIm.name];
      document.elZoom.document.links [0].href = TheLink;
      document.elZoom.moveTo(whichIm.x ,whichIm.y);
      winPosL = document.elZoom.left - pageXOffset;
      winPosT = document.elZoom.top - pageYOffset;
    }
    else
    { 
      El = event.srcElement;
      X = 0; 
      Y = 0;
      while (El)
      {
        X += El.offsetLeft;
        Y += El.offsetTop;
        if (El.tagName == "TABLE")
        {
          Xpos = X;
          Ypos = Y;
        }
        El = El.parentElement;
      }
//      elZoom.innerHTML = bigImStr;
      TheLink = Link [whichIm.name];
//alert (document.links [document.links.length - 2].id);
      for (i = 0; i < document.links.length; i++)
      {
        if (document.links [i].id == "Map_Ref")
        {
          document.links [i].href = TheLink;
          break;
        }
      }
//IE5      document.elZoom.images ["imBig"].src = Img [whichIm.name].src;
//IE5      document.elZoom.style.pixelLeft = Xpos;
//IE5      document.elZoom.style.pixelTop = Ypos;
      document.all.elZoom.document.images ["imBig"].src = Img [whichIm.name].src;
     document.all.elZoom.style.pixelLeft = Xpos;
     document.all.elZoom.style.pixelTop = Ypos;
      winPosL = elZoom.offsetLeft - document.body.scrollLeft;
      winPosT = elZoom.offsetTop - document.body.scrollTop;
    }

if (NS4)  // or IE4
{
    document.elZoom.visibility = "visible";
}
else
{
    elZoom.style.visibility = "visible";  //IE5
}
    Zoom_Im = whichIm.name;
  }
}

function Zoom_Out (Ev)
{
// alert ("Out");
if (NS4 || Gecko)  // or IE4
{
    document.elZoom.visibility = "hidden";
}
else
{
    elZoom.style.visibility = "hidden";  //IE5
}

  Zoom_Im = "";
}

function Start_Timer ()
{
// alert ("Timer");
  Time_Id = setTimeout ('Zoom_Out ()', 400);
}

function getImage (l, t)
{
//alert ("GetImage " + l + " " + t);
  gotIt = false;
  for (i = 0; i < Ix; i++)
  {
    imX1 = Images[i].x;
    imX2 = imX1 + Images[i].width;
    imY1 = Images[i].y;
    imY2 = imY1 + Images[i].height;
//if (document.images [i].name == "Stuga_imZ")
{
// alert (t + " " + imY1 + " " + imY2);
}
    if ((l >= imX1 && l <= imX2) && (t >= imY1 && t <= imY2))
    {
      whichIm = Images [i];
// alert ("GOT IT " + whichIm.name);
      gotIt = true; 
      break;
    } 
  } 
  return gotIt    
}

if (ver4)
{
//  document.write("<DIV ID='elZoom' STYLE='position: absolute; left:0; top:0; visibility: hiddden;'></DIV>");
  if (IE4)
  {
//IE4    document.elZoom = document.all.elZoom.style;
//IE4    elZoom.visibility = "hidden";
//IE5test    document.elZoom.visibility = "hidden";
  }
}

