$(document).ready(function () {
	$.myVars = {}; // Create our own namespace to use so as not to pollute the global namespace with our variables. 

	$.validator.addMethod(
		"commentOrProducts", 
		function(value, element) {
			return ($('input[type="checkbox"]:checked').size() > 0 || $('#comment').val() != '');
		},
		'Select at least one product or enter a comment.'
	);
	
	// validate signup form on keyup and submit
	var validator = $("#quoteform").validate({

		rules: {
			first_name: "required",
			last_name: "required",
			company: "required",
			email: {
				required: true,
				email: true
			},
			phone: "required",
			city: "required",
			state: "required",
			zip: "required",
			country: "required",
			comment: {
				commentOrProducts: true
			}
		},

		messages: {
			first_name: "First Name required.",
			last_name: "Last Name required.",
			company: "Company required.",
			email: {
				required: "Valid email address required.",
				minlength: "Valid email address required."
			},
			phone: "Phone number required.",
			city: 'City required.',
			state: 'State required.',
			zip: 'Post Code required.',
			country: 'Country required.'
		},

		errorPlacement: function(error, element) {
				error.appendTo( element.next() );
		},

		submitHandler: function(form) {
			$.myVars.cbCount = $('input[type="checkbox"]:checked').size();
			$.myVars.cbValues = $.makeArray(
				$('input[type="checkbox"]:checked').map(function () {
					return $(this).val();
				})
			).join(', ');
			
			if ($.myVars.cbCount <= 1) {
				$("#00N50000001WxkM").val($.myVars.cbValues);
			} else {
				$('#comment').val(
					"Products of interest:\r\n" + $.myVars.cbValues + "\r\n\r\nCustomer comment:\r\n" + $('#comment').val()
				);
				$("#00N50000001WxkM").val('Multiple products');
			}
			form.submit(); // $.(form).submit(); causes recursion so only use form.submit(); 
		}	// submitHandler
	});	// Validate
	$('#firstname').change(function(){
		$capthis = $(this).val();
		$(this).val(titleCaps($capthis));
	});
	$('#lastname').change(function(){
		$capthis = $(this).val();
		$(this).val(titleCaps($capthis));
	});
	$('#company').change(function(){
		$capthis = $(this).val();
		$(this).val(titleCaps($capthis));
	});
});	// Ready

