// Voting Functions
// First, some cookie functions to see if they've already voted.
var vidID

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

//AJAX Methods
var xmlHttp

function stateChanged() 
{ 
if (xmlHttp.readyState==4)
{ 
var cookieName = "BUS_Vid_" + vidID;
createCookie(cookieName,"voted","10")
}
}

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 vote(myVote,videoID) {
	if (videoID != "") {
		vidID = videoID;
		var cookieName = "BUS_Vid_" + videoID;
		var cookieObj = readCookie(cookieName);
		//alert(cookieObj);
		if (cookieObj) {
			// don't let them vote, they already have
			alert("You have voted for this video in the past 10 days, please vote again later.");
		} else { 
			// place the vote
			xmlHttp=GetXmlHttpObject()
			if (xmlHttp==null) {
  				alert ("Your browser does not support AJAX!");
  				return;
			} 
			var url="vote.asp";
			url=url+"?action=Cast";
			url=url+"&vid=" + videoID;
			url=url+"&vote=" + myVote;
			url=url+"&sid="+Math.random();
			xmlHttp.onreadystatechange=stateChanged;
			xmlHttp.open("GET",url,true);
			xmlHttp.send(null);
		}
	}
} //vote
