function CleanNum(val) {
	var re=/[^0-9.-]+/g;
	val=String(val).replace(re,"");
	return isNaN(val) ? 0 : Number(val);
}

function NearestCent(val) {
	return Math.round(CleanNum(val)*100)/100;
}

function RoundSell(val) {
	if (val<10) return Math.ceil(CleanNum(val)*10)/10;
	else return Math.ceil(CleanNum(val));
}

function Format(val,sym,pre) {
	val=CleanNum(val);
	var sgn=val<0 ? "-" : "";
	val=String(Math.round(Math.abs(val)*Math.pow(10,pre)));
	while (val.length<(pre+1)) val="0"+val;
	var len=val.length;
	var pos=len-pre;
	var spa=pre ? "." : "";
	while (pos>0) {
		val=val.substring(0,pos)+spa+val.substring(pos,len);
		len=val.length;
		pos-=3;
		spa=",";
	}
	val= sym=="%" ? sgn+val+"%" : sgn+"$"+val;
	return(val);
}

function HTMLStr(str) {
	var re=/"/g;
	return String(str).replace(re,"&#34;");
}

function ToggleTax() {
	ToggleTax2(parent.Price);
	ToggleTax2(parent.Quote);
}

function ToggleTax2(obj) {
	if (!obj) return;
	obj.IncTax^=1;
	obj.styIncTax.disabled=obj.IncTax;
	obj.styExcTax.disabled=!obj.IncTax;
}


function Pad(c,g,p) {
	var id=String(Number(c)+1000).substr(1,3);
	if (g>=0) id+=String(Number(g)+1000).substr(1,3);
	if (p>=0) id+=String(Number(p)+1000).substr(1,3);
	return id;
}
