window.onload = function() {
  xAddEventListener(window, "resize", spOnResize, false);
//  xAddEventListener(window, "scroll", scrollFloater, false);
	var col2 = xGetElementById('col2');
	if (col2.style) col2.style.background = "url(/images/tab.gif) repeat-y";
	adjustlayout();
	floaterPreference();
//	collapseSidebarPreference();
//	externalLinks();
}

function spOnResize() {
  adjustlayout();
  resizeFloater();
}

function adjustlayout() { 
	var col1h = xHeight("mainnav");
	var col2h = xHeight("maintab");
	var xmt = xPageX('maintab');
	if (xmt > 50) {
		maxheight = Math.max(col1h,col2h);
	} else {
		maxheight = col2h;
	};
	xHeight("col1",maxheight)
	xHeight("col1content",maxheight)
	xHeight("col2",maxheight)
	xShow("footer");
}

var floaterPinned = false;

function floaterPreference() {
	floaterPinned = false;
	resizeFloater();
}

function toggleFloater() {
	floaterPinned = false;
	resizeFloater();
}

var lastScrollPos = 0;
function scrollFloater() {
	//debugStatus("Scroll event triggered.");
	var scrollPos = xScrollTop();
	if (scrollPos > lastScrollPos)
	{
		scrollDownFloater();
		//debugStatus("Scrolling down...");
	}
	else if (scrollPos < lastScrollPos)
	{
		scrollUpFloater();
		//debugStatus("Scrolling up...");
	}
	lastScrollPos = scrollPos;
}

function resizeFloater() {
	scrollDownFloater();
	lastScrollPos = xScrollTop();
}

function scrollDownFloater() {
	var floath = xHeight("mainnav");

	// Header and footer limits
	var topvpos = xHeight("header"); // + xHeight("banner");	// Header limit
	var botvpos = xPageY("footer") - floath;					// Footer limit
	
	// Scroll down limit (window bottom)
	var screenbottom = xClientHeight() + xScrollTop() - xHeight("mainnav");
	
	var colvpos;
	// Get current vertical position
	colvpos = xPageY("mainnav");
	
	// Adjust for window bottom
	if (colvpos < screenbottom) colvpos = screenbottom;
	
	// Adjust for footer
	if (colvpos > botvpos) colvpos = botvpos;
		
	// Adjust for header
	if (colvpos < topvpos) colvpos = topvpos;

	var colhpos = Math.floor(xClientWidth() *.8);
	
	xSlideTo("mainnav", colhpos, colvpos,100);
	xShow("mainnav");	
}

function scrollUpFloater() {
	var floath = xHeight("mainnav");

	// Header and footer limits
	var topvpos = xHeight("header") + xHeight("banner");	// Header limit
	var botvpos = xPageY("footer") - floath;					// Footer limit
	
	// Scroll up limit (window top)
	var screentop = xScrollTop();
	
	var colvpos;

	// Get current vertical position
	colvpos = xPageY("col3");
		
	// Adjust for window top
	if (colvpos > screentop) colvpos = screentop;
		
	// Adjust for header
	if (colvpos < topvpos) colvpos = topvpos;
	
	// Adjust for footer
	if (colvpos > botvpos) colvpos = botvpos;

	var colhpos = Math.floor(xClientWidth() *.8);
	
	xSlideTo("mainnav", colhpos, colvpos,100);
	xShow("mainnav");
}

function toggle() {
	var xmt = xPageX('maintab');
	if (xmt > 50) {
		hideMe();
		adjustlayout();
	}
	else {
	 	showMe();
	 	adjustlayout();
	}
}

function hideMe(){
	xHide('col1');
	var col2 = xGetElementById('col2');
	col2.style.margin = "0px 5% 0px 0px";
	col2.style.background = "url(tab-b.gif) repeat-y";
}

function showMe(){
	xShow('col1');
	var col2 = xGetElementById('col2');
	col2.style.margin = "0px 5% 0px 25%";
	col2.style.background = "url(tab.gif) repeat-y";
}

function cancelbubble(evt) {
	evt = (evt) ? evt : ((event) ? event : null);
	if (evt) {evt.cancelBubble = true;
	}
}

