function CalculateSavings(calculator)
{

   var mBase = '' ;
   var mBaseNum = '' ;
   var mAnnualSavingsLow = 0 ;
   var mAnnualSavingsHigh = 0 ;   
 
   mBaseNum = removeCurrency(calculator.expense.value) ;
   if (calculator.whichpage.value == "telecom" ) {
        mAnnualSavingsLow = .14 ;
        mAnnualSavingsHigh = .18 ;
   }
   else {
        mAnnualSavingsLow = .09 ;
        mAnnualSavingsHigh = .12 ;
   }
   
   mBase = mBaseNum * 12 * mAnnualSavingsLow ;
   mBase = Math.round(mBase/100)*100; 
   calculator.savingsl.value =  CommaFormatted(mBase+'') ;
   
   mBase = mBaseNum * 12 * mAnnualSavingsHigh ;
   mBase = Math.round(mBase/100)*100; 
   calculator.savingsh.value =  CommaFormatted(mBase+'') ;
   
   mBase = removeCurrency(calculator.expense.value) ;
   calculator.expense.value = CommaFormatted(mBase) ;
   
   return true ;
}

function ClearEntry(fld) {
    fld.value = '' ;
    return true ;
}

function CheckEntry(fld, e) {

   var sep = 0;
    var key = '';
    var i = j = 0;
    var len = len2 = 0;
    var strCheck = '0123456789';
    var aux = aux2 = '';
    var whichCode = (window.Event) ? e.which : e.keyCode;
    if (whichCode == 13) return true;  // Enter
    if (whichCode == 9) return true;  // Tab    
    if (whichCode == 8) return true;  // Delete (Bug fixed)
    
    key = String.fromCharCode(whichCode);  // Get key value from key code
    if (strCheck.indexOf(key) == -1) 
        return false;  // Not a valid key
        
     if(fld.value.indexOf('$') < 0){
        fld.value = "$" + fld.value ;
      }
     return true ;
 
}
function removeCurrency( strValue ) {
 
  strValue = strValue.replace(/,/g,'');
  strValue = strValue.replace(/[$]/g,'');
  

  return strValue;
}

function CommaFormatted(amount)
{
	var delimiter = ","; // replace comma if desired
	var a = amount.split('.',2)
	var d = a[1];
	var i = parseInt(a[0]);
	if(isNaN(i)) { 
	    return ''; 
	}

	if(d==undefined) { 
	    d = '' ; 
	}

	var minus = '';
	if(i < 0) { 
	    minus = '-'; 
	}
	i = Math.abs(i);
	var n = new String(i);
	var a = [];
	while(n.length > 3)
	{
		var nn = n.substr(n.length-3);
		a.unshift(nn);
		n = n.substr(0,n.length-3);
	}
	
	if(n.length > 0) { 
	    a.unshift(n); 
	}
	n = a.join(delimiter);

	if(d.length < 1) { 
	    amount = n; 
	}
	else { 
	    amount = n + '.' + d; 
	}
	amount = "$" + minus + amount;
	return amount;
}

function EnterPriceField(fld) {
	var mBase ;
	
	mBase = fld.value ;
	mBase = removeCurrency(mBase) ; // clean up anthing that is there.
	fld.value = mBase ;
	return ;
}

function ExitPriceField(fld) {
	var mBase ;
	
	mBase = fld.value ;
	mBase = removeCurrency(mBase) ; // clean up anthing that is there.
	mBase = CommaFormatted(mBase) ;
	fld.value = mBase ;
	return ;
}
