sfHover = function() {
	var sfEls = document.getElementById("nav").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);

jQuery(function() {
	jQuery('.msg-error').hide();
	jQuery('.frm').submit(function() {
		valid = validateMyForm(jQuery(this));			  

		if(valid) {
			//this.submit();
		} else {
			alert('Please complete the required form fields');	
			return false;
		}	
	});
	
	jQuery("#register-form input[name='input_2']").click(function() {
		var thisval = jQuery(this).val().trim();		  

		if(thisval == 'Residential camp') {
			jQuery("#rescamp-schools").show();
			jQuery("#rescamp-schools select").removeAttr('disabled');
			
			jQuery("#daycamp-schools").hide();
			jQuery("#daycamp-schools select").attr('disabled', 'disabled');
			
		} else {
			jQuery("#daycamp-schools").show();
			jQuery("#daycamp-schools select").removeAttr('disabled');
			
			jQuery("#rescamp-schools").hide();
			jQuery("#rescamp-schools select").attr('disabled', 'disabled');
		}	
		
		jQuery("#register-form input[name='input_3']:first").trigger('click');
	});
	
	jQuery("#register-form input[name='input_3']").click(function() {
		var thisval = jQuery(this).val().trim();		  
		
		jQuery('#daycamps').val('');
		jQuery('#daycamps .Boys, #daycamps .Girls').attr('disabled', 'disabled').hide();
		jQuery("#daycamps ." + thisval).removeAttr('disabled').show();
		
		jQuery('#rescamps').val('');
		jQuery('#rescamps .Boys, #rescamps .Girls').attr('disabled', 'disabled').hide();
		jQuery("#rescamps ." + thisval).removeAttr('disabled').show();

	});
	
	jQuery("#register-form button").click(function() {
		var target_link = jQuery('#register-form select:enabled').val().trim();
		
		if(target_link) {
			window.location = target_link;
		} else {
			alert('Invalid input.');
		}
	});
	
	jQuery("#register-form input[name='input_2']:first").trigger('click');
});

function validateMyForm(thisform) {
	
	var valid = true;
			
	var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
	var r = 0;
	thisform.find('input.required:enabled').each(function(){									 

		var thisval = jQuery(this).val().trim();

		if(thisval.length == 0) {
			jQuery(this).addClass("err");
			jQuery(this).next('.msg-error').show();
			valid = false;
		} else {
			jQuery(this).removeClass("err");
			jQuery(this).next('.msg-error').hide();
		}

	}); //optional second arg for binding, not used here		
	
	thisform.find('input.emailadd:enabled').each(function(){																		 
		var thisval = jQuery(this).val().trim();
		
		if(thisval.match(emailExp)) {
			jQuery(this).removeClass("err");	
			jQuery(this).next('.msg-error').hide();
		} else {
			jQuery(this).addClass("err");
			jQuery(this).next('.msg-error').show();
			valid = false;
		}
	}); //optional second arg for binding, not used here
	
	thisform.find('select.required:enabled').each(function(){									 
		var thisval = jQuery(this).val().trim();
	
		if(thisval.length == 0) {
			jQuery(this).addClass("err");
			jQuery(this).next('.msg-error').show();
			valid = false;
		} else {
			jQuery(this).removeClass("err");
			jQuery(this).next('.msg-error').hide();
		}
	}); //optional second arg for binding, not used here		
	
	thisform.find('textarea.required:enabled').each(function(){									 
		var thisval = jQuery(this).val().trim();
	
		if(thisval.length < 3) {
			jQuery(this).addClass("err");
			valid = false;
		} else {
			jQuery(this).removeClass("err");
		}
	}); //optional second arg for binding, not used here	
	
	return valid;
}
