/*  These five functions found at http://www.softcomplex.com/docs/get_window_size_and_scrollbar_position.html */
function f_clientWidth() {
	return f_filterResults (
		window.innerWidth ? window.innerWidth : 0,
		document.documentElement ? document.documentElement.clientWidth : 0,
		document.body ? document.body.clientWidth : 0
	);
}
function f_clientHeight() {
	return f_filterResults (
		window.innerHeight ? window.innerHeight : 0,
		document.documentElement ? document.documentElement.clientHeight : 0,
		document.body ? document.body.clientHeight : 0
	);
}
function f_scrollLeft() {
	return f_filterResults (
		window.pageXOffset ? window.pageXOffset : 0,
		document.documentElement ? document.documentElement.scrollLeft : 0,
		document.body ? document.body.scrollLeft : 0
	);
}
function f_scrollTop() {
	return f_filterResults (
		window.pageYOffset ? window.pageYOffset : 0,
		document.documentElement ? document.documentElement.scrollTop : 0,
		document.body ? document.body.scrollTop : 0
	);
}
function f_filterResults(n_win, n_docel, n_body) {
	var n_result = n_win ? n_win : 0;
	if (n_docel && (!n_result || (n_result > n_docel)))
		n_result = n_docel;
	return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}


/*
	Written by Jonathan Snook, http://www.snook.ca/jonathan
	Add-ons by Robert Nyman, http://www.robertnyman.com
*/
function getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}


var lastScrollIsActive = !(f_clientWidth() < 945);
var lastHorizontalScroll = 0;
function resetPeekaboo(event) {
	var clientWidth = f_clientWidth();
	var horizontalScroll = f_scrollLeft();
	if ( ((lastScrollIsActive == true && clientWidth < 945) ||
			(lastScrollIsActive == false && clientWidth >= 945)) &&
			(lastHorizontalScroll == horizontalScroll) ) {
		return;
	}	
	
	var newPosition = "50% 0%";
	lastScrollIsActive = false;
	if (clientWidth < 945) {
		newPosition = 215 - horizontalScroll;
		newPosition = newPosition + "px 0%";
		lastScrollIsActive = true;
		lastHorizontalScroll = horizontalScroll;
	}
	
	var elementToUpdate = document.getElementById("topCap");
	elementToUpdate.style.backgroundPosition = newPosition;
	elementToUpdate = document.getElementById("bottomCap");
	elementToUpdate.style.backgroundPosition = newPosition;
	
	var elementsToUpdate = getElementsByClassName(document, "*", "slash");
	for (i = 0; i < elementsToUpdate.length; i++) {
		var currElement = elementsToUpdate[i];
		currElement.style.backgroundPosition = newPosition;
	}
}

window.onload = resetPeekaboo;
window.onresize = resetPeekaboo;
window.onscroll = resetPeekaboo;

