var XMLHttp;
var targetDiv;
var divToClear;

function CreateXMLHttpRequest() {
	if (window.ActiveXObject) {
		ro = new ActiveXObject('Microsoft.XMLHTTP');
	} else if (window.XMLHttpRequest) {
		ro = new XMLHttpRequest();
	}
	return ro;
}

function writeContent(divName,data) {	
	document.getElementById(divName).innerHTML = data;
}

function setData() {
	if ((XMLHttp.readyState == 4) || (XMLHttp.readyState == 0)) {
		if (XMLHttp.status == 200) {
			if (XMLHttp.responseText != '') {
				writeContent(targetDiv,XMLHttp.responseText);
			} else {
				setTimeout('setData()', 500);
			}
		}
	}
}

function splitResponse(response) {
	respParts = response.split('|');
	if (respParts[0] == "show") {
		writeContent(targetDiv,respParts[1]);
	} else {
		eval(respParts[1]);
	}
}

function setDataWithEval() {
	if ((XMLHttp.readyState == 4) || (XMLHttp.readyState == 0)) {
		if (XMLHttp.status == 200) {
			if (XMLHttp.responseText != '') {
				splitResponse(XMLHttp.responseText);
			} else {
				setTimeout('setDataWithEval()', 500);
			}
		}
	}
}

function setDataAndClear() {
	if ((XMLHttp.readyState == 4) || (XMLHttp.readyState == 0)) {
		if (XMLHttp.status == 200) {
			if (XMLHttp.responseText != '') {
				writeContent(targetDiv,XMLHttp.responseText);
				writeContent(divToClear,'');
			} else {
				setTimeout('setDataAndClear()', 500);
			}
		}
	}
}

function getData(url,arg,target) {
	method = 'GET';
	url += '?arg=' + escape(arg);
	targetDiv = target;
	XMLHttp = CreateXMLHttpRequest();
	XMLHttp.onreadystatechange = setData;
	XMLHttp.open(method,url);
	XMLHttp.send(null);
}

function getPartRadio(formName,target) {
	theForm = document.getElementById(formName);
	method = 'GET';
	url = "../ajax/getPartRadio.php?";
	targetDiv = target;
	prefix = theForm.prefix.value;
	if (prefix) url += "prefix=" + escape(prefix) + "&";
	middle = theForm.middle.value;
	if (middle) url += "middle=" + escape(middle) + "&";
	suffix = theForm.suffix.value;
	if (suffix) url += "suffix=" + escape(suffix);
	XMLHttp = CreateXMLHttpRequest();
	XMLHttp.onreadystatechange = setData;
	XMLHttp.open(method,url);
	XMLHttp.send(null);
}

function getPartCheckBoxes(formName,target) {
	theForm = document.getElementById(formName);
	method = 'GET';
	url = "../ajax/getPartCheckboxes.php?";
	targetDiv = target;
	prefix = theForm.prefix.value;
	if (prefix) url += "prefix=" + escape(prefix) + "&";
	middle = theForm.middle.value;
	if (middle) url += "middle=" + escape(middle) + "&";
	suffix = theForm.suffix.value;
	if (suffix) url += "suffix=" + escape(suffix);
	XMLHttp = CreateXMLHttpRequest();
	XMLHttp.onreadystatechange = setData;
	XMLHttp.open(method,url);
	XMLHttp.send(null);
}

function getKitPartRadioList(field,columnID,formName,target,callback) {
	theForm = document.getElementById(formName);
	method = 'GET';
	url = "../ajax/getKitPartRadioList.php?";
	targetDiv = target;
	if (field.value != "") {
		url += "term=" + escape(field.value);
		url += "&kit_id=" + theForm.kit_id.value;
		url += "&kit_type_id=" + theForm.kit_type_id.value;
		url += "&column+id=" + columnID;
		url += "&target=" + escape(target);
		url += "&callback=" + escape(callback);
		XMLHttp = CreateXMLHttpRequest();
		XMLHttp.onreadystatechange = setDataWithEval;
		XMLHttp.open(method,url);
		XMLHttp.send(null);
	}
}

function getFeaturedPartRadioList(field,formName,target,callback) {
	theForm = document.getElementById(formName);
	method = 'GET';
	url = "../ajax/getFeaturedPartRadioList.php?";
	targetDiv = target;
	if (field.value != "") {
		url += "term=" + escape(field.value);
		url += "&form=" + escape(formName);
		url += "&target=" + escape(target);
		url += "&callback=" + escape(callback);
		XMLHttp = CreateXMLHttpRequest();
		XMLHttp.onreadystatechange = setDataWithEval;
		XMLHttp.open(method,url);
		XMLHttp.send(null);
	}
}

function setFeaturedItem(formName,retailPrice,partID,toClear,target) {
	theForm = document.getElementById(formName);
	theForm.featured_price.value = retailPrice;
	theForm.feature_name.focus();
	writeContent(toClear,'');
	getData('../ajax/showPartWithHidden.php',partID,target)
}

function setPartColumn(rd,kit_id,kit_type_id,column_id,toClear,target) {
	method = 'GET';
	url = "../ajax/setColumn.php?";
	targetDiv = target;
	divToClear = toClear;
	if (rd.checked == 1) {
		url += "part_id=" + rd.value;
		url += "&kit_id=" + kit_id;
		url += "&kit_type_id=" + kit_type_id;
		url += "&column+id=" + column_id;
		XMLHttp = CreateXMLHttpRequest();
		XMLHttp.onreadystatechange = setDataAndClear;
		XMLHttp.open(method,url);
		XMLHttp.send(null);
	}
}

function autoSetPartColumn(part_id,kit_id,kit_type_id,column_id,toClear,target) {
	method = 'GET';
	url = "../ajax/setColumn.php?";
	targetDiv = target;
	divToClear = toClear;
	url += "part_id=" + part_id;
	url += "&kit_id=" + kit_id;
	url += "&kit_type_id=" + kit_type_id;
	url += "&column+id=" + column_id;
	XMLHttp = CreateXMLHttpRequest();
	XMLHttp.onreadystatechange = setDataAndClear;
	XMLHttp.open(method,url);
	XMLHttp.send(null);
}

function clearBoth(target,callback) {
	writeContent(target,'');
	writeContent(callback,'-');
}

function showDiv(theDiv) {
	document.getElementById(theDiv).style.zIndex = 200;
	document.getElementById(theDiv).style.display = 'block';
}

function hideDiv(theDiv) {
	document.getElementById(theDiv).style.zIndex = -1;	
	document.getElementById(theDiv).style.display = 'none';
}

