
function goCart() {
	document.location = 'cart2.asp';
}
function checkEmail(x) {
	var email = document.getElementById(x).value;
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email)) {
		return true;
	}
	alert("Invalid E-mail Address! Please re-enter.");
	return false;
}

function calcCost(item_id, x) {	
	
	// here we will add some HACKS
	
	var d = document.getElementById('cost' + item_id);
	var s, a, i;
	i = 1;
	if (d) {
		s = parseFloat(d.getAttribute('baseCost'));
		// s = convertCashToNumber(d.value);
		a = document.getElementById('att' + item_id + 'no' + i);
		while (a) {
			// s = s + convertCashToNumber(a.options[a.selectedIndex].getAttribute('cdiff'));
			s = s + parseFloat(a.options[a.selectedIndex].getAttribute('cdiff'));
			i++;
			a = document.getElementById('att' + item_id + 'no' + i);
		}
		d.value = formatCurrency(s);
	}	
}
function convertCashToNumber(x) {
	var s = x.replace(/\$/g,'');
	s = s.replace(/\,/g,'');
	s = s*1;
	// alert(x + ' ' + s);
	return s;
}

function hlp(attId) {
	window.open('help.asp?a=' + escape(attId), 'bikehelp', 'width=400,height=500,toolbar=no,scrollbars=yes,location=no');
}

function formatCurrency(num) {
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))
	num = "0";
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
	cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
	num = num.substring(0,num.length-(4*i+3))+','+
	num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') + '$' + num + '.' + cents);
}

function NewXmlHttp() {
	var XMLHttp=null
	if (window.XMLHttpRequest) {
  		XMLHttp=new XMLHttpRequest()
	} else if (window.ActiveXObject) {
		XMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
	}
	return XMLHttp;
}

function point(iX, iY) {
	this.x = iX;
	this.y = iY;
}
function getRelCoords(tag1, tag2) {
	var oTmp = tag1;
	var pt = new point(0,0);
	var c = 0;
	do {
		pt.x += oTmp.offsetLeft;
		pt.y += oTmp.offsetTop;
		oTmp = oTmp.offsetParent;  				
		c++;
	} while(oTmp != tag2 && c < 10);
	// if (c > 4) alert('no good');
	return pt;
}
function getCoords(aTag) {	
	var oTmp = aTag;
	var pt = new point(0,0);
	do {
		pt.x += oTmp.offsetLeft;
		pt.y += oTmp.offsetTop;
		oTmp = oTmp.offsetParent;  				
	} while(oTmp.tagName!="BODY");
	//alert('END:'+oTmp.offsetTop);
	return pt;
}
var menuFlag = false;
function menuMe(x, cat) {
	menuFlag = true;
	var p = new point(0,0);
	p = getCoords(x);
	var div;
	div = document.getElementById('menuDiv');
	if (div) {
		var xpos, ypos;
		xpos = p.x-2;
		ypos = p.y+18;
		
		div.style.position = 'absolute';
		div.style.left = xpos + 'px';
		div.style.top = ypos + 'px';

		div.innerHTML = document.getElementById('d' + cat).innerHTML;

		/*		
		var xmlHTTP = NewXmlHttp();
		var u = 'bike_pop.asp?cat='+ escape(cat);
		xmlHTTP.open('GET', u, false);
		xmlHTTP.send(null);
		div.innerHTML = xmlHTTP.responseText;
		*/
		div.style.display = '';
	}
}

function hideMenu() {
	if (!menuFlag) {
		var div;
		div = document.getElementById('menuDiv');
		div.style.display='none';
	}
}
function menuOut() {
	menuFlag = false;
	setTimeout('hideMenu()', 200);
}
function menuIn() {
	// Don't hide the div yet, i'm still in it!
	menuFlag = true;
}

function getKeyStroke(evt) {
	// works in all browsers
	return evt.keyCode ? evt.keyCode : evt.which ? evt.which : evt.charCode;
}

function numbersOnly(evt) {
	var asciiCode = getKeyStroke(evt);
	if (asciiCode==8 || asciiCode==9) return true; // 8=backspace, 9=tab
	if (asciiCode > 47 && asciiCode < 59) { return true; } else return false;
}

function btrim(str) {
	return str.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
}

function isUsaState(st) {
	st = btrim(st);
	st = st.toUpperCase();
	if (st=='AL' || st=='AK' || st=='AZ' || st=='AR' || st=='CA' || st=='CO' || st=='CT' || st=='DE' || st=='DC' || st=='FL' || st=='GA' || st=='HI' || st=='ID' || st=='IL' || st=='IN' || st=='IA' || st=='KS' || st=='KY' || st=='LA' || st=='ME' || st=='MD' || st=='MA' || st=='MI' || st=='MN' || st=='MS' || st=='MO' || st=='MT' || st=='NE' || st=='NV' || st=='NH' || st=='NJ' || st=='NM' || st=='NY' || st=='NC' || st=='ND' || st=='OH' || st=='OK' || st=='OR' || st=='PA' || st=='RI' || st=='SC' || st=='SD' || st=='TN' || st=='TX' || st=='UT' || st=='VT' || st=='VA' || st=='WA' || st=='WV' || st=='WI' || st=='WY') {
		return true;
	} else {
		return false;
	}
}

function isUsaZip(zip) {
	zip = btrim(zip);
	var i;
	var c;
	if (zip.length != 5) return false;
	for (i=0; i < zip.length; i++) {
		c = zip.charAt(i);
		if (c=='0' || c=='1' || c=='2' || c=='3' || c=='4' || c=='5' || c=='6' || c=='7' || c=='8' || c=='9') {
		} else {
			return false;
		}
	}
	return true;
}