// This script is used for the Wordpress Favorite Posts plugin

// This creates the XMLHttpRequest used below to send data to wordpress.
function fp_createXMLHttpRequest() {
	var xmlhttp = null;
	try {
		// Mozilla supports XMLHttpRequest. IE uses ActiveX.
		// Browser detection is bad. Object detection works for any browser
		xmlhttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
	} catch (e) {
		// An alert for when the browser doesn't support ajax.
		alert("Your browser does not support the java script required for favoriting, our apologies.");
	}
	return xmlhttp;
}

var fp_xhr = fp_createXMLHttpRequest();
// This sends wordpress a request to favorite/rank a post
function favorite(id, action, path) {
	fp_xhr.open('get', 'http\://' + path + 'processfavorite.php?id=' + id + '&action=' + action);
	fp_xhr.onreadystatechange = fp_handleResponse;
	fp_xhr.send(null);
}

// This function is called once wordpress responds to the request.
function fp_handleResponse() {
	if(fp_xhr.readyState == 4){
		var response = fp_xhr.responseText.split('|');
		
		if(response[0] == 'done') {
			if(response[1]){
				if(!(response[2])){
					alert("An error has occurred, please try again later.");
				}
				if(response[2] < 0) {
					var prefix = '-';
				} else {
					var prefix = '+';
				}
			var newrating = prefix + response[2];
			//document.getElementById("postratings-"+response[1]).innerHTML = newrating;
				alert('Thank you for being involved. Post favorites are updated every 15 minutes.');
			} else {
				alert('Thank you for being involved. Post favorites are updated every 15 minutes.');
			}
		} else if(response[0] == 'error') {
			alert('Uh-oh: ' + response[1]);
		} else {
			alert("An unknown error has occurred, please try again later.");
		}
	}
}
