/*
-----------------------------------------------
CommunityNeuro.org
Script: vdwMembers.js
Author: Ben Glassman
Organization: Vermont Design Works
Created: 15 July 2009
----------------------------------------------- */

vdwMembers = {
	init:function() {
		vdwMembers.updateLocations();
		$jq("#country").change(vdwMembers.updateLocations);
		$jq("#state_us").change(vdwMembers.showTownInput);
		$jq('#join-directory-form').prepareFormVal().validate({
			rules : {
				business_name : 'required',
				contact_name : 'required',
				email : { required: true, email: true },
				description : 'required',
				country : 'required',
				state : { required : function() { return ($jq("#country").val() != "United States of America"); }},
				state_us : { required : function() { return ($jq("#country").val() == "United States of America"); }},
				address : 'required',
				town : { required : function() { return ($jq("#country").val() == "United States of America" && $jq("#state_us").val() != "VT"); }},
				town_vt : { required : function() { return ($jq("#country").val() == "United States of America" && $jq("#state_us").val() == "VT"); }},
				zip : 'required',
				username : 'required',
				passwd : 'required',
				passwd_confirm : {
					required : true,
					equalTo : '#passwd'
				},
				'categories[]' : 'required'
			},
			messages : {
				business_name : 'Business Name is required',
				contact_name : 'Contact Name is required',
				email : 'A valid email is required',
				description : 'Description is required',
				country : 'Country is required',
				state : 'State is required',
				state_us : 'State is required',
				address : 'Address is required',
				town : 'Town is required',
				town_vt : 'Town is required',
				zip : 'Zip is required'/*,
				username : 'Username is required',
				passwd : 'Password is required',
				passwd_confirm : {
					required : 'Confirm Password is required',
					equalTo: 'Confirm Password must match'
				},
				'categories[]' : 'At least one category is required'*/
			}
		});
		$jq('#member-profile-form').prepareFormVal().validate({
			rules : {
				business_name : 'required',
				contact_name : 'required',
				email : { required: true, email: true },
				description : 'required',
				'categories[]' : 'required'
			},
			messages : {
				business_name : 'Business Name is required',
				contact_name : 'Contact Name is required',
				email : 'A valid email is required',
				description : 'Description is required',
				zip : 'Zip is required',
				'categories[]' : 'At least one category is required'
			}
		});
	},
	updateLocations : function() {
		vdwMembers.showStateInput();
		vdwMembers.showTownInput();
	},
	showStateInput : function() {
		if ($jq("#country").val() == "United States of America") {
			$jq("#state_us").show();
			$jq("#state").hide();
		} else {
			$jq("#state_us").hide();
			$jq("#state").show();
		}	
	},
	showTownInput : function() {
		if ($jq("#country").val() == "United States of America" && $jq("#state_us").val() == "VT") {
			$jq("#town_vt").show();
			$jq("#town_il").hide();
			$jq("#town").hide();
		} else if ($jq("#country").val() == "United States of America" && $jq("#state_us").val() == "IL") {
			$jq("#town_il").show();
			$jq("#town_vt").hide();
			$jq("#town").hide();
		} else {
			$jq("#town_vt").hide();
			$jq("#town_il").hide();
			$jq("#town").show();
		}	
	}
}

$jq(document).ready(vdwMembers.init);