  function gallery(image)
  {
    galleryDiv_ie = id2object('galleryDiv');  // ascundem div-ul galerie pentru a ascunde flicker-ul
    galleryDiv_ie.style.visibility = 'hidden'; // schimbarii/redimensionarii imaginii
    galleryImageDiv_ie = id2object('galleryImageDiv');
    gallerySaveImageLink_ie = id2object('gallerySaveImageLink');
    gallerySaveImageIcon_ie = id2object('gallerySaveImageIcon');
    token = new Date();
    token = token.getTime();
    image.id = 'imageFrom_' + token;

    // initializam imaginea
    imageTo_ie = getImageToById(image.id);

    // materializam imaginea
    galleryImageDiv_ie.innerHTML = '<a href="javascript:;" onclick="galleryClose();"><img src="' + imageTo_ie.src + '" id="imageTo" /></a>';

    // actualizam link-ul de download
    gallerySaveImageLink_ie.href = imageTo_ie.src;
    gallerySaveImageIcon_ie.href = imageTo_ie.src;

    // acordam ragaz 1 sec browser-ului sa descopere imaginea
    setTimeout('galleryPhase2()', 500);
  }

  function galleryPhase2()
  {
    maxWidth = 600;
    toTheLeft = 0;
    minTop = 150;
    imageTo_ie = id2object('imageTo');
    galleryDiv_ie = id2object('galleryDiv');
    windowSize = getWindowSize();
    windowWidth = windowSize[0];
    windowHeight = windowSize[1];

    // redimensionam imaginea in cazul in care este nevoie
    if(imageTo_ie.width > maxWidth)
    {
      imageTo_ie.width = maxWidth;
      imageTo_ie.height = maxWidth * imageTo_ie.height / imageTo_ie.width;
    }

    galleryDiv_ie.style.height = imageTo_ie.height + 30 + 'px'; // 30px = 2 x border imagine + galleryCloseDiv
    galleryDiv_ie.style.width = imageTo_ie.width + 10 + 'px'; // 10px = 2 x border imagine
    galleryDiv_ie.style.visibility = 'visible';

    galleryDiv_ie.style.top = Math.max( (windowHeight - parseInt(galleryDiv_ie.style.height)) / 2, minTop) + 'px';
    galleryDiv_ie.style.left = (windowWidth - parseInt(galleryDiv_ie.style.width)) / 2 - toTheLeft + 'px';
  }

  function galleryClose()
  {
    galleryDiv_ie = id2object('galleryDiv');
    galleryDiv_ie.style.width = '0';
    galleryDiv_ie.style.height = '0';
    galleryDiv_ie.style.visibility = 'hidden';
  }

  function getImageToById(imageId)
  {
    imageTo = new Image();
    imageTo.id = 'imageTo';
    imageTo.src = id2object(imageId).src.replace('gallery/thumbs', 'gallery/normal');
    return imageTo;
  }

  function getWindowSize()
  {
    var myWidth = 0, myHeight = 0;
    if( typeof( window.innerWidth ) == 'number' )
    {
      //Non-IE
      myWidth = window.innerWidth;
      myHeight = window.innerHeight;
    }
    else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) )
    {
      //IE 6+ in 'standards compliant mode'
      myWidth = document.documentElement.clientWidth;
      myHeight = document.documentElement.clientHeight;
    }
    else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) )
    {
      //IE 4 compatible
      myWidth = document.body.clientWidth;
      myHeight = document.body.clientHeight;
    }
  return size = new Array(myWidth, myHeight);
}