// process the class schedule row click event
rowclick = function(chk,rownum,clear_color) {
	if (chk.checked) {
		document.getElementById('row'+rownum).style.backgroundColor='lawngreen';
	} else {	
		document.getElementById('row'+rownum).style.backgroundColor=clear_color;
	}
	calcSelected();
}

// calculate the number of selected rows
calcSelected = function() {
	var totalrows = document.forms['frmSelect'].totalrows.value;
	var num_selected = 0;
	var sel_classes = "";
	for (var i=1; i<=totalrows; i++) {
		var chk = eval("document.forms['frmSelect'].chk" + i);
		var cid = eval("document.forms['frmSelect'].classid" + i);
		if (chk.checked) {
			num_selected += 1;
			sel_classes = sel_classes + ',' + cid.value;
		}
	}
	if (num_selected == 0) {
		document.getElementById('register').style.visibility='hidden';
		document.getElementById('register').style.display='none';
	} else {
		if (num_selected == 1) {
			document.getElementById('numsel').innerHTML = 'this 1 class';
		} else {
			if (num_selected > 1) {
				document.getElementById('numsel').innerHTML = 'these ' + num_selected + ' classes';
			}
		}
		document.getElementById('register').style.visibility='';
		document.getElementById('register').style.display='';
	}
	if (sel_classes.length > 1) {
		sel_classes = sel_classes.substring(1);
	}
	document.forms['frmSelect'].selected_classes.value=sel_classes;
}

	validateRegistrationForm = function() {
		var frm;
		frm = eval('window.document.Registration');
		frm.DancerFirstName.style.backgroundColor='';
		frm.DancerLastName.style.backgroundColor='';
		frm.BirthMonth.style.backgroundColor='';
		frm.BirthDay.style.backgroundColor='';
		frm.BirthYear.style.backgroundColor='';
		frm.DancerAge.style.backgroundColor='';
		frm.DanceExperience.style.backgroundColor='';
		frm.Address.style.backgroundColor='';
		frm.City.style.backgroundColor='';
		frm.PostalCode.style.backgroundColor='';
		frm.Gender.style.backgroundColor='';
		frm.DaytimePhone.style.backgroundColor='';
		frm.EveningPhone.style.backgroundColor='';
		frm.EmergencyPhone.style.backgroundColor='';
		frm.Email.style.backgroundColor='';

		// Check the name
		if (frm.DancerFirstName.value == '') {
			frm.DancerFirstName.style.backgroundColor='salmon';
			alert('Please enter the dancer\'s FIRST NAME');
			frm.DancerFirstName.focus();
			return false;
		}
		if (frm.DancerLastName.value == '') {
			frm.DancerLastName.style.backgroundColor='salmon';
			alert('Please enter the dancer\'s LAST NAME');
			frm.DancerLastName.focus();
			return false;
		}

		// Check the birthday info
		if (frm.BirthMonth.value == '') {
			frm.BirthMonth.style.backgroundColor='salmon';
			alert('Please select a BIRTH MONTH');
			frm.BirthMonth.focus();
			return false;
		}
		if (frm.BirthDay.value == '') {
			frm.BirthDay.style.backgroundColor='salmon';
			alert('Please select a BIRTH DAY');
			frm.BirthDay.focus();
			return false;
		}
		if (frm.BirthYear.value == '' || frm.BirthYear.value.length != 4) {
			frm.BirthYear.style.backgroundColor='salmon';
			alert('Please enter a 4 digit BIRTH YEAR');
			frm.BirthYear.focus();
			return false;
		}
		if (frm.DancerAge.value == '') {
			frm.DancerAge.style.backgroundColor='salmon';
			alert('Please select the dancer\'s AGE');
			frm.DancerAge.focus();
			return false;
		}
		if (frm.Gender.value == '') {
			frm.Gender.style.backgroundColor='salmon';
			alert('Please select the dancer\'s GENDER');
			frm.Gender.focus();
			return false;
		}
		if (frm.DanceExperience.value == '') {
			frm.DanceExperience.style.backgroundColor='salmon';
			alert('Please enter the DANCER EXPERIENCE');
			frm.DanceExperience.focus();
			return false;
		}
		if (frm.Returning[0].checked == false && frm.Returning[1].checked == false) {
			alert('Please indicate if this is a RETURNING DANCER or not');
			return false;
		}


		// Make sure the address info is completed
		if (frm.Address.value == '') {
			frm.Address.style.backgroundColor='salmon';
			alert('Please enter the ADDRESS');
			frm.Address.focus();
			return false;
		}
		if (frm.City.value == '') {
			frm.City.style.backgroundColor='salmon';
			alert('Please enter the CITY');
			frm.City.focus();
			return false;
		}
		if (frm.PostalCode.value == '') {
			frm.PostalCode.style.backgroundColor='salmon';
			alert('Please enter the POSTAL CODE');
			frm.PostalCode.focus();
			return false;
		}
		
		// other required information
		if (frm.DaytimePhone.value == '') {
			frm.DaytimePhone.style.backgroundColor='salmon';
			alert('Please enter the DAYTIME PHONE');
			frm.DaytimePhone.focus();
			return false;
		}
		if (frm.EveningPhone.value == '') {
			frm.EveningPhone.style.backgroundColor='salmon';
			alert('Please enter the EVENING PHONE');
			frm.EveningPhone.focus();
			return false;
		}
		if (frm.EmergencyPhone.value == '') {
			frm.EmergencyPhone.style.backgroundColor='salmon';
			alert('Please enter the EMERGENCY PHONE');
			frm.EmergencyPhone.focus();
			return false;
		}
		if (frm.Email.value == '') {
			frm.Email.style.backgroundColor='salmon';
			alert('Please enter an EMAIL ADDRESS');
			frm.Email.focus();
			return false;
		}
		if (!isValidEmail(frm.Email.value)) {
			frm.Email.style.backgroundColor='salmon';
			alert('Please enter a valid EMAIL ADDRESS');
			frm.Email.focus();
			return false;
		}

		frm.submit();
	}
	
	is_empty = function(string) {
		if (string == "" || string == null) {
			return true;
		} 
		return false;
	}

	isValidEmail = function(strEmail){
		var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   		if(reg.test(strEmail) == false) {
	    	return false;
	   	}
		return true;
	}
	
