function showGlossaryDefinition(term) {
	var glossaryDefinitionLayer = document.getElementById('glossaryDefinitionLayer');

	var request;
	if (window.XMLHttpRequest) {
	    request = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
	    request = new ActiveXObject("Microsoft.XMLHTTP");
	}
	var result;
	request.open('GET', 'glossary-ws-definition.php?term=' + term, true);
	request.onreadystatechange = function() {
		if (request.readyState == 4) {
			var glossaryDefinitionTextLayer = document.getElementById("glossaryDefinitionText");
			glossaryDefinitionTextLayer.innerHTML = request.responseText;
	  	}
	}
	document.getElementById("glossaryDefinitionTerm").innerHTML=term;
	request.send(null);

	var yOffset;
	if (self.pageYOffset) {
	    yOffset = self.pageYOffset;
	} else if (document.documentElement && document.documentElement.scrollTop) {
	    yOffset = document.documentElement.scrollTop;
	} else if (document.body){
	    yOffset = document.body.scrollTop;
	}

    var availHeight;
    var availWidth;
 
    if(typeof(window.innerWidth) == 'number'){
        availHeight = window.innerHeight;
        availWidth = window.innerWidth;
    }else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)){
        availHeight = document.documentElement.clientHeight;
        availWidth = document.documentElement.clientWidth;
    }else if(document.body && (document.body.clientWidth || document.body.clientHeight)){
        availHeight = document.body.clientHeight;
        availWidth = document.body.clientWidth;
    }
 
    var indicatorWidth = 250;
    var indicatorHeight = 150;
    var left = (availWidth/2) - (indicatorWidth/2);
	var top = ((availHeight/2)+yOffset) - (indicatorHeight/2);

    glossaryDefinitionLayer.style.position="absolute";
    glossaryDefinitionLayer.style.zIndex="999";
    glossaryDefinitionLayer.style.top=top+"px";
    glossaryDefinitionLayer.style.left=left+"px";
    glossaryDefinitionLayer.style.display="block";
}

function hideGlossaryDefinitions() {
	var glossaryDefinitionLayer = document.getElementById('glossaryDefinitionLayer');
	glossaryDefinitionLayer.style.display = "none";
}
function toggleDSQ(term) {
	var dsqlayer = document.getElementById('dsqmenuWrapper');
	if (dsqlayer.style.display=='block') {
		dsqlayer.style.display='none';
	} else {
		dsqlayer.style.display='block';

		var yOffset;
		if (self.pageYOffset) {
			yOffset = self.pageYOffset;
		} else if (document.documentElement && document.documentElement.scrollTop) {
			yOffset = document.documentElement.scrollTop;
		} else if (document.body){
			yOffset = document.body.scrollTop;
		}

		var availHeight;
		var availWidth;
	 
		if(typeof(window.innerWidth) == 'number'){
			availHeight = window.innerHeight;
			availWidth = window.innerWidth;
		}else if(document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)){
			availHeight = document.documentElement.clientHeight;
			availWidth = document.documentElement.clientWidth;
		}else if(document.body && (document.body.clientWidth || document.body.clientHeight)){
			availHeight = document.body.clientHeight;
			availWidth = document.body.clientWidth;
		}
	 
		var indicatorWidth = 550;
		var indicatorHeight = 280;
		var left = (availWidth/2) - (indicatorWidth/2);
		var top = ((availHeight/2)+yOffset) - (indicatorHeight/2);

		dsqlayer.style.position="absolute";
		dsqlayer.style.zIndex="999";
		dsqlayer.style.top=top+"px";
		dsqlayer.style.left=left+"px";
		dsqlayer.style.display="block";
	}
}

function getCurrentDateTime() {
	var dateobj = new Date();
	var y = dateobj.getFullYear();
	var m = dateobj.getMonth() + 1;if (m<10) {m='0'+m;}
	var d = dateobj.getDate();if (d<10) {d='0'+d;}
	var hr =dateobj.getHours();if (hr<10) {hr='0'+hr;}
	var mn =dateobj.getMinutes();if (mn<10) {mn='0'+mn;}
	var sc =dateobj.getSeconds();if (sc<10) {sc='0'+sc;}
	return newlastupdatedvalue = y+"-"+m+"-"+d+" "+hr+":"+mn+":"+sc;
}

function getDataFromServer(url,destid) {
	var request;
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
	    request = new XMLHttpRequest();
	} else if (window.ActiveXObject) { // IE
	    request = new ActiveXObject("Microsoft.XMLHTTP");
	}
	var result;
	request.open('GET', url, true);
	request.onreadystatechange = function() {
		if (request.readyState == 4) {
			document.getElementById(destid).value=request.responseText;
	  	}
	};
	request.send(null);

}
function getHtmlFromServer(url,destid) {
	var request;
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
	    request = new XMLHttpRequest();
	} else if (window.ActiveXObject) { // IE
	    request = new ActiveXObject("Microsoft.XMLHTTP");
	}
	var result;
	request.open('GET', url, true);
	request.onreadystatechange = function() {
		if (request.readyState == 4) {
			document.getElementById(destid).innerHTML=request.responseText;
	  	}
	};
	request.send(null);

}
function makeXmlDoc(str) {
	try //Internet Explorer
		{
		xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async="false";
		xmlDoc.loadXML(str);
		}
	catch(e)
		{
		try //Firefox, Mozilla, Opera, etc.
		{
		parser=new DOMParser();
		xmlDoc=parser.parseFromString(str,"text/xml");
		}
		catch(e)
		{
		alert(e.message);
		return;
		}
	}
	return xmlDoc;
}
function postAndForget(url,params) {
	var request;
	if (window.XMLHttpRequest) {
		request = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		request = new ActiveXObject("Microsoft.XMLHTTP");
	}
	request.open("POST", url, true);
	request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	request.setRequestHeader("Content-length", params.length);
	request.setRequestHeader("Connection", "close");
	request.send(params);


	return true;
}

function getLatitudeLongitudeForLocationName(x) {
	x = x.toLowerCase();
	var geocoder = new google.maps.Geocoder();
	geocoder.geocode( { 'address': x,'region':'uk'}, function(results, status) {
		if (status == google.maps.GeocoderStatus.OK) {
			jumpToLocCallback(results[0].geometry.location.lat(),results[0].geometry.location.lng());
			return true;
		}
	});
}
