function getCheckedValue(radioObj) {
	if(!radioObj)
	return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
	if(radioObj.checked)
	return radioObj.value;
	else
	return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}


var retries=0;

function ajaxRequest (post_type, post_url, target_div, form_name)
{
	if (!window.XMLHttpRequest)
	{
		return;
	}

	var matrix_submit = browser('matrix_submit');
	matrix_submit.value = 'Loading...';
	matrix_submit.disabled = true;

	var req = new XMLHttpRequest();

	req.open(post_type, post_url, true);
	req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

	var requestTimer = setTimeout(function()
	{
		if (retries>2)
		{
			writeContent(target_div, 'Communication with the server was interrupted.  Please try again.');
			matrix_submit.value = 'Find!';
			matrix_submit.disabled = false;
		}
		else
		{
			retries++;
			ajaxRequest(post_type, post_url, target_div, form_name);
		}
	}, 5000);

	req.onreadystatechange = function()
	{
		if (req.readyState != 4) {
			return;
		}

		clearTimeout(requestTimer);
		retries=0;

		if (req.status != 200)
		{
			writeContent(target_div, 'An unknown error has occured.  Please try again in a few minutes. (ERR' + req.status + ')');
			matrix_submit.value = 'Find!';
			matrix_submit.disabled = false;

			return;
		}

		writeContent(target_div, req.responseText);
		matrix_submit.value = 'Find!';
		matrix_submit.disabled = false;
	}

	if (post_type == 'POST')
	{
		var poststr = "";

		for (var form_loop=0; form_loop<document.forms.length; form_loop++)
		{
			if (document.forms[form_loop].name == form_name)
			{
				for (var elems=0; elems<document.forms[form_loop].length;elems++)
				{
					if (document.forms[form_loop].elements[elems].name == 'submit')
					{
						poststr = poststr + "" + document.forms[form_loop].elements[elems].name + "=" + encodeURI(document.forms[form_loop].elements[elems].value) + "&";
					}
					else
					{
						val = getCheckedValue(document.forms[form_loop].elements[elems]);
						if (val !== '')
						{
							poststr = poststr + "" + document.forms[form_loop].elements[elems].name + "=" + getCheckedValue(document.forms[form_loop].elements[elems]) + "&";
						}
					}
				}
			}
		}

		req.send(poststr);
	}
	else
	{
		req.send(null);
	}
}

function ajaxReady ()
{
	if (window.XMLHttpRequest)
	{
		var matrix_form = browser('matrix_form');
		var matrix_submit = browser('matrix_submit');

		matrix_form.onsubmit = function () { return false; }
		matrix_form.action = '';
		matrix_form.method = '';
		matrix_submit.onclick = function () { ajaxRequest('POST', 'http://www.gotvape.com/matrix_results.php', 'matrix_results', 'matrix_form'); }
		ajaxRequest('POST', 'http://www.gotvape.com/matrix_results.php', 'matrix_results', 'matrix_form');
	}
}