var xmlHttp;//ajax object
var isVote=false;
function votePoll(requestURL,id)
{
	
	
	var voteID=getCheckedValue(document.frmpoll.poll);
	var pollID=document.getElementById('pollID').value;
	if (!voteID)
	{
		alert ("Please select your choice before voting ...");
		return;
	}
	resetPollProcessMode();
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
 	{
 		alert ("Browser does not support HTTP Request.");
		return;
 	}
	isVote=true;
	var str="id="+id;
	str+="&pollID="+pollID;
	str+="&voteID="+voteID;
	str+="&action=2";
	xmlHttp.onreadystatechange=pollResult;
	xmlHttp.open('POST', requestURL, true);
	xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8"); 
	xmlHttp.send(str);
}


function resetPollProcessMode()
{
	document.getElementById('showResultDiv').style.display="none";
	document.getElementById('proBar').style.display="";
}

function resetPollEditMode()
{
	document.getElementById('showResultDiv').style.display="";
	document.getElementById('proBar').style.display="none";
	
}

function getResults(requestURL,id)
{
	var pollOn=document.getElementById('pollOn').value;
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
 	{
 		alert ("Browser does not support HTTP Request.");
		return;
 	}
	
	resetPollProcessMode();
	var str="id="+id;
	if (pollOn==1)
		str+="&action=1";
	else
		str+="&action=0";
	xmlHttp.onreadystatechange=pollResult;
	xmlHttp.open('POST', requestURL, true);
	xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8"); 
	xmlHttp.send(str);


}


function pollResult()
{
	pollObj=document.getElementById('pollOn');
	
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 	{ 
 		eval(xmlHttp.responseText);
		if (pollObj.value==1)
		{
			showPollResult(ansArr,votesArr,totalVotes);
			pollObj.value=0;
		}
		else
		{
			showPoll(ansArr,idArr);
			pollObj.value=1;
		
		}
	} 
}

function GetXmlHttpObject()
{
	var xmlHttp=null;
	try
 	{
 		// Firefox, Opera 8.0+, Safari
 		xmlHttp=new XMLHttpRequest();
 	}
	catch (e)
 	{
 	//Internet Explorer
 		try
  		{
  			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  		}
 		catch (e)
  		{
  			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  		}
 	}
	return xmlHttp;
}


function showPollResult(ansArr,votesArr,totalVotes)
{
	resetPollEditMode();
	var width=0;
	var resultHTML='<br/><span class="purple_small_text">';
	resultHTML+='<ul>';
	for(var i=1;i<ansArr.length;i++)
	{
		resultHTML+='<li>';
		resultHTML+=ansArr[i];
		resultHTML+='<span class="poll_result"><br/>';
		if (votesArr[i]!=0)
		{
			width= Math.round(votesArr[i]/totalVotes*50);
			if (width<1) width=1;
			resultHTML+='<img height="12px" width="'+width+'px" src="/images/feature_hub/poll_result.jpg" alt="Poll Result"/>';
			resultHTML+=Math.round(votesArr[i]/totalVotes*100*100)/100+'%';
		}
		else
		{
			resultHTML+='0%';
		}
		resultHTML+='</span>';
		resultHTML+='</li>';
	}
	
	resultHTML+='</ul>';
	resultHTML+='</span>';
	document.getElementById('showResultDiv').innerHTML=resultHTML;
	if (isVote)
	{
		document.getElementById('poll_footer_img').src="/images/feature_hub/poll_result_footer1.jpg";
		document.getElementById('poll_map').innerHTML="";
	}
	else
		document.getElementById('poll_footer_img').src="/images/feature_hub/poll_result_footer.jpg";
	isVote=false;
}

function showPoll(ansArr,idArr)
{
	resetPollEditMode();
	var resultHTML="";
	for(var i=1;i<ansArr.length;i++)
	{
		resultHTML+='<input class="purple_small_input" type="radio" name="poll" id="poll'+i+'" value="'+idArr[i]+'"/>';
		resultHTML+='<span class="purple_small_text">';
		resultHTML+='<label for="poll'+i+'" >';
		resultHTML+=ansArr[i];
		resultHTML+='</label></span>';
		
	}
	document.getElementById('showResultDiv').innerHTML=resultHTML;
	document.getElementById('poll_footer_img').src="/images/feature_hub/purple_small_footer.jpg";
}

function getCheckedValue(radioObj) 
{
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) 
	{
		if(radioObj[i].checked) 
		{
			return radioObj[i].value;
		}
	}
	return "";
}

