// JavaScript Document
function selectRadio(tableName, radioButtonName,rowName)
{
    var table = document.getElementById(tableName);
	var radioButton = document.getElementById(radioButtonName);
	var row = document.getElementById(rowName);

    if (table && radioButton && row) {
        var rows = table.getElementsByTagName('tr');

    	radioButton.checked = true;
    	for (var i = 0; i < rows.length; i++) {
            rows[i].className = 'alternateproductdefault';
    	}
    	row.className = 'alternateproductselect';
    }
	return true;
}

function hoverRow(radioButtonName, rowName)
{
	var radioButton = document.getElementById(radioButtonName);
	var row = document.getElementById(rowName);

    if (radioButton && row) {
    	if (!radioButton.checked) {
    		row.className = 'alternateproducthover';
    	}
    }
	return true;
}

function clearRow(radioButtonName, rowName)
{
    var result = null;
    var radioButton = document.getElementById(radioButtonName);
    var row = document.getElementById(rowName);

    if (radioButton && row) {
        if (radioButton.checked) {
            row.className = 'alternateproductselect';
        } else {
            row.className = 'alternateproductdefault';
        }
        if (radioButton.checked) {
            result = radioButton;
        }
    }
    return result;
}

function uncheckRadio(radioButtonName)
{
    var result = false;
    var radioButton = document.getElementById(radioButtonName);

    if (radioButton) {
        result = radioButton.checked;
        radioButton.checked = false;
    }
    return result;
}

function UpdateSystemPrice(BasePrice) 
{
  var forms, el, radioGroup;
  var i = end = j = 0;
	if (document.getElementsByTagName) {
		forms = document.getElementsByTagName('form');
		/* Loop through all the FORMs */
		for (i, end = forms.length; i < end; i++) {
			/* Loop through each form element */
			for (j = 0, elsEnd = forms[i].elements.length; j < elsEnd; j++) {
				el = forms[i].elements[j];
				/* If this is a checked radio button . */
				if (el.type == 'radio' && el.checked && el.value != 0) {
						cstname = el.id.replace("rad", "cst");
						partval = document.getElementById( cstname ).value;
						BasePrice = Number(BasePrice) + Number(partval); 
					}
				if (el.type == 'text' && el.value != 0 && el.id != 'Quantity') {
						cstname = el.id.replace("txt", "cst");
						partval = document.getElementById( cstname ).value;
						partquant = document.getElementById( el.id ).value;
						BasePrice = Number(BasePrice) + ( Number(partval) * Number(partquant));
					}
			}
		}
	}

	quantity = document.getElementById('Quantity').value;
	BasePrice = Number(quantity) * Number(BasePrice);
	document.getElementById('sys_subtotal1').innerHTML = "$" + addCommas(BasePrice.toFixed(2));
	document.getElementById('sys_subtotal2').innerHTML = "$" + addCommas(BasePrice.toFixed(2));
	document.getElementById('sys_subtotal3').value = BasePrice.toFixed(2);
}

function UpdateSystemPriceTax(BasePrice) 
{
	BasePrice = Number(BasePrice);
	var forms, el, radioGroup;
	var i = end = j = 0;
	if (document.getElementsByTagName) {
	forms = document.getElementsByTagName('form');
	/* Loop through all the FORMs */
		for (i, end = forms.length; i < end; i++) {
		/* Loop through each form element */
			for (j = 0, elsEnd = forms[i].elements.length; j < elsEnd; j++) {
			el = forms[i].elements[j];
			/* If this is a checked radio button . */
				if (el.type == 'radio' && el.checked) {
						cstname = el.id.replace("rad", "cst");
						partval = document.getElementById( cstname ).value;
						BasePrice = Number(BasePrice) + Number(partval); 
				}
			}
		}
	}
	
	quantity = document.getElementById('Quantity').value;
//	tax = document.getElementById('Tax').value;
	document.getElementById('BaseCost').value = BasePrice.toFixed(2);
	disc = Number(BasePrice) * (Number(document.getElementById('Rate').value) + Number(document.getElementById('Volume').value)) / 100;
	BasePrice = Number(quantity) * (Number(BasePrice) - Number(disc));
//	statetax = Number(BasePrice) * Number(tax) / 100;
//	document.getElementById('StateTax').value = statetax.toFixed(2);	
//	BasePrice = Number(BasePrice) + (Number(BasePrice) * Number(tax) / 100);
	document.getElementById('sys_subtotal1').innerHTML = "$" + addCommas(BasePrice.toFixed(2));
	document.getElementById('sys_subtotal2').innerHTML = "$" + addCommas(BasePrice.toFixed(2));
	document.getElementById('sys_subtotal3').value = BasePrice.toFixed(2);
	document.getElementById('Discount').value = disc.toFixed(2);
	
}

function submitform(target)
{
	document.parts.action = target;
	document.parts.method = "POST";
	document.parts.submit();	
}

function getclientinfo() {
	var xmlhttp;
	
	if (window.XMLHttpRequest) {
		xmlhttp = new XMLHttpRequest();
//		xmlhttp.overrideMimeType("TEXT/XML");
	} else if (window.ActiveXObject) {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}

	xmlhttp.open("POST", "Includes/checkinfo.php", true);
	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			var results = xmlhttp.responseText;
			var lines = results.split("\n");
			var data = lines.shift();		
			// The HTML search data is everything left over
			var search_results = lines.join("");

			document.getElementById('Tax').value = data;	
			document.getElementById('Rate').value = search_results;
			getclientinfo2();
		}
	}

	var params = "";
	xmlhttp.send(params);
}

function getclientinfo2() {
	var xmlhttp;
	
	if (window.XMLHttpRequest) {
		xmlhttp = new XMLHttpRequest();
//		xmlhttp.overrideMimeType("TEXT/XML");
	} else if (window.ActiveXObject) {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}

	xmlhttp.open("POST", "Includes/checkvolume.php", true);
	xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

	xmlhttp.onreadystatechange = function() {
		if (xmlhttp.readyState == 4) {
			var results = xmlhttp.responseText;
			var lines = results.split("\n");
			// The HTML search data is everything left over
			var search_results = lines.join("");
			document.getElementById('Volume').value = search_results;
		}
	}
	volume = document.getElementById('Quantity').value;
	var params = "vol=" + volume;
	xmlhttp.send(params);
}

function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

