//	Defaults
var iFederalLoanTerm = 10;
var iFederalMinimumMonthly = 50;

SetLoanType(false);
lstOriginationFeeRange_Change();
lstRepaymentFeeRange_Change();
txtLoanOriginationFee_Change();
chkGracePeriodAllowed_Change();
chkInSchoolPeriodAllowed_Change();
chkDistinctInSchoolRate_Click();

if (bOrganization)
{
	lstInterestRange_Change('');
	lstInterestRange_Change('_InSchool');
	lstInterestRange_Change('_StaffordSubsidized');
}
	
function SetLoanType(bUpdateInterest)
{
	var lstLoanType = document.getElementById(lstLoanType_ClientID);
	var txtInterestRate = document.getElementById(txtInterestRate_ClientID);
	
	var txtInterestRate_SubsidizedStafford;
	if (bOrganization)
		txtInterestRate_SubsidizedStafford = document.getElementById(txtInterestRate_SubsidizedStafford_ClientID);
	
	var txtTerm = document.getElementById(txtTerm_ClientID);
	var txtMinimumMonthly = document.getElementById(txtMinimumMonthly_ClientID);

	var i = 0;
	
	for (i=0; i< lstLoanType.options.length; i++)
	{
		if (lstLoanType.options[i].selected)
		{
			//	Show subsidized unsubsidized stafford rate data
			if (bOrganization)
			{
				var bStafford = parseInt(lstLoanType.options[i].value) == iStafford;
				ToggleShow('spnUnsubsidizedStaffordRate', bStafford);
				ToggleShow('trSubsidizedStaffordRate', bStafford);
			}
				
			switch (parseInt(lstLoanType.options[i].value))
			{
				case iStafford:
					//	Stafford - Subsidized
					TogglePrivateInterestOptions(false);
					ToggleApplicationFee(false);
					ToggleFederalDefaultFee(true);
					ToggleSubsidized(true);
					//SetInterestRateRangeToSingleValue();
					
					if (bUpdateInterest)
					{
						txtInterestRate.value = dInterest_Stafford_Unsubsidized;
						if (bOrganization)
							txtInterestRate_SubsidizedStafford.value = dInterest_Stafford_Subsidized;
					}
					txtTerm.value = iFederalLoanTerm;
					txtMinimumMonthly.value = iFederalMinimumMonthly;
					
					break;
				case iPerkins:
					//	Perkins
					TogglePrivateInterestOptions(false);
					ToggleApplicationFee(false);
					ToggleFederalDefaultFee(true);
					ToggleSubsidized(true);
					SetInterestRateRangeToSingleValue();
					
					if (bUpdateInterest)
						txtInterestRate.value = dInterest_Perkins;
					
					txtTerm.value = iFederalLoanTerm;
					txtMinimumMonthly.value = iFederalMinimumMonthly;
					break;
				case iPLUS:
					//	Plus
					TogglePrivateInterestOptions(false);
					ToggleApplicationFee(false);
					ToggleFederalDefaultFee(true);
					ToggleSubsidized(false);
					//SetInterestRateRangeToSingleValue();
					
					if (bUpdateInterest)
						txtInterestRate.value = dInterest_PLUS;

					txtTerm.value = iFederalLoanTerm;
					txtMinimumMonthly.value = iFederalMinimumMonthly;
					break;
				/*
				case iConsolidation:
					//	Consolidation
					TogglePrivateInterestOptions(false);
					ToggleApplicationFee(true);
					ToggleFederalDefaultFee(true);
					ToggleSubsidized(false, false);
					break;
				*/
				
				case iPrivate:
					//	Private
					TogglePrivateInterestOptions(true);
					ToggleApplicationFee(true);
					ToggleFederalDefaultFee(false);
					ToggleSubsidized(false);
					break;
				default:
					//	No type
					TogglePrivateInterestOptions(false);
					ToggleApplicationFee(true);
					ToggleFederalDefaultFee(true);
					ToggleSubsidized(false);
					break;
			}
				
		}
	}
}

function TogglePrivateInterestOptions(bShow)
{
	var rdo1 = document.getElementById(rdoInterestType_1_ClientID);
	var txtInterestAdjustment = document.getElementById(txtInterestAdjustment_ClientID);
	
	if (!bShow)
	{
		rdo1.checked = true;
		txtInterestAdjustment.value = 0;
	}
	
	ToggleShow(rdoInterestType_1_ClientID, bShow);
	ToggleShow('trInterest2', bShow);
	

	var chk = document.getElementById(chkDistinctInSchoolRate_ClientID);
	var rdo1_InSchool = document.getElementById(rdoInterestType_1_ClientID + '_InSchool');
	var txtInterestAdjustment_InSchool = document.getElementById(txtInterestAdjustment_ClientID + '_InSchool');
	
	if (!bShow)
	{
		rdo1_InSchool.checked = true;
		txtInterestAdjustment_InSchool.value = 0;
	}
	ToggleShow(rdoInterestType_1_ClientID + '_InSchool', bShow);
	ToggleShow('trInterest2_InSchool', bShow && chk.checked);
	
}

