// JavaScript Learn to Surf LA canp specific scripts
<!--

function calculateCampPrice() 
{
	var priceElement = document.camp_reg.Total_Price;
	var numStudents = Number (document.camp_reg.Number_of_Students.value);
	var numWeeks = Number (document.camp_reg.Number_of_Weeks.value);
	var sibDiscount = 0;
	var promoDiscount = 0;
	var higherDiscount = 0;
	var multiWkDiscount = 0;
	var extraHrsPrice = 0;
	var unitPrice = 0;
	var rawPrice = 0;
	var finalPrice =0;

	var priceArray = new Array ("0", "375", "300", "90"); //nothing selected

	if (document.camp_reg.Type_of_Camp.selectedIndex > 0)
	{	//calculate camp discounts
		if (document.camp_reg.Type_of_Camp.selectedIndex != 3)
		{
			unitPrice = Number (priceArray [document.camp_reg.Type_of_Camp.selectedIndex]);

			multiWkDiscount = .05 * unitPrice * numStudents * (numWeeks - 1);
	
		   if ((numStudents >= 2) && document.camp_reg.Second_Sibling[0].checked) ++sibDiscount;
		   if ((numStudents >= 3) && document.camp_reg.Third_Sibling[0].checked) ++sibDiscount;
		   if ((numStudents >= 4) && document.camp_reg.Fourth_Sibling[0].checked) ++sibDiscount;
	
			sibDiscount *= unitPrice * .05;
		}
		else
		{
			var numTrialDays = 0;
			var fieldArray = new Array ("Mon_Trial_Day", "Tue_Trial_Day", "Wed_Trial_Day", "Thu_Trial_Day", "Fri_Trial_Day");
			for ( field in fieldArray )
			{
				if (document.getElementsByName (fieldArray[field])[0].checked) ++numTrialDays;
			}
			unitPrice = Number (priceArray [document.camp_reg.Type_of_Camp.selectedIndex]) * numTrialDays;
		}
		
		//calculate early drop off/ late pick up pricing
		var daysArray = new Array ("Mon", "Tue", "Wed", "Thu", "Fri");
		var fieldArray = new Array ("_Drop_Off", "_Pick_Up");
		
		for ( day in daysArray )
			for ( field in fieldArray )
			{
				var nameStr = daysArray[day] + fieldArray[field];
				if (document.getElementsByName (nameStr)[0].checked) ++extraHrsPrice;
			}
	}
		document.camp_reg.Full_Price.value = unitPrice + (extraHrsPrice * 15);
		calculateDiscount (document.camp_reg);

		extraHrsPrice *= 15 * numStudents * numWeeks;
		rawPrice = unitPrice * numStudents * numWeeks;
		finalPrice = rawPrice  + extraHrsPrice;

		promoDiscount = parseFloat (document.camp_reg.Coupon_Discount.value);
		if (numStudents > 1)higherDiscount = (sibDiscount >= promoDiscount) ? sibDiscount : promoDiscount;
		if (document.camp_reg.Type_of_Camp.selectedIndex == 1) finalPrice -= (multiWkDiscount + promoDiscount + higherDiscount);
		
		priceElement.value = String(finalPrice.toFixed(2));
		document.camp_reg.amount.value = String(finalPrice.toFixed(2));
}


function setCampFormStatus(numStudents)
{
    var numArray = new Array ("Second", "Third", "Fourth", "Fifth");
	var numIndex;
	var fieldsArray = new Array ("Child_Name", "Child_Age", "Wetsuit_Size", "Sibling");
	var fldIndex;
	var students = Number (numStudents.value);
	var enableArray = new Array ();
	var disableArray = new Array ();
	var elementIndex;
	var nameStr = new String ();

	for (numIndex in numArray)
	{
		for (fldIndex in fieldsArray)
		{
			nameStr = numArray[numIndex] + "_" + fieldsArray[fldIndex];
			
			if ((numArray[numIndex] == "Second") && (students >= 2))
			{
				enableArray.push (document.getElementsByName (nameStr)[0]);
				if (fieldsArray[fldIndex] == "Sibling") enableArray.push (document.getElementsByName (nameStr)[1]);
			}
			else if ((numArray[numIndex] == "Third") && (students >= 3))
			{
				enableArray.push (document.getElementsByName (nameStr)[0]);
				if (fieldsArray[fldIndex] == "Sibling") enableArray.push (document.getElementsByName (nameStr)[1]);
			}
			else if ((numArray[numIndex] == "Fourth") && (students >= 4))
			{
				enableArray.push (document.getElementsByName (nameStr)[0]);
				if (fieldsArray[fldIndex] == "Sibling") enableArray.push (document.getElementsByName (nameStr)[1]);
			}
			else if ((numArray[numIndex] == "Fifth") && (students >= 5))
			{
				enableArray.push (document.getElementsByName (nameStr)[0]);
				if (fieldsArray[fldIndex] == "Sibling") enableArray.push (document.getElementsByName (nameStr)[1]);
			}
			else
			{
				disableArray.push (document.getElementsByName (nameStr)[0]);
				if (fieldsArray[fldIndex] == "Sibling") enableArray.push (document.getElementsByName (nameStr)[1]);
			}
		}
	}
	
	for (elementIndex in disableArray)
	{
		disableArray[elementIndex].disabled = true;
	}

	for (elementIndex in enableArray)
	{
		enableArray[elementIndex].disabled = false;
	}
}


