// Oak Meadow and Strawberry Meadow
// JavaScript
// OMSM Application Form Handler


var init = "true";
var optional = 'Select the dates you would like to attend...';

function getCloseLinks() {
	if (document.getElementById && document.createElement && document.getElementsByTagName) {
		var links = document.getElementsByTagName('a');
		var link;
		for (var i = 0; i < links.length; i++) {
			link = links[i];
			if (/\bclose\b/.test(link.className)) {
				link.onclick = function() {
				document.getElementById('messagebox').style.visibility = "hidden";
				document.getElementById('coursechosen').selectedIndex = 0;
				var datefield = document.getElementById('coursedates').options;
				datefield.length = 0;
				datefield[datefield.length] = new Option(optional,"none");
				init = "";
				var refresh = hideDependents();
				}
			}
		}
	}
}

function hideDependents() {
	if(init) {
		document.getElementById('morechildren').style.display = "none";
		document.getElementById('addchildren').style.display = "none";
		document.getElementById('crechenote').style.display = "none";
	} else {
		if(document.getElementById('crecheneedyes').checked) {
			document.getElementById('morechildren').style.display = "block";
			document.getElementById('crechenote').style.display = "block";
		}
		if(document.getElementById('chmoreyes').checked) {
			document.getElementById('addchildren').style.display = "block";
		}
	}

}

function crecheNeed() {
	cnSwitchOn = document.getElementById('crecheneedyes');
	cnSwitchOff = document.getElementById('crecheneedno');
	cnSwitchOn.onclick = function() {
		document.getElementById('morechildren').style.display = "block";
		document.getElementById('crechenote').style.display = "block";
	}
	cnSwitchOff.onclick = function() {
		document.getElementById('morechildren').style.display = "none";
		document.getElementById('crechenote').style.display = "none";
	}
}

function moreKids() {
	mkSwitchOn = document.getElementById('chmoreyes');
	mkSwitchOff = document.getElementById('chmoreno');
	mkSwitchOn.onclick = function() {
		document.getElementById('addchildren').style.display = "block";
	}
	mkSwitchOff.onclick = function() {
		document.getElementById('addchildren').style.display = "none";
	}
}

function changeDates() {
	var changePath = document.getElementById('coursedates');
	changePath.options.length = 0;
	var courseName = document.getElementById('coursechosen').value;
	var dates = new Array();
	var courseDates = 0;
	var newCount = 0;
	var courseCost = "";
	var crecheAvailable = "";
	var crecheCost = "";
	for (n=0; n<coursesAvailable.length; n++) {
		if (coursesAvailable[n][0] == courseName) {
			courseDates = coursesAvailable[n][2];
		}
	}
	for (r=0; r<courseDates.length; r++) {
		if(today*1000 < Date.parse(courseDates[r][1])) {
			dates[newCount] = new Array();
			costs = new Array();
			crecheA = new Array();
			crecheC = new Array();
			dates[newCount][0] = courseDates[r][0];
			dates[newCount][1] = courseDates[r][1];
			dates[newCount][2] = courseDates[r][2];
			costs[newCount] = courseDates[r][3];
			crecheA[newCount] = courseDates[r][4];
			crecheC[newCount] = courseDates[r][5];			
			newCount++;
		}
	}
	
	courseCost = costs[0];
	crecheAvailable = crecheA[0];
	crecheCost = crecheC[0];
 	var newOptions = changePath.options;
	if(dates.length > 1) {
		newOptions[newOptions.length] = new Option(optional,"none");
		courseCost = "";
		crecheAvailable = "";
		crecheCost = "";
	}
	
 	for (i=0; i<dates.length; i++) {
		opt = dates[i][0];
		if(dates[i][1] && dates[i][1] != dates[i][0]) {opt += " - "+dates[i][1];}
		opt += " [ " + dates[i][2] + " ]";
		newOptions[newOptions.length] = new Option(opt,opt);
 	}
	if(courseCost == "Nil") {courseCost = "Free";}
	document.getElementById('coursecost').innerHTML = courseCost;
	if(crecheAvailable == "Yes") {crecheView = "block";}else{crecheView = "none";}
	if(crecheCost == "Nil") {crecheCost = "No charge";}
	document.getElementById('thecreche').style.display = crecheView;
	document.getElementById('crcost').innerHTML = crecheCost;
}

function changeCost() {
	var courseCost = "";
	var crecheAvailable = "";
	var crecheCost = "";
	var courseName = document.getElementById('coursechosen').value;
	var dateChosen = document.getElementById('coursedates').value;
	for (n=0; n<coursesAvailable.length; n++) {
		if (coursesAvailable[n][0] == courseName) {
		courseDates = coursesAvailable[n][2];
		}
	}
	for (r=0; r<courseDates.length; r++) {
		dateFormatted = courseDates[r][0];
		if(courseDates[r][1] && courseDates[r][1] != courseDates[r][0]) {dateFormatted += " - "+courseDates[r][1];}
		dateFormatted += " [ " + courseDates[r][2] + " ]";		
		if(dateChosen == dateFormatted) {
			courseCost = courseDates[r][3];
			crecheAvailable = courseDates[r][4];
			crecheCost = courseDates[r][5];
		}
	}
	if(courseCost == "Nil") {courseCost = "Free";}
	document.getElementById('coursecost').innerHTML = courseCost;
	if(crecheAvailable == "Yes") {crecheView = "block";}else{crecheView = "none";}
	if(crecheCost == "Nil") {crecheCost = "No charge";}
	document.getElementById('thecreche').style.display = crecheView;
	document.getElementById('crcost').innerHTML = crecheCost;
}

function update() {
	var cSelect = document.getElementById('coursechosen');
	cSelect.onchange = changeDates;
	var dSelect = document.getElementById('coursedates');
	dSelect.onchange = changeCost;
}

addLoadListener(getCloseLinks);
addLoadListener(update);
addLoadListener(hideDependents);
addLoadListener(crecheNeed);
addLoadListener(moreKids);



