f = document.getElementById("savings_calculator");
var overnightcost = 15;
var snailmailcost = .8;
var packages = new Array(25, 50, 75, 100, 150, 250, 500, 750, 1000, 2000, 3000, 4000)
var cost = new Array();

function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

function calc()
{
	var candidates = parseInt(f.candidates.options[f.candidates.selectedIndex].value);
	var overnight = parseInt(f.overnight.options[f.overnight.selectedIndex].value);
	var doccount = parseInt(f.documents.options[f.documents.selectedIndex].value);
	var pages = parseInt(f.pages.options[f.pages.selectedIndex].value);
	
	var wages = parseInt(f.wages.options[f.wages.selectedIndex].value);
	var hoursperday = parseInt(f.hours.options[f.hours.selectedIndex].value);
	
	var subscription = parseInt(f.subscription.options[f.subscription.selectedIndex].value);
	
	var totaldocs = candidates * doccount * 20;
	var totalcandidates = candidates * 20;
	
	document.getElementById('monthlydocs').innerHTML = totaldocs; 
	document.getElementById('totalcandidates').innerHTML = totalcandidates;
	
	var totalpages = totaldocs * pages;
	var totalpagecost = totalpages * .08;
	
	document.getElementById('pagesprinted').innerHTML = totalpages;
	document.getElementById('pagecost').innerHTML = '$' + addCommas(totalpagecost.toFixed(2));
	
	var overnighted = Math.ceil(totalcandidates * overnight / 100);
	var snailmailed = (totalcandidates - overnighted);
	var overnightedcost = overnightcost * overnighted;
	var snailmailedcost = snailmailcost * snailmailed;
	
	document.getElementById('overnighted').innerHTML = overnighted;
	document.getElementById('overnightcost').innerHTML = '$' + addCommas(overnightedcost.toFixed(2));
	document.getElementById('grounded').innerHTML = snailmailed;
	document.getElementById('groundcost').innerHTML = '$' + addCommas(snailmailedcost.toFixed(2));
	
	var hourspermonth = hoursperday * 20;
	var hourscost = hourspermonth * wages;
	
	document.getElementById('hourspermonth').innerHTML = hourspermonth;
	document.getElementById('hourscost').innerHTML = '$' + addCommas(hourscost.toFixed(2));
	
	var totalcost = hourscost+snailmailedcost+overnightedcost+totalpagecost;
	
	document.getElementById('totalcost').innerHTML = '$' + addCommas(totalcost.toFixed(2));
	
	var docsremaining = totaldocs - subscription;
	if (docsremaining < 0) { docsremaining = 0; }
	document.getElementById('remainingdocs').innerHTML = docsremaining;
	document.getElementById('freedocs').innerHTML = subscription;
	document.getElementById('remainingdoccost').innerHTML = '$' + addCommas(docsremaining.toFixed(2));
	
	var laborcost = Math.floor(hourscost / 4);
	document.getElementById('laborcost').innerHTML = '$' + addCommas(laborcost.toFixed(2));
	
	var esigcost = docsremaining + laborcost;
	document.getElementById('esigcost').innerHTML = '$' + addCommas(esigcost.toFixed(2));
	
	var savings = totalcost - laborcost - docsremaining;
	document.getElementById('savings').innerHTML = '$' + addCommas(savings.toFixed(2));
	
	
}
calc();