function makeRequest() {
	var http_request = false;
	
	if (window.XMLHttpRequest) {
		http_request = new XMLHttpRequest();
		
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
		}
	} else if (window.ActiveXObject) {
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}
	
	if (!http_request) {
		alert('Could not create XMLHttpRequest object, please contact admin.');
		return false;
	}
	
	return http_request;
}

function Slide(seq, str) {
	var sequence;
	var caption;
	
	this.sequence = seq;
	this.caption = str;
}

var palmArray = new Array();

function preload() {
	// initialize connection
	var xmldoc;
	var http_request = makeRequest();
	
	http_request.onreadystatechange = function() {
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				xmldoc = http_request.responseXML;
				
				var slideList = xmldoc.getElementsByTagName('slide');
				var slideObj;
				
				for (var i = 0; i < slideList.length; i++) {
					var seq, str;
					
					seq = slideList[i].getAttribute('seq');
					str = slideList[i].getElementsByTagName('caption')[0].firstChild.data;
					
					slideObj = new Slide(seq, str);
					palmArray[i] = slideObj;
				}
			} else {
				alert('There was a problem communicating with he server.');
			}
		}
	}
	
	http_request.open('GET', 'xml/palm/palm.xml', true);
	http_request.send(null);
}

function showCaption(seq) {
	var captionDiv = document.getElementById('caption');
	captionDiv.style.textAlign = "left";
	var index;
	
	for (var i = 0; i < palmArray.length; i++) {
		var currSlide = palmArray[i];
		
		if (currSlide.sequence == seq) {
			index = i;
		}
	}
	
	captionDiv.innerHTML = palmArray[index].caption;
}

function showNote() {
	var captionDiv = document.getElementById('caption');
	captionDiv.style.textAlign = "center";
	
	captionDiv.innerHTML = 'Rollover images for more details...';
}