  var registeredImages = new Object();
 
  var numberToPreload = 6;
  var preloadCount = 0;

  function registerImage( id, image, html, caption ) {
    registeredImages[id] = new Object();
    registeredImages[id].image = image;
    registeredImages[id].html = html;
    registeredImages[id].caption = caption;

    if ( preloadCount < numberToPreload ) {
      var imagePreloader = new Image();
      imagePreloader.src = image;
      preloadCount++;
    }
  }

  var allPreloaded = 0;
  var selectedImageID = "original_image";
  function displayImage( id ) {
    if ( id == selectedImageID ) return;

    if (registeredImages[selectedImageID].ciuAnnoContainer) {
      registeredImages[selectedImageID].ciuAnnoContainer.hide();
    }
    selectedImageID = id;

    document.getElementById('prodImageCell').innerHTML = registeredImages[id].html;
    document.getElementById('prodImageCaption').innerHTML = registeredImages[id].caption;

    for ( elementID in registeredImages ) {
      var imageThumbnail = document.getElementById(elementID);
      if (imageThumbnail != null) {
	imageThumbnail.style.border = '1px solid #999999';
      }
      if ( !allPreloaded ) {
        var imagePreloader = new Image();
        imagePreloader.src = registeredImages[elementID].image;
      }
    }

    document.getElementById(id).style.border = '1px solid #990000';

    allPreloaded = 1;

    if (registeredImages[id].ciuAnnoContainer) {
      registeredImages[id].ciuAnnoContainer.show();
    }

  }
