// JavaScript Document

var mousex = 0;
var mousey = 0;

function ajaxSend(url, divid){

	// we use a javascript feature here called "inner functions"
	// using these means the local variables retain their values after the outer function
	// has returned. this is useful for thread safety, so
	// reassigning the onreadystatechange function doesn't stomp over earlier requests.
		
	function ajaxBindCallback(){
		if (ajaxRequest.readyState == 4) {
			if (ajaxRequest.status == 200) {
				document.getElementById(divid).innerHTML = ajaxRequest.responseText;
			}
		}
	}

	// use a local variable to hold our request and callback until the inner function is called...
	var ajaxRequest = null;
	
	document.getElementById(divid).innerHTML = '<img src="/his_rd/library/images/ajax-loader.gif"> <strong>Loading...</strong>';
	// bind our callback then hit the server...
	if (window.XMLHttpRequest) {
		// moz et al
		ajaxRequest = new XMLHttpRequest();
		ajaxRequest.onreadystatechange = ajaxBindCallback;
		ajaxRequest.open("GET", url, true);
		ajaxRequest.send(null);
	} else if (window.ActiveXObject) {
		// ie
		ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
		if (ajaxRequest) {
			ajaxRequest.onreadystatechange = ajaxBindCallback;
			ajaxRequest.open("GET", url, true);
			ajaxRequest.send();
		}
	}
}


function openWindow(e, listid){
	
	if (!e) e = window.event;
	
	if (e)
	{ 
		if (e.pageX || e.pageY)
		{ // this doesn't work on IE6!! (works on FF,Moz,Opera7)
			mousex = e.pageX;
			mousey = e.pageY;
			//algor = '[e.pageX]';
			//if (e.clientX || e.clientY) algor += ' [e.clientX] '
		}
		else if (e.clientX || e.clientY)
		{ // works on IE6,FF,Moz,Opera7
			mousex = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
			mousey = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
			
			//algor = '[e.clientX]';
			//if (e.pageX || e.pageY) algor += ' [e.pageX] '
		}  
	}
	
	// Create and display the email window over the current page
	var sampleDiv = document.createElement("div");
	sampleDiv.id = 'sampleDiv_' + listid;
	sampleDiv.style.position = 'absolute';
	sampleDiv.style.top = (mousey - 0).toString(10) + 'px';
	sampleDiv.style.left = (mousex + 30).toString(10) + 'px';
	sampleDiv.style.width = '700px';
	sampleDiv.style.minHeight = '500px';
	sampleDiv.style.zIndex = '20';
	sampleDiv.style.display = 'block';
	sampleDiv.style.backgroundColor = '#FFFFE8';
	sampleDiv.style.border = '1px solid #000000';
	sampleDiv.style.paddingLeft = '5px';
	
	var ajaxurl = 'library/components/Lists/listRentalService.cfc?method=setListSample&ListID=' + listid;
	
	document.getElementById('samples').appendChild(sampleDiv);
	init();
	
	// populate the email window
	ajaxSend( ajaxurl, sampleDiv.id);

}

