// JavaScript Document
var hit_or_miss_request;
var hit_or_miss_mutex = 0;

var HM_HIT = 1;
var HM_MISS = 0;

try
{
	hit_or_miss_request = new XMLHttpRequest();
}
catch (trymicrosoft)
{
	try
	{
		hit_or_miss_request = new ActiveXObject("Msxml2.XMLHTTP");
	} 
	catch (othermicrosoft)
	{
		try
		{
			hit_or_miss_request = new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch(failed)
		{
			hit_or_miss_request=null;
		}
	}
}
	
if(hit_or_miss_request==null)
	alert("Error creating XMLHttpRequest!");	//unable to make requests objects

function setHitOrMiss(value, d_id, username)
{
	if (hit_or_miss_mutex == 0)
	{
		hit_or_miss_mutex = 1;
		var url = "ajax/get_hit_or_miss.php?value=" + value + "&d_id=" + d_id + "&username=" + encodeURI(username) + "&dummy=" + new Date().getTime();
		
		hit_or_miss_request.open("GET", url, true);
		
		hit_or_miss_request.onreadystatechange = updateHitOrMiss;
		hit_or_miss_request.send(null);
	}	
}

function updateHitOrMiss()
{
	if(hit_or_miss_request.readyState==4)
	{
		if(hit_or_miss_request.status==200)
		{
			document.getElementById("hit_or_miss_ajax").innerHTML = hit_or_miss_request.responseText;
			hit_or_miss_mutex = 0;
		}
		else
		{
			alert("Error! Request status is "+hit_or_miss_request.status);
		}
	}
}

function sendHitMiss(hitOrMiss, d_id, username) {
	if (hit_or_miss_mutex == 0) {
		hit_or_miss_mutex = 1;
		var url = "ajax/tight_hit_or_miss.php?value=" + hitOrMiss + "&d_id=" + d_id + "&username=" + encodeURI(username) + "&dummy=" + new Date().getTime();
		
		hit_or_miss_request.open("GET", url, true);
		
		hit_or_miss_request.onreadystatechange = updateHitMiss;
		hit_or_miss_request.send(null);
	}	
}

function updateHitMiss() {
	if (hit_or_miss_request.readyState == 4) {
		if (hit_or_miss_request.status == 200) {

			var hmData = hit_or_miss_request.responseText.split("\n");
			hmData = hmData[1].split(" ");
			var hmEvent = hmData[0];
			
			if (hmEvent != "fail") {
				var hmEventValue = hmData[1];
				
				var hmOpposite = hmData[2];
				var hmOppositeValue  = hmData[3];
				
				var hmDevelopment = hmData[4];

				var hmEventEID = "hitmiss_" + hmDevelopment + "_" + hmEvent;
				var hmEventElement = document.getElementById(hmEventEID);
				hmEventElement.innerHTML = hmEventValue;
				
				JQHighlight({domID: hmEventEID,startColor: "#FFFFFF",middleColor: "#a4ff9d", endColor: "FFFFFF"});
				
				if (hmOppositeValue != "-") {
					var hmOppositeEID = "hitmiss_" + hmDevelopment + "_" + hmOpposite;
					var hmOppositeElement = document.getElementById(hmOppositeEID);
					hmOppositeElement.innerHTML = hmOppositeValue;
					JQHighlight({domID: hmOppositeEID,startColor: "#FFFFFF",middleColor: "#ff9d9d", endColor: "FFFFFF"});
				}
			}
			hit_or_miss_mutex = 0;
		} else {
			alert("Error! Request status is "+hit_or_miss_request.status);
		}
	}
}