function ToggleApplicationFee(bShow)
{
	var txtApplicationFee = document.getElementById(txtApplicationFee_ClientID);
	
	ToggleShow('trApplicationFee', bShow);
	
	if (!bShow)
		txtApplicationFee.value = 0;
}

function ToggleFederalDefaultFee(bShow)
{
	var txtFederalDefaultFee = document.getElementById(txtFederalDefaultFee_ClientID);
	
	ToggleShow('trFederalDefaultFee', bShow);
	
	if (!bShow)
		txtFederalDefaultFee.value = 0;
}

function ToggleSubsidized(bShow)
{
	var chkSubsidized = document.getElementById(chkSubsidized_ClientID);
	
	ToggleShow('trSubsidized', bShow);
	
	if (!bShow)
		chkSubsidized.checked = false;
}

function txtLoanOriginationFee_Change()
{
	if (!bOrganization)
	{
		var txtLoanOriginationFee = document.getElementById(txtLoanOriginationFee_ClientID);
		var lstLoanOriginationFee = document.getElementById(lstLoanOriginationFee_ClientID);
		
		if (parseFloat(txtLoanOriginationFee.value) > 0)
			lstLoanOriginationFee.style.display = '';
		else
			lstLoanOriginationFee.style.display = 'none';
	}
}

/********************************************************/
/*	Organization Specific Functions						*/
/********************************************************/

function SetInterestRateRangeToSingleValue()
{
	if (bOrganization)
	{
		var lst = document.getElementById(lstInterestRange_ClientID);
		lst.selectedIndex = 1;
		lstInterestRange_Change('');
		lstInterestRange_Change('_InSchool');
		lstInterestRange_Change('_StaffordSubsidized');
	}
}

function lstInterestRange_Change(sInSchool)
{
	if (bOrganization)
	{
		var lst = document.getElementById(lstInterestRange_ClientID + sInSchool);
		var bShow = (lst.options[lst.selectedIndex].value == 1);
		var txtMin1 = document.getElementById(txtInterestRateMin_ClientID + sInSchool);
		var txtMin2 = document.getElementById(txtInterestAdjustment_ClientID + sInSchool);
		
		ToggleShow('spnInterestRange1' + sInSchool, bShow);
		ToggleShow('spnInterestRange2' + sInSchool, bShow);
		
		if (!bShow)
		{
			txtMin1.value = 0;
			
			if (txtMin2 != null)
				txtMin2.value = 0;
		}
	}
}

function lstRepaymentFeeRange_Change()
{
	if (bOrganization)
	{
		var lst = document.getElementById(lstRepaymentFeeRange_ClientID);
		var bShow = (lst.options[lst.selectedIndex].value == 1);
		var txtMin = document.getElementById(txtRepaymentFee_ClientID);
		
		ToggleShow('spnRepaymentFee', bShow);
		
		if (!bShow)
		{
			txtMin.value = 0;
		}
	}
}

function lstOriginationFeeRange_Change()
{
	if (bOrganization)
	{
		var lst = document.getElementById(lstOriginationFeeRange_ClientID);
		var bShow = (lst.options[lst.selectedIndex].value == 1);
		var txtMin = document.getElementById(txtLoanOriginationFee_ClientID);
		
		ToggleShow('spnOriginationFee', bShow);
		
		if (!bShow)
		{
			txtMin.value = 0;
		}
	}
}

function chkInSchoolPeriodAllowed_Change()
{
	if (bOrganization)
	{
		var chk = document.getElementById(chkInSchoolPeriodAllowed_ClientID);
		ToggleShow('spnInSchoolPeriod', chk.checked);
	}
}

function chkGracePeriodAllowed_Change()
{
	if (bOrganization)
	{
		var chk = document.getElementById(chkGracePeriodAllowed_ClientID);
		ToggleShow('spnGracePeriod', chk.checked);
	}
}

function chkDistinctInSchoolRate_Click()
{
	var chk = document.getElementById(chkDistinctInSchoolRate_ClientID);
	ToggleShow('trInSchoolRate1', chk.checked);
	SetLoanType();
}