cT = null;



function createlightbox()

{

    var lb = document.createElement('div');

    var lb_img = document.createElement('img');

    

    lb.id = 'lightbox';

    lb_img.id = 'lightbox_img';

 	
    $('#lightbox').hide();

    

    document.body.appendChild(lb);

    lb.appendChild(lb_img);



    return lb;

}



function followmouse(ev)

{

    item_image = $(cT).children("img")

    eLb = $(cT).offset().left;

    eRb = eLb + item_image.width();

    eTb = $(cT).offset().top + item_image.height();

    eBb = eTb - item_image.height(); 

       

    if ((ev.pageX > eLb) && (ev.pageX < eRb) && (ev.pageY > eBb) && (ev.pageY < eTb) )

    {  

        // Move lightbox

        var lightbox = $('#lightbox');

        var margin = 10;

        var mouseOffset = 5;

        var viewX = $(window).width() - margin;

        var viewY = $(window).height() - margin;

        var viewTop = $(window).scrollTop();

        var viewLeft = $(window).scrollLeft();

        

        var mouseX = ev.pageX;

        var mouseY = ev.pageY;

        var dimX = 300;

        var dimY = 30;



        // keep lightbox to right of mouse if room allows

        if((mouseX - viewLeft + dimX + mouseOffset) < viewX){

          var left = mouseX + mouseOffset;

        }else{

          var left = viewX - dimX;

        }

        // keep lightbox below mouse if room allows

        if((mouseY + viewTop) < (viewY / 2)){

          var top = mouseY + mouseOffset;

        }else{

          var top = mouseY + dimY - mouseOffset;

        }



        lightbox.css("position", 'absolute'); 

        lightbox.css("top", top + "px"); 

        lightbox.css("left", left + 'px'); 

        lightbox.css("zIndex", 999);

    }   

    else

    {

        // Close lightbox	

        $('#lightbox').remove();

        $(cT).unbind('mousemove');

        cT = null;

    }

}



function showlightbox(thumb, image_url)

{

    if(!cT)

    {   

        var lb = createlightbox();

        var lb_img = $('#lightbox_img');

        lb_img.attr({src: image_url});

        $('#lightbox').show();

        cT = thumb;

        $(cT).children('img').removeAttr('title');

        $(cT).mousemove(function(e){followmouse(e);});

        $(cT).mouseout(function(e){

        	 $('#lightbox').remove();

        	 $(cT).unbind('mousemove');

        	 cT = null; 

        });

   }

}


