/******************************
Basic AJAX functions
******************************/
function makeRequest(url,divId)
{
	var httpRequest;
	
	if (window.XMLHttpRequest)
	{ // Mozilla, Safari, ...
		httpRequest = new XMLHttpRequest();
		if (httpRequest.overrideMimeType)
		{
			httpRequest.overrideMimeType('text/xml');
			// See note below about this line
		}
	} 
	else if (window.ActiveXObject)
	{ // IE
		try
		{
			httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
		} 
		catch (e)
		{
			try
			{
				httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
			} 
			catch (e) {}
		}
	}
	
	if (!httpRequest)
	{
		alert('Giving up :( Cannot create an XMLHTTP instance');
		return false;
	}
	httpRequest.onreadystatechange = function() { requestContents(httpRequest,divId); };
	httpRequest.open('GET', url, true);
	httpRequest.send('');
	
}

function requestContents(httpRequest,divId)
{
	
	if (httpRequest.readyState == 4)
	{
		if (httpRequest.status == 200)
		{
			var response = httpRequest.responseText;
			var div = document.getElementById(divId);
			var overlay = document.getElementById('overlay');
			var popup = document.getElementById('popup');
			var popupwait = document.getElementById('popupwait');
			//alert(response + "\ndivid:" + divId);
			
			//popup.style.display="none";
			div.innerHTML=response;
			
			setTimeout("adjustSizes(\"" + div + "\")",100);
			//popupwait.style.display="none";
			//popup.style.display="block";
		}
		else
		{
			var popup = document.getElementById('popup');
			var popupwait = document.getElementById('popupwait');
			document.getElementById(divId).innerHTML="<div  onclick='hideOverlay();'>Sorry. There was an error loading image.</div>";
			popupwait.style.display="none";
			popup.style.display="block";
		}
	}
}

function adjustSizes(div)
{
	var overlay = document.getElementById('overlay');
	var popup = document.getElementById('popup');
	var popupwait = document.getElementById('popupwait');
	var popupimage = document.getElementById('popupimage');
	//alert ('popupimage:' + popupimage.width + '\ndiv:' + window.innerHeight);
	/*if (popupimage.width>document.width && document.width>200)
	{
		popupimage.width=document.width-100;
		popup.style.width=(document.width-96) + "px";
	}
	else if (popupimage.height>window.innerHeight && window.innerHeight>200)
	{
		popupimage.height=window.innerHeight-100;
		popup.style.width=(popupimage.width+4) + "px";
	}
	else if (popupimage.width>100)
	{
		popup.style.width=(popupimage.width+4) + "px";
	}*/
	
	
	var winheight = document.documentElement.clientHeight;
	var winwidth = document.body.clientWidth;
	//alert(winwidth + ":" + popupimage.getAttribute('width') + "\n" + winheight + ":" + popupimage.getAttribute('height'));	
	
	var imgwidth=parseInt(popupimage.getAttribute('width'));
	if(imgwidth>0 && winheight>0)
	{
		popup.style.width=(imgwidth+4) + "px";
		popup.style.left=((parseInt(winwidth-popupimage.getAttribute('width'))+4)/2) + "px";
		popup.style.top=((parseInt(winheight-popupimage.getAttribute('height'))+4)/2) + "px";
	}
	else
	{
		popup.style.width=winwidth-100;
		popup.style.left="50px";
		//popup.style.top="50px";
		popup.align="center";
		//alert(document.body.scrollTop);
		popup.style.top=(document.body.scrollTop + 50) + "px";
		overlay.style.top=document.body.scrollTop;
	}

	//alert(popup.style.width + "\n" + popup.style.left + ":" + popup.style.top);	
	
	
	popupwait.style.display="none";
	popup.style.display="block";
}

