var XmlHttpObj;
function CreateXmlHttpObj()
{
	// try creating for IE (note: we don't know the user's browser type here, just attempting IE first.)
	try
	{
		XmlHttpObj = new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch(e)
	{
		try
		{
			XmlHttpObj = new ActiveXObject("Microsoft.XMLHTTP");
		} 
		catch(oc)
		{
			XmlHttpObj = null;
		}
	}
	// if unable to create using IE specific code then try creating for Mozilla (FireFox) 
	if(!XmlHttpObj && typeof XMLHttpRequest != "undefined") 
	{
		XmlHttpObj = new XMLHttpRequest();
	}
}

function userPolls(qid, vote)
{
	var requestUrl="index.php?act=userPolls&qid="+qid+"&vote="+vote;
    CreateXmlHttpObj();
	if(XmlHttpObj)
	{
        XmlHttpObj.onreadystatechange = StateChange_userPolls;
		XmlHttpObj.open("GET", requestUrl, true);
		XmlHttpObj.send(null);		
	}
}
function StateChange_userPolls()
{
	// state ==4 indicates receiving response data from server is completed
	if(XmlHttpObj.readyState == 4)
	{
		// To make sure valid response is received from the server, 200 means response received is OK
		if(XmlHttpObj.status == 200)
		{			
			document.getElementById("loadingDiv").innerHTML="";
			document.getElementById("pollsDiv").innerHTML=XmlHttpObj.responseText;
			
		}
		else
		{
			alert("Failed");
		}
	}
	else
		document.getElementById("loadingDiv").innerHTML="<img src='images/progressbar.gif' width='16' height='16' style='padding-left:10px;'>";
}

function getNewsArticles(url)
{
	var requestUrl=url;
    CreateXmlHttpObj();
	if(XmlHttpObj)
	{
        XmlHttpObj.onreadystatechange = StateChange_getNewsArticles;
		XmlHttpObj.open("GET", requestUrl, true);
		XmlHttpObj.send(null);		
	}
}
function StateChange_getNewsArticles()
{
	// state ==4 indicates receiving response data from server is completed
	if(XmlHttpObj.readyState == 4)
	{
		// To make sure valid response is received from the server, 200 means response received is OK
		if(XmlHttpObj.status == 200)
		{			
			document.getElementById("loadingDiv").innerHTML="";
			document.getElementById("content").innerHTML=XmlHttpObj.responseText;
			
		}
		else
		{
			alert("Failed");
		}
	}
	else
		document.getElementById("loadingDiv").innerHTML="<img src='images/loader.gif' style='padding-left:10px; vertical-align:middle;'>";
}


//####################[ DISPLAY DATA WHERE MOUSE IS CLICKED START ]#######################

// Set Netscape up to run the "captureMousePosition" function whenever
// the mouse is moved. For Internet Explorer and Netscape 6, you can capture
// the movement a little easier.
if(document.layers)
{ 
	// Netscape
    document.captureEvents(Event.MOUSEMOVE);
    document.onmousemove = captureMousePosition;
}
else if(document.all)
{ 
	// Internet Explorer
    document.onmousemove = captureMousePosition;
}
else if (document.getElementById)
{ 
	// Netcsape 6
    document.onmousemove = captureMousePosition;
}
// Global variables
var xMousePos = 0; // Horizontal position of the mouse on the screen
var yMousePos = 0; // Vertical position of the mouse on the screen
var xMousePosMax = 0; // Width of the page
var yMousePosMax = 0; // Height of the page

function captureMousePosition(e)
{
    if (document.layers) {
        // When the page scrolls in Netscape, the event's mouse position
        // reflects the absolute position on the screen. innerHight/Width
        // is the position from the top/left of the screen that the user is
        // looking at. pageX/YOffset is the amount that the user has
        // scrolled into the page. So the values will be in relation to
        // each other as the total offsets into the page, no matter if
        // the user has scrolled or not.
        xMousePos = e.pageX;
        yMousePos = e.pageY;
        xMousePosMax = window.innerWidth+window.pageXOffset;
        yMousePosMax = window.innerHeight+window.pageYOffset;
    } else if (document.all) {
        // When the page scrolls in IE, the event's mouse position
        // reflects the position from the top/left of the screen the
        // user is looking at. scrollLeft/Top is the amount the user
        // has scrolled into the page. clientWidth/Height is the height/
        // width of the current page the user is looking at. So, to be
        // consistent with Netscape (above), add the scroll offsets to
        // both so we end up with an absolute value on the page, no
        // matter if the user has scrolled or not.
        xMousePos = window.event.x+document.body.scrollLeft;
        yMousePos = window.event.y+document.body.scrollTop;
        xMousePosMax = document.body.clientWidth+document.body.scrollLeft;
        yMousePosMax = document.body.clientHeight+document.body.scrollTop;
    } else if (document.getElementById) {
        // Netscape 6 behaves the same as Netscape 4 in this regard
        xMousePos = e.pageX;
        yMousePos = e.pageY;
        xMousePosMax = window.innerWidth+window.pageXOffset;
        yMousePosMax = window.innerHeight+window.pageYOffset;
    }
}
/*[Usage]
function testFunc()
{
	//alert(yMousePos+"-"+xMousePos);
	document.getElementById("msg").style.left=xMousePos+"px";
	document.getElementById("msg").style.top=yMousePos+"px";
	document.getElementById("msg").style.display="block";
	return false;
}

<a href="javascript:void(0);" onClick="return testFunc();">B</a>
*/
//########################[ DISPLAY DATA WHERE MOUSE IS CLICKED ENDS ]#########################

/*
[Hint]
string=XmlHttpObj.responseText;
if (string.indexOf("|")!=-1)
{
	document.getElementById("outerDiv").style.display='block';
	//document.getElementById("loadingDiv").style.display='block';
	var str = /not|subscribed|membership/;
	var matchPos = string.search(str);
	var val = string.split("|");
	if(matchPos != -1 )
	{
		document.getElementById("outerDiv").innerHTML=val[0];
		//alert(val[0]);
		
	}
}
*/
