/*
 * Copyright (C) 2000-2006 Bharat Mediratta
 * 
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or (at
 * your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 * 
 */

function GetXmlHttp() {
    var xmlHttp = null;
    try {
	xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
	try {
	    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	} catch (e) {
	    try {
		xmlHttp = new XMLHttpRequest();
	    } catch (e) {
		xmlHttp = false;
	    }
	}
    }

    if (!xmlHttp && typeof XMLHttpRequest!='undefined') {
	xmlHttp = new XMLHttpRequest();
    }

    return xmlHttp;
}

function SendHttpPost(xmlHttp, url, args, callback) {
    xmlHttp.open("POST", url, /* async */ true);
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.onreadystatechange = function() { callback(xmlHttp); }
    xmlHttp.send(args);
}

function SendHttpGet(xmlHttp, url, callback) {
    xmlHttp.open("GET", url, /* async */ true);
    xmlHttp.onreadystatechange = function() { callback(xmlHttp); }
    xmlHttp.send("FOO");
}

var http = GetXmlHttp();

/*
 * Copyright (C) 2007 Michael Writhe
 * 
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or (at
 * your option) any later version.
 * 
 */

function rateItem(itemId, rating, url) {
    SendHttpGet(http, url, handleRatingResponse);
	
	target_id = document.getElementById( "votetext" + itemId );
	target_id.innerHTML = "<Font SIZE=2 FACE=arial COLOR=white>Vote Processed, Updated: Refresh to view results.</font>";
}

function handleRatingResponse() {
    if (http.readyState != 4) {
	return;
    } else {
	if (http.status == 200) {
	    /* Success */
	    var results = http.responseText.split("\n");

	    /* Update display */	
		return true;
	} else {
	    /* FAIL! */
	    alert('Bad status of ' + http.status + ' returned.');
		return false;
	}
    }
}
