// modify older environments to provide a normal XMLHttpRequest object

/*@cc_on @if (@_win32 && @_jscript_version >= 5) if (!window.XMLHttpRequest)
window.XMLHttpRequest = function() { return new ActiveXObject('Microsoft.XMLHTTP') }
@end @*/

function init() {
	if(isDynamicPage()) {
		loadContent();
	}
	selectCurrentNavItem();
	doSlideshow("slideshowImg", SLIDESHOW_IMGS);
}

function isDynamicPage() {

	// if the page's path (not including query string) ends with "/homepage.htm",
	// then we assume it's one of the old dynamic pages
	//if() {
	if(location.search || endsWith(location.pathname, "/homepage.htm") || endsWith(location.pathname,"/index.html") || endsWith(location.pathname,"/")) {
		return true;
	} else {
		return false;
	}
}

function endsWith(fullStr, endsWithStr) {
	return fullStr.substr(-(endsWithStr.length)) === endsWithStr;
}

var SLIDESHOW_IMGS = [
	"images/slide_bandford1.jpg",
	"images/slide_bandford5.jpg",
	"images/slide_bandford6.jpg",
	"images/slide_bandford8.jpg",
	"images/slide_bandfor9.jpg",
	"images/slide_bandford10.jpg",
	"images/slide_bandford4.jpg"
];

var SLIDESHOW_IMGS2 = [
	"images/P1000237.JPG",
	"images/P1000238.JPG",
	"images/P1000271.JPG",
	"images/P1000270.JPG",
	"images/P1000268.JPG",
	"images/P1000266.JPG",
	"images/P1000267.JPG",
	"images/P1000265.JPG",
	"images/P1000264.JPG",
	"images/P1000263.JPG",
	"images/P1000262.JPG",
	"images/P1000258.JPG",
	"images/P1000257.JPG",
	"images/P1000256.JPG",
	"images/P1000255.JPG",
	"images/P1000254.JPG",
	"images/P1000253.JPG",
	"images/P1000252.JPG",
	"images/P1000250.JPG",
	"images/P1000249.JPG",
	"images/P1000248.JPG",	
	"images/P1000246.JPG",
	"images/P1000245.JPG",
	"images/P1000244.JPG",
	"images/P1000243.JPG"
];


function doSlideshow(id, picArr) {
	var img = document.getElementById(id);
	var index = 0;
	//img.src = SLIDESHOW_IMGS[index];
	img.src = picArr[index];
	function transition() {
		//index = index === SLIDESHOW_IMGS.length - 1 ? 0 : index + 1;
		index = index === picArr.length - 1 ? 0 : index + 1;
		//img.src = SLIDESHOW_IMGS[index];
		img.src = picArr[index];
		//img.src.style.filter = 'alpha(opacity=' + index*10 + ')';
	}
	setInterval(transition, 2000);
	
		//img.src.style.filter = "blendTrans(duration=2)";
		//img.src.style.filter = "blendTrans(duration=crossFadeDuration)";
		//img.src.filters.blendTrans.Apply();
		//img.src.filters.blendTrans.Play();


}

function getPageIndex(url) {
	return isDynamicPage() ? getDynamicPageIndex(url) : getStaticPageIndex(url);
}

function getDynamicPageIndex(url) {
	var qIndex = url.indexOf("?");
	if(qIndex === -1 || qIndex === url.length - 1) {
		return null; // early return
	}
	return url.substring(qIndex + 1);
}

function getStaticPageIndex(url) {
	var lastSlashIndex = url.lastIndexOf("/");
	var startIndex = lastSlashIndex === -1 ? 0 : lastSlashIndex;
	return url.substr(startIndex);
}

function selectCurrentNavItem() {
	var curPage = getPageIndex(location.href);
	if (!curPage) {
		return; // early return
	}
	var navLinks = document.getElementById("nav").getElementsByTagName("A");
	for (var i=0; i<navLinks.length; i++) {
		var currentListItem = navLinks[i].parentNode;
		if(!isSecondary(currentListItem)) {
			var currentTopLevelItem = currentListItem;
		}
		var pageIndex = getPageIndex(navLinks[i].href);
		if (curPage === pageIndex) {
			navLinks[i].className = "selected";
			var selectedSection = currentTopLevelItem;
			break;
		}
	}
	for (var i=0; i<navLinks.length; i++) {
		var currentListItem = navLinks[i].parentNode;
		if(!isSecondary(currentListItem)) {
			var applyClass = currentListItem === selectedSection ? "secondary-visible" : "secondary";
		} else {
			currentListItem.className = applyClass;
		}
	}
}

function isSecondary(element) {
	return element.className && element.className.indexOf("secondary") !== -1;
}

function loadContent() {
	var request = new XMLHttpRequest();
	var loc = window.location;
	var url = "content/" + (loc.search ? loc.search.substring(1) : "home") + ".html";
	request.open("GET", url, true);
	request.onreadystatechange = function() {
		if (request.readyState == 4) {
			displayContent(request.responseText, request.status);
		}
	}
	request.send(null);
}

function displayContent(text, statusCode) {
	var parent = document.getElementById("content");
	
	var statusClass = ("" + statusCode).charAt(0);
	if (statusClass === '2' || (statusCode === 0 && text)) {
		parent.innerHTML = text;
		if(document.getElementById("slideshowImg2")) {
			doSlideshow("slideshowImg2", SLIDESHOW_IMGS2);
		}
	} else if (statusCode === 404) {
		parent.innerHTML = "Content not found";
	} else {
		parent.innerHTML = "There was a problem loading the page.";
	}
}
