/*
-----------------------------------------------------------------------------------------
rps.jquery.lightbox.js
-----------------------------------------------------------------------------------------
BASE LIGHTBOX JS
RPS
Email: production@rpsdigital.com

--------------
NOTES
--------------


-----------------------------------------------------------------------------------------
*/

if(typeof ($.RPS) == "undefined") {
	$.RPS = Object;
}

$.RPS.lightbox = {
	
	overlayBgColor: '#000',
	overlayOpacity: 0.4,
	top: 170,
	fadeSpeed: 'slow',
	clickToClose: false,
	
	boxDisplay: function(stuff) {
		var arrPageSizes = $.RPS.lightbox.getPageSize();
		var arrPageScroll = $.RPS.lightbox.getPageScroll();
		$('#lb-contents').css({opacity:'0',top: $.RPS.lightbox.top});
		$('#lb-contents').append(stuff);	
		$('#lb-contents').animate({ 
			opacity: 1.0
		}, 300 );
		if($.browser.msie) {
			if(parseInt($.browser.version) < 8) {
				var paddingTop = arrPageScroll[1] + $.RPS.lightbox.top;
				$('#lb-fixed').css({
					position: 'static',
					paddingTop:	paddingTop
				});
			}
		}
	},
	
	addOverlay: function() {
		$('body').append('<div id="lb-overlay"></div><div id="lb-container"><div id="lb-fixed"><div id="lb-contents"></div></div></div>');
		// Get page sizes
		var arrPageSizes = $.RPS.lightbox.getPageSize();
		$('#lb-overlay').css({
			backgroundColor: $.RPS.lightbox.overlayBgColor,
			opacity: $.RPS.lightbox.overlayOpacity,
			width: arrPageSizes[0],
			height: arrPageSizes[1]
		}).fadeIn($.RPS.lightbox.fadeSpeed);
		
		$(window).resize(function() {
			var arrPageSizes = $.RPS.lightbox.getPageSize();
			$('#lb-overlay').css({
				width: arrPageSizes[0],
				height:	arrPageSizes[1]
			});
		});
	},
	
	finish: function() {
		$('#lb-container').remove();
		$('#lb-overlay').fadeOut(function() {
			$('#lb-overlay').remove();
		});
	},
	
	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) {
			xScroll = document.body.scrollWidth;
			yScroll = document.body.scrollHeight;
		} else {
			xScroll = document.body.offsetWidth;
			yScroll = document.body.offsetHeight;
		}
		var windowWidth, windowHeight;
		if (self.innerHeight) {
			if(document.documentElement.clientWidth){
				windowWidth = document.documentElement.clientWidth; 
			} else {
				windowWidth = self.innerWidth;
			}
			windowHeight = self.innerHeight;
		} else if (document.documentElement && document.documentElement.clientHeight) {
			windowWidth = document.documentElement.clientWidth;
			windowHeight = document.documentElement.clientHeight;
		} else if (document.body) {
			windowWidth = document.body.clientWidth;
			windowHeight = document.body.clientHeight;
		}	
		if(yScroll < windowHeight){
			pageHeight = windowHeight;
		} else { 
			pageHeight = yScroll;
		}
		if(xScroll < windowWidth){	
			pageWidth = xScroll;		
		} else {
			pageWidth = windowWidth;
		}
		arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight);
		return arrayPageSize;
	},
	
	getPageScroll:function() {
		var xScroll, yScroll;
		if (self.pageYOffset) {
			yScroll = self.pageYOffset;
			xScroll = self.pageXOffset;
		} else if (document.documentElement && document.documentElement.scrollTop) {
			yScroll = document.documentElement.scrollTop;
			xScroll = document.documentElement.scrollLeft;
		} else if (document.body) {
			yScroll = document.body.scrollTop;
			xScroll = document.body.scrollLeft;	
		}
		arrayPageScroll = new Array(xScroll,yScroll);
		return arrayPageScroll;
	}
	
};

		
