var xmlHttp = createXMLHttpRequest();
var flagGetAnswer = true;

function createXMLHttpRequest() {
	var xmlHttp;
	try {
		xmlHttp = new XMLHttpRequest();
	} catch (e) {
		var XMLHttpVersion = new Array("MSXML2.XMLHTTP.6.0",
				"MSXML2.XMLHTTP.5.0", "MSXML2.XMLHTTP.4.0",
				"MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP");
		for ( var i = 0; i < XMLHttpVersion.length && !xmlHttp; i++) {
			try {
				xmlHttp = new ActiveXObject(XMLHttpVersion[i]);
			} catch (e) {
			}
		}
	}
	return xmlHttp;
}

function process(params) {
	if (xmlHttp) {
		if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
			try {
				xmlHttp.open('POST', XML_SOURCE, true);
				xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
				xmlHttp.onreadystatechange = handleServerResponse;
		//	alert(xmlHttp);
				xmlHttp.send(params);

			} catch (e) {
			}
		} else {
			setTimeout('process()', 1000);
		}
	}
}

function selectHandler(radio) {
	var params = radio.name + '=' + radio.value;
	process(params);
}

function handleServerResponse() {
//alert(xmlHttp.status);
	if (xmlHttp.readyState == 4) {
		if (xmlHttp.status == 500) {

			displayXMLDoc(INSERT_DIV_ID);
			//alert('Голосовать можно только один раз!');
		}
	}
}

function displayXMLDoc(divId) {
	var response = xmlHttp.responseXML;
	var rootXML = response.documentElement;
	var question = rootXML.attributes[0].value;
	var answers = rootXML.getElementsByTagName("answer");

	var newTable = document.createElement("table");
	newTable.className = CSS_CLASS_TABLE_RESULT;
	newTable.width = RESULT_TABLE_WIDTH;
	newTable.setAttribute('cellSpacing', TABLE_RESULT_CELLSPACING);

	var newRow = newTable.insertRow(0);
	var newCell = newRow.insertCell(-1);
	newCell.setAttribute('id', CSS_HEADER_ID);
	newCell.innerHTML = question;
//alert('ok');
	for ( var i = 0; i < answers.length; i++) {
		var ansName = answers.item(i).attributes[0].value;
		var currVotes = answers.item(i).getElementsByTagName("votes").item(0).textContent;
		var currProcent = answers.item(i).getElementsByTagName("procent").item(
				0).textContent;

		if (!currVotes) {
			currVotes = answers.item(i).getElementsByTagName("votes").item(0).text;
			currProcent = answers.item(i).getElementsByTagName("procent").item(
					0).text;
		}

		var newRow = newTable.insertRow(-1);
		var newCell = newRow.insertCell(0);
		newCell.innerHTML = ansName + ' <i>(' + currVotes + ')</i>';
		newCell.innerHTML += '<br><img src="' + IMG_SRC
				+ '" border="0" height="7" width="' + currProcent + '">';
		newCell.innerHTML += ' <b>' + currProcent + '%</b>';
	}
	var div = document.getElementById(divId);
	div.innerHTML = '';
	div.appendChild(newTable);
}

