function createXMLHttpObject()
{
	if(typeof(XMLHttpRequest) !== "undefined")
	{
		return new XMLHttpRequest();
	}
	else if(window.ActiveXObject) 
	{
		var aVersions = ["MSXML2.XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHttp"];
		
		for(var i = 0; i < aVersions.length; i++)
		{
			try
			{
			 	var oXmlHttp = new ActiveXObject(aVersions[i]);
			 	return oXmlHttp;
			}
			catch(oError){}
		}
	}
	throw new Error("No AJAX Support");
}		
	
function hidePollResults()
{
	document.getElementById('voteResultContainer').style.display = 'none';
	document.getElementById('voteContainer').style.display = 'block';
	return false;
}

function showPollResults()
{
	document.getElementById('voteResultContainer').style.display = 'block';
	document.getElementById('voteContainer').style.display = 'none';
	return false;
}

function processVote(showOnly)
{
	var selectedOption = null;
	if(!showOnly)
	{
		var options = document.getElementsByName('pollVote');
		for(var x = 0; x < options.length; x++)
		{
			if(options[x].checked)
			{
				selectedOption = x;
				break;
			}
		}
	}
	
	//get the selected item
	if(selectedOption == null && !showOnly)
	{
		alert(mustSelectOption);
	}
	else
	{
		var oXmlHttp = createXMLHttpObject();
		var passedPollLanguage = 'EN';
		if(pollLanguage != null)
		{
			passedPollLanguage = pollLanguage;
		}
		var url = "/php/poll/vote.php?pollLanguage=" + passedPollLanguage;
		if(!showOnly)
		{
			url += "&pollVote=" + selectedOption;
		}
		oXmlHttp.open("get", url, true);
		oXmlHttp.onreadystatechange = function(){
			if(oXmlHttp.readyState == 4)
			{
				if(oXmlHttp.status == 200)
				{
					updateResults(oXmlHttp.responseText);
					showPollResults();
				}
				else
				{
					updateResults('Please wait...');
					hidePollResults();
				}
			}
		};
		oXmlHttp.send(null);
	}
	//else send the vote request
}

function updateResults(results)
{
	document.getElementById('voteResultContainer').innerHTML = results;
}
