function _overlayBoxInit(){
	$('a').each(function(i){
		if(this.rel.indexOf('overlayBox') != -1)
		{
			this.onclick=function()
			{
				_overlayBox(this);				
				return false;				
			}
		}
	});	
}


// cria o box
function _overlayBox(instance)
{	
	// Oculta obejtos conflitantes
	$('embed, object, select').css({ 'visibility' : 'hidden' });
	
	// Gera div overlayBox
	$('body').append('<div id="overlayBox"></div><div id="containerBox"><div id="containerHeader"><p id="containerHeaderLabel"></p> <a id="overlayBoxClose"></a></div><div id="containerData"></div></div>');
	
	// Exibe a base inicial
	//$("#containerBox").fadeIn();	
	var arrPageScroll = _getPageScroll();
	$('#containerBox').css({
		//left:arrPageScroll[0],
		//top:arrPageScroll[1]
		//marginTop:$(this).css('margin-top')+arrPageScroll[1]
	}).fadeIn('normal');
	
	//alert(substring($('#containerBox').css('margin-top')));
	
	//Carrega a imagen clicada imagem
	objImagePreloader = new Image();	
	objImagePreloader.onload = newImage;
	objImagePreloader.src = instance.href;
	
	function newImage(){		
		objImagePreloader.title = instance.title;
		objImagePreloader.id = 'newImg';	
		w=objImagePreloader.width;
		h=objImagePreloader.height+28;
		
		$("#containerData").append(objImagePreloader);		
		$('#containerHeaderLabel').html(objImagePreloader.title);
		$('#containerBox')
		.animate({width:w, marginLeft:w/2*(-1), height:h, marginTop:h/2*(-1)},250, function(){
			$('#containerHeader,#containerData').fadeIn('normal');																			
		});			   
	};

	//Confugura e exibe a Div overlayBox
	var arrPageSizes = _getPageSize();	
	
	$('#overlayBox').css({
		//backgroundColor:	'#000',
		opacity:			0.7,
		width:				arrPageSizes[0],
		height:				arrPageSizes[1],
		display:			'none'
		//cursor:				'pointer'
	}).fadeIn('normal');
	
	
	//Comportamento Clique
	$('#overlayBox, #overlayBoxClose').click(function() {
		_overlayBoxClose();								
	});
}

function _overlayBoxClose() {
	$('#containerBox').remove();
	$('#overlayBox').fadeOut('fast',function() { $('#overlayBox').remove(); });
	// Exibe obejtos conflitantes
	$('embed, object, select').css({ 'visibility' : 'visible' });
}



// Redimensionamento da Janela
$(window).resize(function()
{
	// Get page sizes
	var arrPageSizes = _getPageSize();
	// Style overlay and show it
	$('#overlayBox').css({
		width:		arrPageSizes[0],
		height:		arrPageSizes[1]
	});
	
	/*
	// Get page scroll
	var arrPageScroll = _getPageScroll();
	// Calculate top and left offset for the jquery-lightbox div object and show it
	$('#overlayBox').css({
		top:	arrPageScroll[1] + (arrPageSizes[3] / 10),
		left:	arrPageScroll[0]
	});
	*/
	
});
	
/*
getPageSize() by quirksmode.com
@return Array Return an array with page width, height and window width, height
*/
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,pageHeight,windowWidth,windowHeight);
	return arrayPageSize;
};
/**
 / THIRD FUNCTION
 * getPageScroll() by quirksmode.com
 *
 * @return Array Return an array with x,y page scroll values.
 */
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;
};
