function isdefined(variable)
{
    return (typeof(window[variable]) == "undefined")?  false: true;
}

function PageHolder() {
	
	var needPopup = true;
	var shownPopup = false;
	var initStopPopupTop = false;
	
	this.showStopPopup = function() {
		if (needPopup && !shownPopup && !$.cookie("resetpopup"))
		{
			$('#actionBlanket').show();
			$('#actionBlanket').fadeTo('10', 0.7);
			$('#stop_popup').fadeIn('normal');

			if (!initStopPopupTop)
				initStopPopupTop = $('#stop_popup').offset().top;
			$('#stop_popup').animate({top:initStopPopupTop+$(window).scrollTop()+"px"},{queue: false, duration: 1});
			
			// Correct shadow dimensions in IE
			if ($.browser.msie)
			{
				var marginToShadow = 8;
				$('.shadow').animate({width:$('.shadow').width() + marginToShadow + 'px', 
					height:$('.shadow').height() + marginToShadow + 'px'});
			}
			
			shownPopup = true;
			needPopup = false;
		}
	}
	
	this.hideStopPopup = function() {
		$('#stop_popup').fadeOut('normal');
		$('#actionBlanket').fadeOut('normal');
		shownPopup = false;
	}
	
	this.activate = function() {
		// Attach stopPopup listener
		$('#holder').bind('mouseover', pgHol.showStopPopup);
		
		// Init actionBlanket and holder position
		$('#actionBlanket').animate({top:$(window).scrollTop()+"px"},{queue: false, duration: 1});
		$('#holder').animate({top:$(window).scrollTop()+"px"},{queue: false, duration: 1});
	}
	
	// Scroll holder and popup
	this.scroll = function() {
		$('#actionBlanket').animate({top:$(window).scrollTop()+"px"},{queue: false, duration: 1});
		$('#holder').animate({top:$(window).scrollTop()+"px"},{queue: false, duration: 1});
		if (shownPopup)
			$('#stop_popup').animate({top:initStopPopupTop+$(window).scrollTop()+"px"},{queue: false, duration: 450});
	}
	
	// Set cookie 'resetpopup' to don't show popup anymore
	this.resetPopup = function() {
		$.cookie("resetpopup", "1", {expires: 7});
	}
}

$(document).ready(function(){

	if (isdefined('pgHol')) return;
	pgHol = new PageHolder();	
	
	// Attach holder activator listener 
	$(document).bind('mouseover', function(){
		pgHol.activate();
	});
	
	// Attach scrolling listener
	$(window).bind('scroll', function(){
		pgHol.scroll();
	});
})