function bfx(name,onoff) {
	var tt = getById('ts'+name);
	if( tt && onoff ) {
	}
}
function inc(x) { chn('p',true,x); bfx('p',true); }
function dec(x) { chn('p',false,x); bfx('p',false);}
function chn(name,add,v) {
	var t = getById('tt2'+name);
	if( t ) {
		var cv = parseInt( t.innerHTML);
		if( add ) { cv=cv+v; }
		else { cv=cv-v; }
		t.innerHTML = "" + cv;
		upd(name);
	}
}
function upd(name) {
	var tt0 = getById('tt0'+name);
	var tt1 = getById('tt1'+name);
	var tt2 = getById('tt2'+name);
	if( tt0 && tt1 && tt2 ) {
		var v0 = parseInt(tt0.innerHTML);
		var v1 = parseInt(tt1.innerHTML);
		var v2 = parseInt(tt2.innerHTML);
		dbr( name, 100, v0, v1, v2, true );
	}
}
function dbr( name, vmax, v0, v1, vxtra, intOnly ) {
	var totalValue = v0 + v1 + vxtra;
	var maxValue = Math.ceil( (totalValue + 1) / vmax) * vmax;
	var totalWidth = parseInt( getById('ts'+name).style.width );
	var ew = (v0 / maxValue) * totalWidth;
	var bw = (v1 / maxValue) * totalWidth;
	var xw = (vxtra / maxValue) * totalWidth;
	getById('tb0'+name).style.width = ew + "px";
	getById('tb1'+name).style.width = bw + "px";
	getById('tb2'+name).style.width = xw + "px";
	getById('tt0'+name).innerHTML = intOnly ? parseInt(v0) : formatCurrency(v0);
	getById('tt1'+name).innerHTML = intOnly ? parseInt(v1) : formatCurrency(v1);
	getById('tt2'+name).innerHTML = intOnly ? parseInt(vxtra) : formatCurrency(vxtra);
	getById('tt3'+name).innerHTML = intOnly ? parseInt(totalValue) : formatCurrency(totalValue);
	getById('sc1'+name).innerHTML = maxValue/2;
	getById('sc2'+name).innerHTML = maxValue;
}
function doSort( a ) {
	return sendAjaxLink({ 'anchor': a, 'noSpinner':true, 'updateFunc': function(data) {
		$('#pxw').html( data );
	}});
}