/* Adapted from VoteItUp */
/* A script for updating the contents of the vote widget on the fly */
/*
USAGE:
vote (object to update with vote count, object to update with after vote text, post id, user id, base url)
*/

/* Note: This script is meant for the bar theme of the plugin */

var xmlHttp;
var currentobj;
var voteobj;
var aftervotetext;
var nextNum;
var id_array = new Array();

//Useful for compatibility
function function_exists( function_name ) { 
    if (typeof function_name == 'string'){
        return (typeof window[function_name] == 'function');
    } else{
        return (function_name instanceof Function);
    }
}

//Javascript Function for JavaScript to communicate with Server-side scripts
function lg_AJAXrequest(scriptURL) {
	xmlHttp=zGetXmlHttpObject()
if (xmlHttp==null)
  {
  alert ("Your browser does not support AJAX!");
  return;
  } 
	xmlHttp.onreadystatechange=zvoteChanged;
	xmlHttp.open("GET",scriptURL,true);
	xmlHttp.send(null);
}

function zGetXmlHttpObject()
{
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 zvoteChanged() 
{ 
if (xmlHttp.readyState==4)
{ 
	
	var votedisp;
	//var votenodisp = document.getElementById('votes' + currentobj);
	//var voteno = xmlHttp.responseText;
	
	//currentobj_obj = document.getElementById(currentobj);
	//voteobj_obj = document.getElementById(voteobj);

	//currentobj_obj.style.width = voteno;
	if(isvote){
	votedisp = document.getElementById('voteid' + currentobj);
	votedisp.innerHTML = "Voted " + "("+nextNum+")";
	isvote=false;
	}
	else{
	votedisp = document.getElementById('sinkid' + currentobj);
	votedisp.innerHTML = "Voted " + "("+nextNum+")";
	}

}


}


function vote(postID, baseURL, nextVal) {
	var userID = 0;
	currentobj = postID;
	for(var i=0;i<id_array.length;i++){
	if(id_array[i]==postID)
	{return;}
	}
	id_array[id_array.length]=postID;
	nextNum = nextVal;
	isvote = true;
	var scripturl = baseURL+"/voteinterface.php?type=vote&uid="+userID+"&pid="+postID+"&auth="+Math.random();
	lg_AJAXrequest(scripturl);
}

function sink(postID, baseURL, nextVal) {
	userID = 0;
	nextNum = nextVal;
	currentobj = postID;
	for(var i=0;i<id_array.length;i++){
	if(id_array[i]==postID)
	{return;}
	}
	id_array[id_array.length]=postID;
	isvote = false;
	var scripturl = baseURL+"/voteinterface.php?type=sink&uid="+userID+"&pid="+postID+"&auth="+Math.random();
	lg_AJAXrequest(scripturl);
}

