<!--

// MyDHTML 1.0 Banners library
// v2008.04.18

// Banners handler >>> ****************************************

	// Banners constructor >>>
	function bannersHandler(oBrowser, oWindow, oService)
	{
		this.browser = oBrowser;
		this.window = oWindow;
		this.service = oService;

		this.initFloaters = bannersHandler_initFloaters;
		this.watchScrolling = bannersHandler_watchScrolling;
		this.floatFloaters = bannersHandler_floatFloaters;

		this.floaters = null;
		this.floatersInitialOffsetTop = null;
		this.floatersOffsetHeight = null;
		this.footerOffsetTop = null;

		this.floatIntervalId = null;
		this.floatInterval = 500; // ms
	}
	// <<< Banners constructor

	// Call wrappers >>>
	function bannersHandler__watchScrolling()
	{
		oBanners.watchScrolling();
	}
	function bannersHandler__floatFloaters()
	{
		oBanners.floatFloaters();
	}
	// <<< Call wrappers
	
	function bannersHandler_initFloaters()
	{
		var oFooter = document.getElementById('dFooter');

		this.floaters = document.getElementById('dFloatingBanners');
		this.floatersInitialOffsetTop = this.floaters.offsetTop - 5;
		this.floatersOffsetHeight = this.floaters.offsetHeight;
		this.footerOffsetTop = oFooter.offsetTop - 5;

		this.watchScrolling();

		window.onscroll = bannersHandler__watchScrolling;
	}

	function bannersHandler_watchScrolling()
	{
		if (this.floatIntervalId != null)
			window.clearInterval(this.floatIntervalId);
		this.floatIntervalId = window.setInterval('bannersHandler__floatFloaters()', this.floatInterval);
	}

	function bannersHandler_floatFloaters()
	{
		if (this.floatIntervalId != null)
			window.clearInterval(this.floatIntervalId);
			
		var iScrollOffset = this.window.getScrollOffset();
		var iMarginTop = null;
		var iTest = null;
		
		if (iScrollOffset < this.floatersInitialOffsetTop)
		{
			if (this.floaters.style.marginTop != 0)
				this.floaters.style.marginTop = 0;
		}
		else
		{
			iMarginTop = iScrollOffset - this.floatersInitialOffsetTop;
			if (this.floaters.style.marginTop != iMarginTop)
			{
				iTest = (this.footerOffsetTop - (this.floatersInitialOffsetTop + iMarginTop + this.floatersOffsetHeight));
				if (iTest < 0)
					iMarginTop = iMarginTop + iTest;
					
				this.floaters.style.marginTop = iMarginTop;
			}
		}
	}

// <<< Banners handler ****************************************

// -->