var CV_PRICE = "199.00";
var CV_UPDATE_PRICE = "179.00";
var CV_COMBO_PRICE = "99.00";
var CV_EXPANDED_PRICE = "69.00";
var CV_COMMERCIAL_PRICE = "69.00";
var PV_PRICE = "49.00";
var PV_UPDATE_PRICE = "39.00";
var PV_COMBO_PRICE = "59.00";
var PV_EXPANDED_PRICE = "29.00";
var PV_COMMERCIAL_PRICE = "39.00";
var DISK_PRICE = "10.00";
var GUIDE_PRICE = "5.00";
var FIRST_CLASS_PRICE = "6.00";
var OVERNIGHT_PRICE = "19.00";
var COD_PRICE = "38.00";
var EXPRESS_PRICE = "25.00";
var GST = .05;
var PST = .08;
var MAX_GUIDE_ORDER = 100;
var MAX_DISK_ORDER = 200;
var HST = .13;

var isNN = (navigator.appName.indexOf("Netscape")!=-1);

function autoTab(input,len, e) {
var keyCode = (isNN) ? e.which : e.keyCode;
var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
if(input.value.length >= len && !containsElement(filter,keyCode)) {
input.value = input.value.slice(0, len);
input.form[(getIndex(input)+1) % input.form.length].focus();
}

function containsElement(arr, ele) {
var found = false, index = 0;
while(!found && index < arr.length)
if(arr[index] == ele)
found = true;
else
index++;

return found;
}

function getIndex(input) {
var index = -1, i = 0, found = false;
while (i < input.form.length && index == -1)
if (input.form[i] == input)index = i;
else i++;
return index;
}

return true;
}

function getSelectedButton(buttonGroup){
	for (var i = 0; i < buttonGroup.length; i++) {
		if (buttonGroup[i].checked) {
			return i + 1
		}
	}

	return false
}

function isEmpty(inputStr) {
	if (inputStr == null || inputStr == "") 
	{
		return true
	}

	return false
}

// positive number decimal formatting function

function Format (expr, decplaces) {
	var str = "" + Math.round (eval(expr) * Math.pow(10,decplaces))

	// pad small value strings with zeros to the left of rounded number
	while (str.length <= decplaces) {
		str = "0" + str
	}

	// establish location of decimal point
	var decpoint = str.length - decplaces

	// assemble final result
	return str.substring(0,decpoint) + "." + str.substring(decpoint,str.length);
}

function IsNumber(inputVal) {
	oneDecimal = false
	inputStr = inputVal.toString() 

	for (var i = 0; i < inputStr.length; i++) 
	{
		var oneChar = inputStr.charAt(i)

		if (i == 0 && oneChar == "-") 
		{ 
			continue
		}

		if(oneChar == "." && !oneDecimal) 
		{
			oneDecimal = true
			continue
		}

		if(oneChar < "0" || oneChar > "9") 
		{
			return false
		}
	} 

	return true 
} 

function IsDigits(inputVal) {
inputStr = inputVal.toString() 
	for (var i = 0; i < inputStr.length; i++) 
	{
		var oneChar = inputStr.charAt(i)

		if(oneChar < "0" || oneChar > "9") 
		{
			return false
		}
	} 

	return true 
}

function ShowErrorMessage(){
	alert("Please enter all required information (*) before submitting.")
}

function GetAllValues(form){
var elementName = ""
var elementValue = ""
var allValues = ""
var selIndex = 0

allValues = allValues + "<#####"  + String.fromCharCode(13) + String.fromCharCode(10)

	for (var x = 0; x < form.elements.length; x++) {
			selIndex = 0
			var elementName = ""
			var elementValue = ""

			switch (form.elements[x].type) 
			{
			 case "text":
				elementName = form.elements[x].name 
				elementValue = form.elements[x].value
			break;

			 case "select-one":
				elementName = form.elements[x].name 
				selIndex =  form.elements[x].selectedIndex
				elementValue = form.elements[x].options[selIndex].text
			 break;

			 case "checkbox":
				if (form.elements[x].checked)
				{
					elementName = form.elements[x].name
					elementValue = "TRUE"
				}
			 break;

			 case "textarea":
				elementName = form.elements[x].name
				elementValue = form.elements[x].value
			 break;

			 case "radio":
				if (form.elements[x].checked)
				{
					elementName = form.elements[x].name
					elementValue = form.elements[x].value
				}
			 break;
			 }			 

		if (!isEmpty(elementValue))
		{
			allValues = allValues + elementName + "<:=:>" + elementValue + "<:$:>" + String.fromCharCode(13) + String.fromCharCode(10)
		}
	}	

	allValues = allValues + "#####>" 

	return allValues
}