function setCampDatesStatus(numWeeks)
{
	var numIndex;
	var weeks = Number (numWeeks.value);
	var enableArray = new Array ();
	var disableArray = new Array ();
	var elementIndex;
	var nameStr = new String ();

	for (numIndex = 2; numIndex <= 10; numIndex++)
	{
		nameStr = "Date_of_Camp" + String (numIndex);
		
		if (numIndex <= weeks)
		{
			enableArray.push (document.getElementsByName (nameStr)[0]);
		}
		else
		{
			disableArray.push (document.getElementsByName (nameStr)[0]);
		}
	}
	
	for (elementIndex in disableArray)
	{
		disableArray[elementIndex].disabled = true;
	}

	for (elementIndex in enableArray)
	{
		enableArray[elementIndex].disabled = false;
	}
}


function setCampTrialDayStatus(resetChecks)
{
	var fieldArray = new Array ("Mon", "Tue", "Wed", "Thu", "Fri");
	var enableArray = new Array ();
	var disableArray = new Array ();
	var dayStr = new String ();
	var elementIndex;

	if (document.camp_reg.Type_of_Camp.selectedIndex > 0)
	{
		for (fieldIndex in fieldArray)
		{
			dayStr = String (fieldArray[fieldIndex]) + "_Trial_Day";
		
			if (document.camp_reg.Type_of_Camp.selectedIndex == 3)
			{
				enableArray.push (document.getElementsByName (dayStr)[0]);
			}
			else
			{
				disableArray.push (document.getElementsByName (dayStr)[0]);
			}
		}
	}
	
	for (elementIndex in disableArray)
	{
		disableArray[elementIndex].disabled = true;
		disableArray[elementIndex].checked = true;
	}

	for (elementIndex in enableArray)
	{
		enableArray[elementIndex].disabled = false;
		if (resetChecks)
			if (enableArray[elementIndex].name != "Mon_Trial_Day") enableArray[elementIndex].checked = false;
	}
}


function setCampExtraHoursStatus()
{
	var fieldArray = new Array ("Mon", "Tue", "Wed", "Thu", "Fri");
	var enableArray = new Array ();
	var disableArray = new Array ();
	var dayStr = new String ();
	var pickUpStr = new String ();
	var dropOffStr = new String ();

	if (document.camp_reg.Type_of_Camp.selectedIndex > 0)
	{
		for (fieldIndex in fieldArray)
		{
			dayStr = String (fieldArray[fieldIndex]) + "_Trial_Day";
			pickUpStr = String (fieldArray[fieldIndex]) + "_Drop_Off";
			dropOffStr = String (fieldArray[fieldIndex]) + "_Pick_Up";
		
			if (document.getElementsByName (dayStr)[0].checked)
			{
				enableArray.push (document.getElementsByName (pickUpStr)[0]);
				enableArray.push (document.getElementsByName (dropOffStr)[0]);
			}
			else
			{
				disableArray.push (document.getElementsByName (pickUpStr)[0]);
				disableArray.push (document.getElementsByName (dropOffStr)[0]);
			}
		}
	}
	
	for (elementIndex in disableArray)
	{
		disableArray[elementIndex].disabled = true;
		disableArray[elementIndex].checked = false;

	}

	for (elementIndex in enableArray)
	{
		enableArray[elementIndex].disabled = false;
	}
}


function setCampRegCookies()
{
	var dayStr = new String ();
	var fieldArray = new Array ("Mon", "Tue", "Wed", "Thu", "Fri");
	var campDays = new String();
	
	for (fieldIndex in fieldArray)
	{
		dayStr = fieldArray[fieldIndex] + "_Trial_Day";
	
		if (document.getElementsByName (dayStr)[0].checked) campDays += fieldArray[fieldIndex];
	}
	
	document.cookie = "campType=" + document.camp_reg.Type_of_Camp.selectedIndex + ";";
	document.cookie = "campStudents=" + document.camp_reg.Number_of_Students.selectedIndex + ";";
	document.cookie = "campWeeks=" + document.camp_reg.Number_of_Weeks.selectedIndex + ";";
	document.cookie = "campDays=" + campDays + ";";

}

function getCampRegCookies()
{
	var cookies = document.cookie.split(';');
	var dayArray = new Array ("Mon", "Tue", "Wed", "Thu", "Fri");
	
	for ( var i = 0; i < cookies.length; ++i)
	{
		var readValue = cookies[i];
		var eqPos = readValue.indexOf ("=");
		var readIndex = Number (readValue.substring (eqPos + 1));
		if (!isNaN (readIndex))
		{
			if (readValue.search ("campType=") >= 0) document.camp_reg.Type_of_Camp.selectedIndex = readIndex;
			else if (readValue.search ("campStudents=") >= 0) document.camp_reg.Number_of_Students.selectedIndex = readIndex;
			else if (readValue.search ("campWeeks=") >= 0) document.camp_reg.Number_of_Weeks.selectedIndex = readIndex;
		}
		else 
		{
			if (readValue.search ("campDays=") >= 0)
			{
				for (dayIndex in dayArray)
					document.getElementsByName (dayArray[dayIndex] + "_Trial_Day")[0].checked = 
						(readValue.search (dayArray[dayIndex]) > eqPos);						
			}
		}
	}
}

-->