function computeTotal(myForms) {
    var sessions = 0; // The number of sessions registered for
	var tempTotal = 0; // Store temporary sums
	var numOfLessons = 0;
	var grandTotal = 0;
	var radioValue = "";
	var justTheTuition = 0;
	//myForms = document.forms[0];

	// Compute total of sessions registered for

	if (myForms.Session1.checked == true) 
		++sessions;			
	if (myForms.Session2.checked == true )
		++sessions;		
	if (myForms.Session3.checked == true )
		++sessions;

	//alert("Sessions= " + parseInt(sessions));
	
	radioValue = getCheckedValue(myForms.feeTuition);
	switch(radioValue)
		{
		case "2R":
		tempTotal = 1600;
		break;
		case "4R":
		tempTotal = 3000;
		break;
		case "6R":
		tempTotal = 4400;
		break;
		case "2D":
		tempTotal = 1100;
		break;
		case "4D":
		tempTotal = 2000;
		break;
		case "6D":
		tempTotal = 2900;
		break;
		}

	myForms.feeTuitionTotal.value = tempTotal.toFixed(2);
	
	myForms.feeActivityTotal.value = (50 * sessions).toFixed(2);
		
	// Compute total for optional private lessons

	numOfLessons = myForms.feeHourLessons1.selectedIndex + myForms.feeHourLessons2.selectedIndex + myForms.feeHourLessons3.selectedIndex;
	tempTotal = numOfLessons * 70;
	numOfLessons = myForms.feeHalfHourLessons1.selectedIndex + myForms.feeHalfHourLessons2.selectedIndex + myForms.feeHalfHourLessons3.selectedIndex;
	tempTotal = tempTotal + (numOfLessons * 35);
	myForms.feeLessonTotal.value = tempTotal.toFixed(2);
	
	// Compute total for instrument rental
	
	myForms.feeRentalTotal.value = (myForms.feeRentalWeeks.value * 50).toFixed(2);

	// Are they attending the Composition Program, session 1?
	
	if (myForms.Composition1.checked) {
		myForms.feeComposition1Total.value = (200).toFixed(2); }
	else {
		myForms.feeComposition1Total.value = (0).toFixed(2); }

	// Are they attending the Composition Program, session 2?
	
	if (myForms.Composition2.checked) {
		myForms.feeComposition2Total.value = (200).toFixed(2); }
	else {
		myForms.feeComposition2Total.value = (0).toFixed(2); }
				
	// Are they attending the Composition Program, session 3?
	
	if (myForms.Composition3.checked) {
		myForms.feeComposition3Total.value = (200).toFixed(2); }
	else {
		myForms.feeComposition3Total.value = (0).toFixed(2); }
		
	// Are they attending the saxophone institute?
	
	if (myForms.SaxInst.checked) {
		myForms.feeSaxInstTotal.value = (200).toFixed(2); }
	else {
		myForms.feeSaxInstTotal.value = (0).toFixed(2); }
		

	// Are they attending the flute institute?
	
	if (myForms.fluteInst.checked) {
		myForms.feeFluteInstituteTotal.value = (1400).toFixed(2); }
	else {
		myForms.feeFluteInstituteTotal.value = (0).toFixed(2); }
		
	
	// Now, add all of the subtotals together to come up with the grand total
	
	grandTotal = parseInt(myForms.feeApplicationTotal.value)  + parseInt(myForms.feeTuitionTotal.value) + parseInt(myForms.feeActivityTotal.value) + parseInt(myForms.feeLessonTotal.value) + parseInt(myForms.feeBankDepositTotal.value) + parseInt(myForms.feeRentalTotal.value) + parseInt(myForms.feeComposition1Total.value) + parseInt(myForms.feeComposition2Total.value) + parseInt(myForms.feeComposition3Total.value) + parseInt(myForms.feeSaxInstTotal.value) + parseInt(myForms.feeFluteInstituteTotal.value);

	myForms.feeGrandTotal.value = grandTotal.toFixed(2) + "";
	
// ****************************************************************************
// Are we in the admin module? If so, there are additional things to calculate.
// ****************************************************************************

if (document.getElementById("feeAmountReceived") !== null) {
var balanceDue;
balanceDue =0;
justTheTuition = Number(myForms.feeTuitionTotal.value);
myForms.feeGrandTotal.value = (Number(myForms.feeGrandTotal.value) + Number(myForms.feeTransportation.value) + Number(myForms.feeExtraNights.value)).toFixed(2);
	balanceDue = Number(myForms.feeGrandTotal.value) - Number(myForms.feeDepositAmount.value);
	balanceDue = balanceDue - Number(myForms.feeAmountReceived.value);

	switch (myForms.categorySelect.value) {
		case "S":
		myForms.feeCatDiscount.value = "0.00";
		break;
		case "FA":
		myForms.feeCatDiscount.value = (Number(justTheTuition) * .25).toFixed(2);
		break;
		case "CIT":
		myForms.feeCatDiscount.value = (Number(justTheTuition) * .50).toFixed(2);
		break;
		case "JC": case "C": case "SC": case "TA": case "F": case "A":
		myForms.feeCatDiscount.value = (Number(justTheTuition) * 1).toFixed(2);
		break;
	
	}
	balanceDue = balanceDue - Number(myForms.feeCatDiscount.value); 
	balanceDue = balanceDue - Number(myForms.feeScholarshipAid.value);
	balanceDue = balanceDue - Number(myForms.feeFinancialAid.value);
	balanceDue = balanceDue - Number(myForms.feeDiscount.value);
	balanceDue = balanceDue + Number(myForms.feeAdjustment.value);
	balanceDue = balanceDue - Number(myForms.rentalReceived.value);
	balanceDue = balanceDue - Number(myForms.transportationPaid.value);
	balanceDue = balanceDue - Number(myForms.feeApplicationFeePaid.value);
	myForms.feeBalanceDue.value = balanceDue.toFixed(2);
}

} // the end


function getCheckedValue(radioObj) {

// return the value of the radio button that is checked
// return an empty string if none are checked, or
// there are no radio buttons

	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}

function displayStaffApplicationPopUp() {
if (staffAppExplanationDisplayed == 0) {
 mywindow = window.open ("http://nysmf.org/staff_application_explained.php","mywindow","scrollbars=1,width=400,height=175,resizable=1");

staffAppExplanationDisplayed = 1;
}
}

function displayFinancialAidPopUp() {
if (financialAidExplanationDisplayed == 0) {
 mywindow = window.open ("http://nysmf.org/financial_aid_explained.php","mywindow","scrollbars=1,width=400,height=175,resizable=1");

staffAppExplanationDisplayed = 1;
}
}
