// touchles javascript™ -- no event handlers in html

window.onload = kickOff;
window.onresize = pageCalc;

var curLeft = 0;
var logoObj;
var aAll;

function kickOff() {
	aAll = document.getElementsByTagName("a");
	// disable and change color of active page's link
    for (var i=0; i<aAll.length; i++) {
        if (window.location.href.split("#")[0] == aAll[i].href) {
            aAll[i].onclick = function() {if (this.blur) {this.blur();} return false;}
            aAll[i].style.cursor = "text";
			aAll[i].style.borderBottom = "none";
			aAll[i].style.color = "#9999aa";
            if (aAll[i].className == "site") {
				aAll[i].style.color = "#ffffff";
           	}
        }
		// fix ie's lack of support for css :focus so tabbers see skip links on focus
		if (navigator.appName == "Microsoft Internet Explorer" && aAll[i].className == "skip") {
			var restoreColor = aAll[i].style.color;
			var restoreBorder = aAll[i].style.borderBottom;
			aAll[i].onfocus = function() {this.style.color = "#999999"; this.style.borderBottom = "1px solid #999999";}
			aAll[i].onblur = function() {this.style.color = restoreColor; this.style.borderBottom = restoreBorder;}
		}
     }
	// fixes in-page link bug for Internet Explorer
	if (navigator.appName == "Microsoft Internet Explorer") {
		getElementsByClass("target");
	}
    // calculate certain elements for placement:
	pageCalc();
}

function findPos() {
	// position logo-aligned bg image relative to window width accounting for browsers' differing def of offsetParent:
	logoObj = document.getElementById("footerbox").firstChild.firstChild;
	if (logoObj.offsetParent) {
		curLeft = logoObj.offsetLeft;
		while (logoObj.offsetParent!=null) {
			logoObj = logoObj.offsetParent;
			curLeft += logoObj.offsetLeft;
		}
	}
	document.getElementsByTagName("body")[0].style.backgroundPosition = curLeft - 649 + "px";
}

function equalCol() {
	// make the column depths match so they have full-height attributes (bg colors, etc):
	var colArray = new Array(["nav",0],["main",0],["sidebar",0]);
	for (var i=0; i<colArray.length; i++) {
		// everyone expresses their natural column heights:
		document.getElementById(colArray[i][0]).style.height = "100%";
		// detect natural column heights in px and store in the array:
		colArray[i][1] = document.getElementById(colArray[i][0]).offsetHeight;
	}
	// determine tallest column in the array:
	var tallCol = Math.max(colArray[0][1],colArray[1][1],colArray[2][1]);
	// make all columns the height of the tallest column:
	for (var i=0; i<colArray.length; i++) {
		if (document.getElementById(colArray[i][0]).offsetHeight == tallCol) {
			var fullCol = document.getElementById(colArray[i][0]);
		}
		document.getElementById(colArray[i][0]).style.height = tallCol + "px";
	}
	fullCol.style.height = "100%"
}

function pageCalc() {
	// position logo-aligned bg image relative to window width:
	findPos();
	// make the column depths match so they have full-height attributes:
	equalCol();
}

function getElementsByClass(searchClass,node,tag) {
	// fixes in-page link bug for Internet Explorer; first find all destinations (elements with classname "target"):
    var classElements = new Array();
	if ( node == null ) {
			node = document;
	}
	if ( tag == null ) {
			tag = '*';
	}
	var elAll = node.getElementsByTagName(tag);
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (var i = 0, j = 0; i < elAll.length; i++) {
		if (pattern.test(elAll[i].className)) {
			classElements[j] = elAll[i];
			j++;
		}
	}
	// then insert what is an invalid attribute for most elements, with an invalid value to boot:
	for (var i=0; i<classElements.length; i++) {
		classElements[i].setAttribute("tabIndex",-1)
	}
}

myPix = new Array
 
    ("images/event/retreat01.jpg",
    "images/event/retreat02.jpg",
    "images/event/retreat03.jpg",
    "images/event/retreat04.jpg",
    "images/event/retreat05.jpg",
	"images/event/retreat06.jpg",
    "images/event/retreat07.jpg",
    "images/event/retreat08.jpg",
    "images/event/retreat09.jpg",
    "images/event/retreat10.jpg",
	"images/event/retreat11.jpg",
    "images/event/retreat12.jpg",
    "images/event/retreat13.jpg",
    "images/event/retreat14.jpg",
	"images/event/retreat15.jpg",
    "images/event/retreat16.jpg",
    "images/event/retreat17.jpg",
    "images/event/retreat18.jpg",
    "images/event/retreat19.jpg",
    "images/event/retreat20.jpg",
	"images/event/retreat21.jpg",
    "images/event/retreat23.jpg",
    "images/event/retreat24.jpg",
	"images/event/retreat25.jpg",
    "images/event/retreat26.jpg",
    "images/event/retreat27.jpg",
    "images/event/retreat28.jpg",
    "images/event/retreat29.jpg",
    "images/event/retreat30.jpg",
	"images/event/retreat32.jpg",
    "images/event/retreat33.jpg",
    "images/event/retreat34.jpg",
	"images/event/retreat35.jpg",
    "images/event/retreat36.jpg",
    "images/event/retreat37.jpg",
    "images/event/retreat38.jpg",
    "images/event/retreat39.jpg",
    "images/event/retreat40.jpg",
	"images/event/retreat41.jpg",
    "images/event/retreat42.jpg",
    "images/event/retreat43.jpg",
    "images/event/retreat44.jpg",
    "images/event/retreat45.jpg",
	"images/event/retreat46.jpg",
    "images/event/retreat47.jpg",
    "images/event/retreat48.jpg",
    "images/event/retreat49.jpg",
    "images/event/retreat50.jpg",
	"images/event/retreat51.jpg",
    "images/event/retreat52.jpg",
    "images/event/retreat53.jpg",
    "images/event/retreat54.jpg",
	"images/event/retreat55.jpg",
    "images/event/retreat56.jpg",
    "images/event/retreat57.jpg",
    "images/event/retreat58.jpg")
    
	thisPic = 0
	
	imgCt = myPix.length - 1
	

function processPrevious() {
	if (document.images && thisPic > 0) {
		thisPic--
		document.myPicture.src=
			myPix[thisPic]
	}
}
	
function processNext() {
	if (document.images && thisPic < imgCt) {
		thisPic++
		document.myPicture.src=
			myPix[thisPic]
	}
}
