$(document).ready(function(){
	
	function businessCheck(){
		if ( $("#selShishavacApplication").val() == 'restaurant' || $("#selShishavacApplication").val() == 'cafe' )
		{	return true;	}
		else {	return false;	}
	}

	
	// set metadata for special rules in the html
	$.metadata.setType("attr", "validate");
	//
	$("#selShishavacApplication").click(function() {
		if ( businessCheck() === true )
		{	$("span.businessCheck").append("<span class='required'>*</span>").css("font-weight","bold").removeClass("businessCheck").addClass("businessCheckOn");	}
		else
		{	$("span.businessCheckOn .required").remove();
			$("span.businessCheckOn").css("font-weight","normal").removeClass("businessCheckOn").addClass("businessCheck");		}
	});
	// Validate checkout form
	$("form#frmRegister").validate({
		errorLabelContainer: $("div#errorContainer"),	
		rules: {
			txtFirstName: { 		required: true, maxlength: 50	},
			txtInitial: { 			required: true, maxlength: 1	},
			txtLastName: { 			required: true, maxlength: 50	},
			txtBusinessName: { 		required: function(element) {	return businessCheck(); }, maxlength: 50	},
			txtWebsite: { 			required: true, maxlength: 50	},
			txtBusinessAddress: {	required: function(element) {	return businessCheck(); } },
			txtAddress: { 			required: true },
			txtCity: { 				required: true, maxlength: 50	},
			txtZipcode: { 			required: true, maxlength: 10	},
			selCountry: { 			required: true, maxlength: 2	},
			txtHomePhone: { 		required: true, maxlength: 15	},
			txtBusinessPhone: { 	required: function(element) {	return businessCheck(); }, maxlength: 15	},
			txtMobilePhone: { 		required: true, maxlength: 15	},
			txtFacsimile: { 		maxlength: 15	},
			txtEmailAddress: { 		required: true, maxlength: 50, email:true	},
			txtPurchaseDate: { 		required: true, maxlength: 10, date: true	},
			txtModelNumber: { 		required: true, maxlength: 15	},
			txtSerialNumber1: { 	required: true, maxlength: 20	},
			txtSerialNumber2: { 	maxlength: 20	},
			txtSerialNumber3: { 	maxlength: 20	},
			txtSerialNumber4: { 	maxlength: 20	},
			txtStoreName: { 		required: true, maxlength: 50},
			txtQuantityPurchased: { required: true, maxlength: 4, number:true	},
			selShishavacApplication: { 	required: true	},
			selTotal: { 			required: function(element) {	return businessCheck(); },	number:true	},
			selTotalOther: { 		number:true	},
			selTotalServed: { 		required: function(element) {	return businessCheck(); }	},
			selCharcoalType: { 		required: function(element) {	return businessCheck(); }	},
			selEmployees: { 		required: function(element) {	return businessCheck(); }	},
			selPersonalNarghileUse: {	required: true	},
			selPersonalCharcoalType: {	required: true	},
			selNarghilePeople: { 	required: true	},
			selBirthdayMonth: { 	required: true	},
			selBirthdayDay: { 		required: true	},
			selBirthdayYear: { 		required: true	},
			selGender: { 			required: true	},
			selPurchaseReasons: { 	required: true, rangelength:[3,5]	},
			selFamilyIncome: { 		required: true	},
			txtComments: { 			},
			selBestContact: { 		required: true	},
			chkTermsAgree: { 		required: true	}
		},
		messages: {
			txtFirstName: { 		required: "Please enter a First Name",
									maxlength: "Your entered First Name exceeds the maximum length"	},
			txtInitial: { 			required: "Please enter a Middle Initial",
									maxlength: "Your entered  Middle Initial exceeds the maximum length"	},
			txtLastName: { 			required: "Please enter a Last Name",
									maxlength: "Your entered Last Name exceeds the maximum length"	},
			txtBusinessName: { 		required: "Please enter a Business Name",
									maxlength: "Your entered Business Name exceeds the maximum length"	},
			txtWebsite: { 			required: "Please enter a Website",
									maxlength: "Your entered Website exceeds the maximum length"	},
			txtBusinessAddress: {	required: "Please enter a Business Address"	},
			txtAddress: { 			required: "Please enter an Address"	},
			txtCity: { 				required: "Please enter a City/State",
									maxlength: "Your entered City/State exceeds the maximum length"	},
			txtZipcode: { 			required: "Please enter a Zipcode",
									maxlength: "Your entered Zipcode exceeds the maximum length"	},
			selCountry: { 			required: "Please enter a Country",
									maxlength: "Your selected Country exceeds the maximum length"	},
			txtHomePhone: { 		required: "Please enter a Home Phone",
									maxlength: "Your entered Home Phone exceeds the maximum length"	},
			txtBusinessPhone: { 	required: "Please enter a Business Phone",
									maxlength: "Your entered Business Phone exceeds the maximum length"	},
			txtMobilePhone: { 		required: "Please enter a Mobile Phone",
									maxlength: "Your entered Mobile Phone exceeds the maximum length"	},
			txtFacsimile: { 		maxlength: "Your entered Facsimile Number exceeds the maximum length"	},
			txtEmailAddress: { 		required: "Please enter an Email Address",
									maxlength: "Your entered Email Address exceeds the maximum length",
									email: "Please enter a valid Email Address"	},
			txtPurchaseDate: { 		required: "Please enter a Purchase Date",
									maxlength: "Your entered Purchase Date exceeds the maximum length",
									date: "Please enter a valid Purchase Date (e.g. '12/10/2005')"	},
			txtModelNumber: { 		required: "Please enter a Model Number",
									maxlength: "Your entered Model Number exceeds the maximum length"	},
			txtSerialNumber1: { 	required: "Please enter a Serial Number",
									maxlength: "Your entered Serial Number #1 exceeds the maximum length"	},
			txtSerialNumber2: { 	maxlength: "Your entered Serial Number #2 exceeds the maximum length"	},
			txtSerialNumber3: { 	maxlength: "Your entered Serial Number #3 exceeds the maximum length"	},
			txtSerialNumber4: { 	maxlength: "Your entered Serial Number #4 exceeds the maximum length"	},
			txtStoreName: { 		required: "Please enter a Store Name",
									maxlength: "Your entered Store Name exceeds the maximum length"	},
			txtQuantityPurchased: { required: "Please enter an Quantity of Units Purchased",
									maxlength: "Your entered Quantity of Units Purchased exceeds the maximum length",
									number:"Quantity of Units Purchased must be a number"	},
			selShishavacApplication: { 	required: "Please select your application for the Shishavac"	},
			selTotal: { 			number:"Your Total Shishavacs placed in your Establishment must be a number"	},
			selTotalOther: { 		number:"Your Total Shishavacs placed in your Establishment must be a number"	},
			selTotalServed: { 		},
			selCharcoalType: { 		required: "Please select the type of charcoal your establishment uses"	},
			selEmployees: { 		},
			selPersonalNarghileUse: {	required: "Please select How frequently you enjoy narghile"	},
			selPersonalCharcoalType: {	required: "Please select the type of charcoal you personally uses"	},
			selNarghilePeople: { 	required: "Please select How many people in your household enjoy a narghile"	},
			selBirthdayMonth: { 	required: "Please select your Date of Birth Month"	},
			selBirthdayDay: { 		required: "Please select your Date of Birth Day"	},
			selBirthdayYear: { 		required: "Please select your Date of Birth Year"	},
			selGender: { 			required: "Please select a Gender"	},
			selPurchaseReasons: { 	required: "Please select 3 to 5 reasons you chose the Shishavac",
									rangelength: "Please select only 3 to 5 reasons you chose the Shishavac"	},
			selFamilyIncome: { 		required: "Please enter your Family Income"	},
			txtComments: { 			},
			selBestContact: { 		required: "Please select the best way to contact you"	},
			chkTermsAgree: { 		required: "You must agree to this websites Terms &amp; Conditions"	}
		}
	});
	
	$("#btnSubmit").click(function() {
		if (!$('#frmRegister').valid()) {
			alert("Please correct the highlighted fields.");
			return false;
		}
		else {	return true;	}
	});
	
});