// JavaScript Document

function sfHover() {	
	var sfEls = document.getElementById("mainNavHolder").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 sfClick(object) {	
	var innerUl = object.getElementsByTagName("UL");
	for (var i=0; i<innerUl.length; i++) {
		if(innerUl[i].className.search('hidden') >= 0){
			innerUl[i].className=innerUl[i].className.replace(new RegExp(" hidden\\b"), "");	
		} else {
			innerUl[i].className += " hidden";
		}
	}	
}

function addEvent(obj,eventType,functionReference){
	if(obj.addEventListener){
		obj.addEventListener(eventType,functionReference,true);
	} else if(obj.attachEvent){
		obj.attachEvent('on'+eventType,functionReference);
	} 
}

function getStyleObject(objectId) {
    // cross-browser function to get an object's style object given its id
    if(document.getElementById && document.getElementById(objectId)) {
	// W3C DOM
	return document.getElementById(objectId).style;
    } else if (document.all && document.all(objectId)) {
	// MSIE 4 DOM
	return document.all(objectId).style;
    } else if (document.layers && document.layers[objectId]) {
	// NN 4 DOM.. note: this won't find nested layers
	return document.layers[objectId];
    } else {
	return false;
    }
} // getStyleObject

function changeObjectVisibility(objectId, newVisibility) {
    // get a reference to the cross-browser style object and make sure the object exists
    var styleObject = getStyleObject(objectId);
    if(styleObject) {
	styleObject.display = newVisibility;
	return true;
    } else {
	// we couldn't find the object, so we can't change its visibility
	return false;
    }
} // changeObjectVisibility

function show_photos() {
	changeObjectVisibility('imageHolder', 'block');
	changeObjectVisibility('mapHolder', 'none');
	document.getElementById('photoMap').className = 'selected';
	document.getElementById('interMap').className = '';	
}
function show_map() {
	changeObjectVisibility('imageHolder', 'none');
	changeObjectVisibility('mapHolder', 'block');
	document.getElementById('photoMap').className = '';
	document.getElementById('interMap').className = 'selected';	
}

window.onload = function(){	sfHover(); }

var sliderPos = 0;

function slideThumbs(direction, rotationHolder, navSliderLeft, navSliderRight){
	var browser = document.getElementById(rotationHolder);
	var anchors = document.getElementById(rotationHolder).getElementsByTagName('A');
	var totalAnchors = anchors.length;
	var firstNav = false;
	var lastNav = false;
	var holder;
	var navCount = 0;
	for (var i=0; i < totalAnchors; i++){
		if(anchors[i].className.search('navLink') >= 0){
			if(firstNav === false) firstNav = i;
			lastNav = i;
		}
	}
	
	if(direction == 'right'){
		holder = anchors[firstNav];
		browser.removeChild(anchors[firstNav]);
		browser.insertBefore(holder, navSliderRight);
	} else {
		holder = anchors[lastNav];
		browser.removeChild(anchors[lastNav]);
		browser.insertBefore(holder, anchors[firstNav]);		
	}
	
	for (var i=0; i < totalAnchors; i++){
		if(anchors[i].className.search('navLink') >= 0){
			navCount++;
			
			anchors[i].className = anchors[i].className.replace(new RegExp(" hidden\\b"), "");		
			var localImage = anchors[i].getElementsByTagName('IMG');
			/*
			localImage[0].className = localImage[0].className.replace(new RegExp(" last\\b"), "");
			if(navCount==3)
				localImage[0].className += " last";
			*/
			if(navCount <= 4){
				anchors[i].className = anchors[i].className.replace(new RegExp(" hidden\\b"), "");
			} else {
				anchors[i].className += " hidden";
			}					
		} 
	}
}


function popUp(URL) {
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=1,menubar=1,resizable=1,width=340,height=240');");
}


//if (window.attachEvent) window.attachEvent("onload", sfHover);