function createRequestObject(){
	var ro;
	var browser = navigator.appName;
	if(browser == "Microsoft Internet Explorer"){
		ro = new ActiveXObject("Microsoft.XMLHTTP");
	}else{
		ro = new XMLHttpRequest();
	}
	return ro;
}
var http = createRequestObject();

function getLocation(portHeader, portID, page){
	document.getElementById('portHeader').innerHTML = portHeader;
	/*document.getElementById('thumbnails').innerHTML = "<img src='../includes/loading.gif' alt='' />";*/
	http.open('get', 'ajax_thumber.php?portID=' + portID + "&p=" + page);
	http.onreadystatechange = function(){
		if(http.readyState == 4){
			if (http.status == 200){
				var response = http.responseXML.documentElement;
				var myNodes;
				var totalpages = response.getElementsByTagName('totalpages')[0].firstChild.data;
				if (totalpages > 0){
					var display = "<div class='thumb_header'>PAGE &lt;&lt; &lt; ";
					for(var counter=1; counter<=totalpages;counter++){
						if (counter == page)
							display += counter+" ";
						else
							display += "<a href=\"javascript:getLocation('"+portHeader+"','"+portID+"','"+counter+"')\">"+counter+"</a> ";
					}
					display += "&gt; &gt;&gt;</div><div class='thumbimgs'>";
					
					var myNodes=response.getElementsByTagName("photo");
					for(var counter=0; counter<myNodes.length;counter++){
						if (isEven(counter) == true)
							display += "<img src='../uploads/gallery/"+myNodes.item(counter).firstChild.nodeValue+".jpg' alt='' class='thumb' onclick=\"loadImage('"+myNodes.item(counter).firstChild.nodeValue+"')\" />";
						else
							display += "<img src='../uploads/gallery/"+myNodes.item(counter).firstChild.nodeValue+".jpg' alt='' class='thumb' onclick=\"loadImage('"+myNodes.item(counter).firstChild.nodeValue+"')\" /><br />";
						imageName = "img"+myNodes.item(counter).firstChild.nodeValue;
						imageName = new Image();
						imageName.src = "../uploads/gallery/"+myNodes.item(counter).firstChild.nodeValue+".jpg";
					}
					
					display += "</div><div class='thumb_footer'>Click on a thumbnail above to view larger image.</div>";
					document.getElementById('thumbnails').innerHTML = display;
					var description = getVals(response, 'description');
					document.getElementById('imagehere').innerHTML ="<div class=\"portDescr\">"+description+"</div>";
					document.getElementById('titlehere').innerHTML = "";
					document.getElementById('descriptionhere').innerHTML = "";
					/*if (myNodes.length > 0){
						var firstimage = response.getElementsByTagName('photo')[0].firstChild.data;
						loadImage(firstimage);
					}*/
				} else {
					document.getElementById('thumbnails').innerHTML = "Sorry, this portfolio contains no images. Please select another.";
					document.getElementById('imagehere').innerHTML = "Sorry, this portfolio contains no images. Please select another.";
					document.getElementById('titlehere').innerHTML = "";
					document.getElementById('descriptionhere').innerHTML = "";
				}
			} else { alert("There was a problem retrieving the XML data:\n"); }
		}
	}
	http.send(null);
}

function loadImage(reqimage){
	document.getElementById('imagehere').innerHTML = "";
	document.getElementById('titlehere').innerHTML = "";
	document.getElementById('descriptionhere').innerHTML = "";
	
	http.open('get', 'ajax_imageinfo.php?id=' + reqimage);
	http.onreadystatechange = function(){
		if(http.readyState == 4){
			if (http.status == 200){
				var response = http.responseXML.documentElement;
				var image = getVals(response, 'image');
				var title = getVals(response, 'title');
				var description = getVals(response, 'description');
				document.getElementById('imagehere').innerHTML = "<img src='../uploads/gallery/large/"+image+".jpg' alt='' />";
				document.getElementById('titlehere').innerHTML = title;
				document.getElementById('descriptionhere').innerHTML = description;
			} else { alert("There was a problem retrieving the XML data:\n"); }
		}
	}
	http.send(null);
}

function getVals(response, thing){
	if ( response.getElementsByTagName(thing)[0].childNodes.length == 1)
		var data = response.getElementsByTagName(thing)[0].firstChild.data;
	else
		var data = "";
	return data;
}

function isEven(value){
	if (value%2 == 0)
		return true;
	else
		return false;
}
