var xmlHttp;
var bFav = false;
function GetXmlHttpObject()
{ 
  var objXMLHttp=null
  if (window.XMLHttpRequest)
  {
    objXMLHttp=new XMLHttpRequest()
  }
  else if (window.ActiveXObject)
  {
    objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
  }
  return objXMLHttp
}
function setStar(eid,uid)
{
   var star = document.getElementById('star');
   var url=''
   var temp = new Array();
   var loc = new String(window.location);
	
   temp = loc.split('/');
   if (temp[2] == 'localhost')
   {
      url = 'http://localhost/'+temp[3]+'/';
   }
   else 
   {
      url = 'http://'+temp[2]+'/';
   }
   
   // You must be logged in to add a favorite.
   if (uid == -1) 
   {
   	 if (confirm('You must be logged in to add a favorite.\nWould you like to login?'))
	 {
	 	document.location=url+'/users/login';
	 }
	 return false;
   }
   
   xmlHttp=GetXmlHttpObject();
   if (xmlHttp==null)
   {
     alert('Your browser does not support Asyncronous HTTP Request.\nPlease upgrade your browser.');
     return false;
   } 
   xmlHttp.onreadystatechange=stateChanged ;
   if (star.className == "star star-favorite")
   {
   	 // delete favorite record
	 bFav = true; // it is currntly a favorite
	 url += 'favorites/delete/'+eid+'/'+uid
   }
   else{
   	 // add favorite record
	 bFav = false;
	 url += 'favorites/add/'+eid+'/'+uid
   }
   star.className = "star star-working";
   xmlHttp.open("GET",url,true);
   xmlHttp.send(null);
}

function stateChanged() 
{ 
  if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
  { 
    star = document.getElementById('star');
    if (xmlHttp.responseText == 1 && bFav)
    {
      // deleted favorite record
	  bFav = false;
	  star.className = "star star-no";
    }
    else if (xmlHttp.responseText == 1)
	{
      // added favorite record
	  bFav = true;
	  star.className = "star star-favorite";
    }
	else
	{
	   alert('An error occurred changing the favorite, please try again.')	
	}
  } 
} 
