function showPreview(className, id, type, refPrefix)
{
  var loadingDiv = getObj('previewLoadingDiv');
  var loadingImg = getObj('previewLoadingImg');
  var previewDiv = getObj('previewDiv');

  if ( refPrefix )
  {
    if ( typeof(G_previewPos) != 'undefined' )
      G_clickedImgPos = findPos(getObj(G_previewPos));
    else
      G_clickedImgPos = findPos(getObj(refPrefix + id)); 
  }

  if ( loadingImg )
  {
    previewDiv.style.visibility = 'hidden'  
    loadingDiv.style.width  = loadingImg.width + 'px';
    loadingDiv.style.height = loadingImg.height + 'px';
//    loadingDiv.style.marginLeft = (Math.round(loadingImg.width / -2)) + 'px';
  }
  else
  {
    loadingDiv.style.marginLeft = (Math.round(parseInt(loadingDiv.style.width) / -2)) + 'px';
    var movie = getFlashMovieObject('previewMovie');
    if ( movie )
    {
      movie.StopPlay();
    }
  }
/*  if ( G_clickedImgPos )
  {
    loadingDiv.style.left = G_clickedImgPos[0] + 'px';
    loadingDiv.style.top = G_clickedImgPos[1] + 'px';
  }
  else
  */
    loadingDiv.style.top = getScrollY() + 200 + "px";

  previewDiv.innerHTML = '<img id="previewImg" src="cmd.php?cmd=img&class=' + className + '&id=' + id + '&type=' + type + '" alt="" />';
  loadingDiv.style.visibility = 'visible';
  window.setTimeout("waitForImage()", 200);
}

function waitForImage()
{
  if ( imageIsLoaded(getObj('previewImg')) )
  {
    getObj('previewLoadingDiv').style.visibility = 'hidden';
    var previewDiv = getObj('previewDiv');
    var previewImg = getObj('previewImg');
    previewDiv.style.width  = previewImg.width + 'px';
    previewDiv.style.height = previewImg.height + 'px';
//    previewDiv.style.marginLeft = (Math.round(previewImg.width / -2)) + 'px';
    if ( G_clickedImgPos )
    {
      previewDiv.style.left = G_clickedImgPos[0] + 'px';
      previewDiv.style.top = G_clickedImgPos[1] + 'px';
    }
    else
      previewDiv.style.top = getScrollY() + 30 + "px";
    previewDiv.style.visibility = 'visible';
    fadeIn('previewDiv', 0, 10, 10);
  }
  else
    window.setTimeout("waitForImage()", 50);
}

function hidePreview()
{
  fadeOut('previewDiv', 100, 10, 10, "getObj('previewDiv').style.visibility = 'hidden';");
}

