$(document).ready(function(){


	// a custom method for validating the date range
	$.validator.addMethod("requiredGroup", function(value, element) {
		
		checkTrue = check_for_selection();
		return checkTrue;
	}, "Please select at least one from below. Thanks!");
	
	// a new class rule to group all three methods
	$.validator.addClassRules({
		oneOfThisGroupRequired: {requiredGroup:true}
	});
	
	// overwrite default messages
	$.extend($.validator.messages, {
		required: "These fields required",
		date: "Please specify valid dates"
	});
	
	var form = $("#subscribenews");
	form.validate({
		
		groups: {
			username: "ck1 ck2"
		},
	
		errorPlacement: function(error, element) {
			 elementName = $(element).attr("id");
			 elementType = $(element).attr("type");
		
			 //if (elementName == "ck1" || elementName == "ck2" || elementName == "ck3"){
			 if (elementType == "checkbox"){
					$("#groupedErrors").html(error);
			 }else{
					error.insertAfter(element);
			 }
		 }
	
	
	});
	
	$("#validate").click(function() {
		form.valid();
		return false;
	});

	
	
	
	function check_for_selection(){	
		var noCheck = true;
		// loop thru each selected checkbox
		$(".oneOfThisGroupRequired:checked").each(function(){
			// if any are found selected, noCheck is set to false
			noCheck = false;
		});
		
		if(noCheck){
			// there were no checked boxes found
			return false;
		}else{
			return true;
		}
		
	
		
		
	}
				



});
 
