$(document).ready(function(){
    $('.overlayLink').live('click',function(){
        $(this).overlay(457);
        var link = $(this).attr('href');
        $.get( link,{
            lightbox:1,
            ajax:1
        },function(data){
            $('#jquery-container-box').hide();
            $(this).overlay_createBox(data);
            $("#contentAddPanel .topPart div").click(function(){
                $(this).overlay_finish();
            });
        });
        return false;
    });
});

(function($){
    jQuery.fn.extend({
        overlay: function(widthPanel,noDisable){
				
            $('embed, object, select').css({
                'visibility' : 'hidden'
            });
						
            $('body').append('<div id="jquery-overlay"></div>\
                              <div id="jquery-container">\
                                <div id="jquery-container-box">\
                                </div>\
                              </div>');
				
            var arrPageSizes = $(this)._overlay_getPageSize();
		
            $('#jquery-overlay').css({
                backgroundColor:	'#000',
                opacity:			0.5,
                width:				arrPageSizes[0],
                height:				arrPageSizes[1]
            }).fadeIn();
						
            $('#jquery-container-box').css({
                left: ($(window).width() - widthPanel)/2,
                width: widthPanel
            })
            if(!noDisable){
                $('#jquery-overlay').click(function(){
                    $(this).overlay_finish()
                });
            }
                	
            return $(this);
        },
        overlay_createBox: function(html){
				
            $("#jquery-container-box").html(html);
            $(this).overlay_center();
            $('#jquery-container-box').show();
        },
        overlay_center: function(){
            $('#jquery-container-box').css({
                top: $(window).height()/2 - $('#jquery-container-box').height()/2
                //top: '200px'
            });
        },
        _overlay_getPageSize: function() {
            var xScroll, yScroll;
            if (window.innerHeight && window.scrollMaxY) {
                xScroll = window.innerWidth + window.scrollMaxX;
                yScroll = window.innerHeight + window.scrollMaxY;
            } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
                xScroll = document.body.scrollWidth;
                yScroll = document.body.scrollHeight;
            } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
                xScroll = document.body.offsetWidth;
                yScroll = document.body.offsetHeight;
            }
            var windowWidth, windowHeight;
            if (self.innerHeight) {	// all except Explorer
                if(document.documentElement.clientWidth){
                    windowWidth = document.documentElement.clientWidth;
                } else {
                    windowWidth = self.innerWidth;
                }
                windowHeight = self.innerHeight;
            } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
                windowWidth = document.documentElement.clientWidth;
                windowHeight = document.documentElement.clientHeight;
            } else if (document.body) { // other Explorers
                windowWidth = document.body.clientWidth;
                windowHeight = document.body.clientHeight;
            }
            // for small pages with total height less then height of the viewport
            if(yScroll < windowHeight){
                pageHeight = windowHeight;
            } else {
                pageHeight = yScroll;
            }
            // for small pages with total width less then width of the viewport
            if(xScroll < windowWidth){
                pageWidth = xScroll;
            } else {
                pageWidth = windowWidth;
            }
            arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight);
            return arrayPageSize;
        },
        overlay_finish: function() {
            $('#jquery-container').remove();
            $('#jquery-overlay').fadeOut(100,function() {
                $('#jquery-overlay').remove();
            });
            // Show some elements to avoid conflict with overlay in IE. These elements appear above the overlay.
            $('embed, object, select').css({
                'visibility' : 'visible'
            });
        }
    })
})(jQuery);
