  function movePlaceholder(e) {
      var tx = Event.pointerX(e) + 16;
      var ty = Event.pointerY(e) - 32;
      p = $('placeholder');
      p.style.left = tx + "px";
      p.style.top  = ty + "px";
  }
  var placeholder_random = parseInt(Math.random()*1000000);
  function showPlaceholder(e) {   
      p = $('placeholder');
      p.style.display = "block";
      img = Event.element(e);
      p.innerHTML = '<div>'+'<img src="'+img.src.replace(/\/[^\/]*$/, "/320.jpg?"+ placeholder_random )+'">'+'<br />'+img.alt+'</div>';
  }   
  function hidePlaceholder(e) {   
      p = $('placeholder');
      p.style.display = "none";
  }   
  function initializePlaceHolder() {
    var e=document.getElementsByTagName('img');
    for (var i=0;i<e.length;i++) {
      if (e[i].className=='thumb') {
        Event.observe( e[i], 'mousemove', movePlaceholder);
        Event.observe( e[i], 'mouseout', hidePlaceholder);
        Event.observe( e[i], 'mouseover', showPlaceholder);
      }
    }
//    Event.observe( $('placeholder'), 'mouseover', movePlaceholder);
  }

  if (window.addEventListener) { //for W3C DOM
    window.addEventListener("load", initializePlaceHolder, false);
  } else if (window.attachEvent) { //for IE
    window.attachEvent("onload", initializePlaceHolder);
  } else  {
    window.onload = initializePlaceHolder;
  }

  var tooltips = new Array();
  var tooltips_for_class = new Array();
  var tooltip_obj = null;

  function moveTooltip(e) {   
    var tx = Event.pointerX(e) + 16;
    var ty = Event.pointerY(e) - 32;
    tooltip_obj.style.left = tx + "px";
    tooltip_obj.style.top  = ty + "px";
  }
  function showTooltip(e) {   
      elem = Event.element(e);
      tooltip_obj.innerHTML = tooltips[elem.id];
      var tx = Event.pointerX(e) + 16;
      var ty = Event.pointerY(e) - 32;
      if(tx<0)tx=0;
      if(tx>=window.right-120)tx=window.right-120;
      if(ty<0)ty=0;
      if(ty>=window.bottom-24)tx=window.bottom-24;
      tooltip_obj.style.left = tx + "px";
      tooltip_obj.style.top  = ty + "px";
      tooltip_obj.style.display = "block";
  }
  function showTooltipForClass(e) {   
      elem = Event.element(e);
      tooltip_obj.innerHTML = "";
      class_array = $w(elem.className);
      for(var i=0; i<class_array.length; i++)
      {
        if (tooltips_for_class[class_array[i]])
        {
          tooltip_obj.innerHTML = tooltip_obj.innerHTML + tooltips_for_class[class_array[i]];
          var tx = Event.pointerX(e) + 16;
          var ty = Event.pointerY(e) - 32;
          if(tx<0)tx=0;
          if(tx>=window.right-120)tx=window.right-120;
          if(ty<0)ty=0;
          if(ty>=window.bottom-24)tx=window.bottom-24;
          tooltip_obj.style.left = tx + "px";
          tooltip_obj.style.top  = ty + "px";
          tooltip_obj.style.display = "block";
        }
      }
  }
  function hideTooltip(e) {   
      tooltip_obj.style.display = "none";
  }
  function initializeTooltip() {
    var el=document.getElementsByTagName('dl');
    tooltip_obj = $('tooltip');
    for (var i=0;i<el.length;i++){
      if(el[i].className=='tooltips'){
        id = el[i].getElementsByTagName('dt')[0].innerHTML;
        target = $(id);
        if (target)
        {
          Event.observe( target, 'mousemove', moveTooltip);
          Event.observe( target, 'mouseout',  hideTooltip);
          Event.observe( target, 'mouseover', showTooltip);
          tooltips[id] = el[i].getElementsByTagName('dd')[0].innerHTML;
        }
      }
      else if(el[i].className=='tooltips_for_class'){
        id = el[i].getElementsByTagName('dt')[0].innerHTML;
        elements = document.getElementsByClassName(id);
        if (elements)
        {
          for (var j=0;j<elements.length;j++){
            Event.observe( elements[j], 'mousemove', moveTooltip);
            Event.observe( elements[j], 'mouseout',  hideTooltip);
            Event.observe( elements[j], 'mouseover', showTooltipForClass);
          }
          tooltips_for_class[id] = el[i].getElementsByTagName('dd')[0].innerHTML;
        }
      }
    }
  }

  if (window.addEventListener) { //for W3C DOM
    window.addEventListener("load", initializeTooltip, false);
  } else if (window.attachEvent) { //for IE
    window.attachEvent("onload", initializeTooltip);
  } else  {
    window.onload = initializeTooltip;
  }


