
/* Script taken from other PCC code, no information on where they are from */

sfHover = function() {
	var sfEls = document.getElementById("nav").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}

function getXPos() {
 if (document.body && document.body.scrollLeft)
   return document.body.scrollLeft;
 if (document.documentElement && document.documentElement.scrollLeft)
   return document.documentElement.scrollLeft;
 if (window.pageXOffset)
   return window.pageXOffset;
 return 0;
}

function fixedElementScroll(ie6FreeObj, shiftObjs) {
	if(!shiftObjs) return;
	var scrollDif;
	var i;

	scrollDif = ie6FreeObj ? ie6FreeObj.scrollLeft : getXPos();
	
	if(scrollDif) {	
		for(i=0;i<shiftObjs.length;i++) {
			shiftObjs[i].style.marginLeft = -scrollDif+'px';
		}
	}
	else {
		for(i=0;i<shiftObjs.length;i++) {
			shiftObjs[i].style.marginLeft = '';
		} 
	}
}

function addHandler(whichEvent, whichObject, attachThis){
	if(document.addEventListener){ 
		whichObject.addEventListener(whichEvent, attachThis, 0); 
	}else if(document.attachEvent){
		whichObject.attachEvent("on" + whichEvent, attachThis); 
	}
}

function isIE6() {
	var b_version=navigator.appVersion;
	
	if(b_version.match("compatible; MSIE 6.0;")) {
		return true;
	}	
	return false;
}

function InitFixedElementScroll(ie6FreeObj, ie6FixedObj) {
	if(arguments.length < 3) return;	
	var scrollObj = ie6FreeObj ? (ie6FreeObj = document.getElementById(ie6FreeObj)) : window;
	var shiftObjs = new Array(arguments.length - 2);
	var i;
	
	if(ie6FixedObj) ie6FixedObj = document.getElementById(ie6FixedObj);
	
	for(i=0;i<shiftObjs.length;i++) {
		shiftObjs[i] = document.getElementById(arguments[i+2]);
	}
	
	addHandler("scroll", scrollObj, function(){fixedElementScroll(ie6FreeObj, shiftObjs)});
	addHandler("resize", scrollObj, function(){fixedElementScroll(ie6FreeObj, shiftObjs)});	
	if(ie6FreeObj && ie6FixedObj) {
		addHandler("resize", window, function(){IE6FixedElementScrollBarReposition(ie6FreeObj, ie6FixedObj)});
	}
}

function IE6FixedElementScrollBarReposition(ie6FreeObj, ie6FixedObj) {
	var xDif = document.body.offsetWidth-ie6FreeObj.clientWidth;
	var yDif = document.body.offsetHeight-ie6FreeObj.clientHeight;

	if(yDif > 0) {
		ie6FixedObj.style.height = ie6FreeObj.clientHeight-1+'px';
		ie6FixedObj.style.width = ie6FreeObj.clientWidth-xDif+'px';
		ie6FixedObj.style.overflow = 'hidden';
	}
	else {
		ie6FixedObj.style.height = '';
		ie6FixedObj.style.width = '';
		ie6FixedObj.style.overflow = '';
	}
	
}

function DoOnloadActions() {

	if (isIE6()) {
		sfHover();
		InitFixedElementScroll('IEContainer','IE6_2ndWrapper','Header','Footer');
	} else {
		InitFixedElementScroll(0, 0, 'Header','Footer');
	}
}

addHandler("load", window, DoOnloadActions);