function showImage(what, e) {
  if (what == null) {
    $('hoverImage').hide();
    $('hoverImage').innerHTML = '';
    return;
  }
  
  if (!e)
    var e = window.event;
  
  if (e.pageX || e.pageY) {
    posx = e.pageX;
    posy = e.pageY;
  } else if (e.clientX || e.clientY) {
    posx = e.clientX + document.documentElement.scrollLeft;
    posy = e.clientY + document.documentElement.scrollTop;
  }
  
  var el = $('hoverImage');
  
  if (el.innerHTML.length == 0)
    el.innerHTML = '<img src="' + what.src.replace(/tn_/, "med_") + '" />';
  el.style.display = 'block';
  
  if (window.innerWidth > (posx + 5 + el.offsetWidth))
    el.style.left = posx + 5 + 'px';
  else
    el.style.left = posx - 5 - el.offsetWidth + 'px';
  
  // our scroll offset in the browser
  var sY = 0;
  
  if (document.scrollY)
    sY = document.scrollY;
  else if (document.documentElement.scrollTop)
    sY = document.documentElement.scrollTop;
  
  // so the bottom of the window is at:
  var bot = sY;
  if (window.innerHeight)
    bot = sY + window.innerHeight;
  else if (document.documentElement.clientHeight)
    bot = sY + document.documentElement.clientHeight;
  
  // move it!
  if (bot < (posy + 5 + el.offsetHeight))
    el.style.top = bot - el.offsetHeight + 'px';
  else
    el.style.top = posy + 5 + 'px';
}