//feedback function
function glossaryOverlay(url, width, height, title) {
	objOverlay = document.getElementById('glossaryOverlay');
	objOverlay.style.display = 'block';
	objOverlayIE = document.getElementById('glossaryOverlayie');
	objOverlayIE.style.display = 'block';
	resizeGlossaryOverlay();
	toggleTextSelection(0);
	
	assetName = url.substring(0, url.lastIndexOf('.'));
	
	objAsset = document.getElementById('glossaryAsset');
	//$('#glossaryAsset').hide();
	//$('#glossaryAsset').fadeIn('fast');

			
		if (width > 0) objAsset.style.width = parseInt(width) + 'px';
		if (height > 0) objAsset.style.height = 'auto';
		
		$('#glossaryTitle').hide();
		$('#glossaryAsset').hide();
		$('#glossaryAsset').fadeIn('fast');
		document.getElementById('glossaryTitle').innerHTML=title;
		$('#glossaryTitle').fadeIn('fast');
		positionGlossaryAsset();
				
		
		/*frame = elem('iframe', {'id': 'feedbackFrame', 'src': '/feedback/?furl='+asset, 'width': '495px', 'height': '340px', 'frameborder': '0'}, {'border': 'none', 'marginTop': '10px'}, '');
		objAsset.appendChild(frame);
		*/
		glossaryHolderDiv = elem('div', {'id': 'glossaryHolder'}, {'textAlign': 'left'}, '');
		
		//glossaryHolderDiv .innerHTML='<iframe src="/glossary-link/?title='+url+'" width="768" height="500" frameborder="0" id="feedbackFrame"></iframe>';
		objAsset.appendChild(glossaryHolderDiv);
		
		//ajax it!
		processAjax('/glossary-link/?title='+url, 'glossaryAssetContainer');
		
}


// Positions the asset div.
function positionGlossaryAsset() {
	arrayPageSize = getPageSize();
	arrayPageScroll = getPageScroll();
	
	objAsset = document.getElementById('glossaryAsset');
	assetWidth = objAsset.style.width;
	assetWidth = assetWidth.substring(0, assetWidth.lastIndexOf('p'));
	
	assetTop = arrayPageScroll[1];
	assetLeft = (arrayPageSize[0] - assetWidth) / 2;
	
	objAsset.style.top = (assetTop < 0) ? '0px' : assetTop + 'px';
	objAsset.style.left = (assetLeft < 0) ? '0px' : assetLeft + 'px';
}

// Remove multimedia asset.
function unloadGlossaryAsset() {
	$('#glossaryAsset').fadeOut('fast', function(){
	deleteNode('glossaryAssetContainer');
	objOverlay = document.getElementById('glossaryOverlay');
	objOverlay.style.display = 'none';
	objOverlayIE = document.getElementById('glossaryOverlayie');
	objOverlayIE.style.display = 'none';
	toggleTextSelection(1);
												 });
												 
}


// Alters overlay size and asset position on window resize.
function resizeGlossaryOverlay() {
	arrayPageSize = getPageSize();
	objOverlay = document.getElementById('glossaryOverlay');
	objOverlay.style.width = '100%';
	objOverlay.style.height = arrayPageSize[1] + 'px';
	/*----- IE -----*/
	objOverlayie = document.getElementById('glossaryOverlayie');
	objOverlayie.style.width = '100%';
	objOverlayie.style.height = arrayPageSize[1] + 'px';
	
	positionGlossaryAsset();
}

function processAjax(url, target) {

if (window.XMLHttpRequest) { // Non-IE browsers
req = new XMLHttpRequest();
req.onreadystatechange = function(){ targetDiv(target);};
try {
req.open("GET", url, true);
} catch (e) {
alert(e);
}
req.send(null);
} else if (window.ActiveXObject) { // IE
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {
req.onreadystatechange = function(){ targetDiv(target);};
req.open("GET", url, true);
req.send();

}
}
}

function targetDiv(target){
if (req.readyState == 4) { // Complete

if (req.status == 200) { // OK response

holder=document.getElementById(target);
holder.innerHTML = '';
holder.innerHTML = req.responseText;

} else {
alert("Problem: " + req.statusText);
}
}
} 
