	var nbrSelected = 0;
	var nbrAll      = 0;
	var sessId    = "-1";
	var bypassPwd   = false;
	var pwdSum      = 0;
	var availBud    = 0.0;
	
	function anySelected()
	{
		return nbrSelected != 0;
	}
	function setNbrSelected( txtNbr )
	{	
		var nbr = parseInt(txtNbr,10);
		nbrSelected = nbr;
	}
	function setNbrAll( nbr )
	{	
		nbrAll = nbr;
	}
	function setSessId( id )
	{
		sessId = id;
	}
	function setBypass( bypass, sum )
	{
		bypassPwd = bypass;
		pwdSum    = sum;
	}
	function setBud( bud )
	{
		availBud = bud;
	}
	//called when nbr selected changes
	function chargeConfirmUpdState()
	{
		labelUpdState();
		exportUpdState();
		rptUpdState();
	}
	
//global utility functions

	//find and set checkboxes if Selected isn't valid option
	function setSelectedCkboxes( allId, selId )
	{
		var allElem = document.getElementById(allId);
		var selElem = document.getElementById(selId);
		if (allElem == null || selElem == null)
			return;
		
		if ( nbrSelected == 0 )
		{
			allElem.checked  = true;
			selElem.disabled = true;
		}
		else
		{
			//if we're transitioning to allow Selected, select it automatically
			if (selElem.disabled == true)
				selElem.checked = true;

			selElem.disabled = false;
		}
	}

	//see if pwd presented is likely match
	function ckPwdSum(txtNm,sum)
	{	//get element, given name or id
		var elemText = document.getElementsByName(txtNm);
		if (elemText != null && elemText.length > 0)
			elemText = elemText[0];
		else
			elemText = document.getElementById(txtNm);
		if (elemText == null)
			return true;	//this is a pgmg error, let user continue
		var txt = elemText.value;
		var i;
		var tsum = 0;
		txt = txt.toLowerCase();
		for ( i=0; i<txt.length; i++)
		{
			var ch = txt.charCodeAt(i);
			tsum += ch;
		}
		return (sum==tsum);
	}

	function max(a,b)
	{
		if (a<b)
			return b;
		return a;
	}
