﻿var tmpObj = "";
var tmpObjWidth = 0;
var tmpObjHeight = 0;

function cvBox_show(obj, objWidth, objHeight)
{
    try
    {
        if (document.getElementById(obj) == null)
            return false;
        else
        {            
            //if(document.getElementById("jquery-overlay") == null)
            //{
                // Hide some elements to avoid conflict with overlay in IE. These elements appear above the overlay.
			     $('embed, object,select').css({ 'visibility' : 'hidden' });
			    
                // Add mask div
                $('body').append('<div id="jquery-overlay"></div>');
                $("#jquery-overlay").decorateIframe(); 
                tmpObj = obj;
                tmpObjWidth = objWidth;
                tmpObjHeight = objHeight;
                    
                // Show cvBox                
                $("#"+obj+"").css({ 'display' : 'block' });                
                $("#"+obj+"").css({
				    width:      objWidth,
				    height:     objHeight
			    });
			    
                // Get page sizes
			    var arrPageSizes = ___getPageSize();
			    
			    // Style overlay and show it
			    $('#jquery-overlay').css({
				    backgroundColor:	'#000',
				    opacity:			0.2,
				    width:				arrPageSizes[0],
				    height:				arrPageSizes[1]
			    }).fadeIn('slow');
			    // Get page scroll
			    var arrPageScroll = ___getPageScroll();
			    // Calculate top and left offset for the jquery-cvBox div object and show it
			    $('.cvBox_title').css({
				    width:      objWidth
			    });
			    
			    $("#"+obj+"").css({
				    top:	arrPageScroll[1] + (arrPageSizes[3] / 20),
				    left:	(arrPageScroll[0] + arrPageSizes[0] - objWidth) / 2
			    });
			    // Assigning click events in elements to close overlay
//			    $('#jquery-overlay').click(function() {
//				    _finish(obj);									
//			    });			   		    
			    
            //}
        }
    } catch(e) {
		//nothing here
	}
}

function ___getPageSize() {
	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+20,pageHeight,windowWidth+20,windowHeight);
	return arrayPageSize;
};

function ___getPageScroll() {
	var xScroll, yScroll;
	if (self.pageYOffset) {
		yScroll = self.pageYOffset;
		xScroll = self.pageXOffset;
	} else if (document.documentElement && document.documentElement.scrollTop) {	 // Explorer 6 Strict
		yScroll = document.documentElement.scrollTop;
		xScroll = document.documentElement.scrollLeft;
	} else if (document.body) {// all other Explorers
		yScroll = document.body.scrollTop;
		xScroll = document.body.scrollLeft;	
	}
	arrayPageScroll = new Array(xScroll,yScroll);
	return arrayPageScroll;
};

function _finish() {
    $(".cvBox").css({ 'display' : 'none' });
    $('#jquery-overlay').fadeOut('slow',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' });
}
	
$(window).resize(function() {
    // Get page sizes
    var arrPageSizes = ___getPageSize();
    // Style overlay and show it
    $('#jquery-overlay').css({
	    width:		arrPageSizes[0],
	    height:		arrPageSizes[1]
    });
    // Get page scroll
    var arrPageScroll = ___getPageScroll();
    // Calculate top and left offset for the jquery-cvBox div object and show it
    $("#"+tmpObj+"").css({
	    top:	arrPageScroll[1] + (arrPageSizes[3] / 20),
	    left:	(arrPageScroll[0] + arrPageSizes[0] - tmpObjWidth) / 2
    });
});


