$().ready(function() {

	$("#flash").hide();

	$('#address_info').hide();
	$('#mailing_list').bind('change', function(){
		if ( this.checked ) {
			$('#address_info').fadeIn();
		} else {
			$('#address_info').fadeOut();
		}
	});


	// autocomplete

	function formatItem(r) {
		return r[1];
	}
	function formatResult(r) {
		return r[1];
	}

	$("#country")
		.autocomplete( countries, {
			selectFirst: true,
			autoFill: true,
			formatItem: formatItem,
			formatResult: formatResult
		})
		.result(function(e, d, f) {
			var code = (d ? d[0] : "");
			$("#country_code").val(code);
		});

	$("#state_name")
		.autocomplete( provstates, {
			selectFirst: true,
			autoFill: true,
			formatItem: formatItem,
			formatResult: formatResult
		})
		.result(function(e, d, f) {
			var code = (d ? d[0] : "");
			$("#state_code").val(code);
		});


		// all done 

		function doSuccess() {
			$('#page_content').html(
				"<h1>Mailing List</h1>\n" +
				"<p>Thank you.  Your address will be added to Continuum&rsquo;s mailing list shortly.</p>\n"
			);
		}

		function doError($msg) {
			var e = $('<div id="form_error"></div>').html($msg);
			$("#mform").before(e);
		}

		// validate signup form on keyup and submit
		var validator = $('#mform').validate({
			rules: {
				first_name: { required: true },
				last_name: { required: true },
				email_address: { required: true, email: true },
				confirm_email: { required: true, equalTo: '#email_address' },
				address_line_1: { required: '#mailing_list:checked' },
				city_name: { required: '#mailing_list:checked' },
				state_name: { required: '#mailing_list:checked' },
				country: { required: '#mailing_list:checked' },
				zip_code: { required: '#mailing_list:checked' },
			},
			messages: {
				first_name: { required: 'Please enter your first name' },
				last_name: { required: 'Please enter your last name' },
				email_address: { required: 'Please enter your email address', email: 'Please enter a valid email address' },
				confirm_email: { required: 'Please re-enter your email address', equalTo: 'Please enter the same email address as above' },
				address_line_1: { required: 'Please enter your mailing address' },
				city_name: 'Required',
				state_name: 'Required',
				country: 'Required',
				zip_code: 'Required',
			},
			errorElement: 'em',
			submitHandler: function(form) {
				$('#submit').val('Please wait...');
				$("#flash").fadeOut(400, function() {
					$(this).removeClass('error').html();
				});
				$.ajax({
				  type: 'POST',
				  url: 'do_signup.php',
					timeout: 10000,
				  data: $(form).serialize(),
					error: function(xhr, text, err) {
						$("#flash").addClass('error').html(xhr.responseText).fadeIn();
						$('#submit').val('Sign up');
					},
					success: function(data, text, xhr) {
						$("#flash").html(data).fadeIn();
						$('#page_content p').fadeOut();
						$('#mform').fadeOut();
					}
				});
				
			},
			debug: true
		});




});

var countries = [
	["af", "Afghanistan"],
	["ax", "Aland Islands"],
	["al", "Albania"],
	["dz", "Algeria"],
	["as", "American Samoa"],
	["ad", "Andorra"],
	["ao", "Angola"],
	["ai", "Anguilla"],
	["aq", "Antarctica"],
	["ag", "Antigua and Barbuda"],
	["ar", "Argentina"],
	["am", "Armenia"],
	["aw", "Aruba"],
	["au", "Australia"],
	["at", "Austria"],
	["az", "Azerbaijan"],
	["bs", "Bahamas"],
	["bh", "Bahrain"],
	["bd", "Bangladesh"],
	["bb", "Barbados"],
	["by", "Belarus"],
	["be", "Belgium"],
	["bz", "Belize"],
	["bj", "Benin"],
	["bm", "Bermuda"],
	["bt", "Bhutan"],
	["bo", "Bolivia"],
	["ba", "Bosnia and Herzegovina"],
	["bw", "Botswana"],
	["bv", "Bouvet Island"],
	["br", "Brazil"],
	["io", "British Indian Ocean Territory"],
	["bn", "Brunei Darussalam"],
	["bg", "Bulgaria"],
	["bf", "Burkina Faso"],
	["bi", "Burundi"],
	["kh", "Cambodia"],
	["cm", "Cameroon"],
	["ca", "Canada"],
	["cv", "Cape Verde"],
	["ky", "Cayman Islands"],
	["cf", "Central African Republic"],
	["td", "Chad"],
	["cl", "Chile"],
	["cn", "China"],
	["cx", "Christmas Island"],
	["cc", "Cocos (Keeling) Islands"],
	["co", "Colombia"],
	["km", "Comoros"],
	["cd", "Congo, Democratic Republic of"],
	["cg", "Congo"],
	["ck", "Cook Islands"],
	["cr", "Costa Rica"],
	["ci", "Cote D&rsquo;Ivoire"],
	["hr", "Croatia"],
	["cy", "Cyprus"],
	["cz", "Czech Republic"],
	["dk", "Denmark"],
	["dj", "Djibouti"],
	["do", "Dominican Republic"],
	["dm", "Dominica"],
//	["tmp", "East Timor"],
	["ec", "Ecuador"],
	["eg", "Egypt"],
	["sv", "El Salvador"],
//	["eng", "England"],
	["gq", "Equatorial Guinea"],
	["er", "Eritrea"],
	["ee", "Estonia"],
	["et", "Ethiopia"],
	["fo", "Faroe Islands"],
	["fk", "Faukland Islands"],
	["fj", "Fiji"],
	["fi", "Finland"],
	["fr", "France"],
	["gf", "French Guyana"],
	["pf", "French Polynesia"],
	["tf", "French Southern Territories"],
	["ga", "Gabon"],
	["gm", "Gambia"],
	["ge", "Georgia"],
	["de", "Germany"],
	["gh", "Ghana"],
	["gi", "Gibraltar"],
	["gr", "Greece"],
	["gl", "Greenland"],
	["gd", "Grenada"],
	["gp", "Guadeloupe"],
	["gu", "Guam"],
	["gt", "Guatemala"],
	["gg", "Guernsey"],
	["gw", "Guinea-Bissau"],
	["gn", "Guinea"],
	["gy", "Guyana"],
	["ht", "Haiti"],
	["hm", "Heard and McDonald Islands"],
	["hn", "Honduras"],
	["hk", "Hong Kong"],
	["hu", "Hungary"],
	["is", "Iceland"],
	["in", "India"],
	["id", "Indonesia"],
	["iq", "Iraq"],
	["ie", "Ireland"],
	["im", "Isle of Man"],
	["il", "Israel"],
	["it", "Italy"],
	["jm", "Jamaica"],
	["jp", "Japan"],
	["je", "Jersey"],
	["jo", "Jordan"],
	["kz", "Kazakhstan"],
	["ke", "Kenya"],
	["ki", "Kiribati"],
	["kw", "Kuwait"],
	["kg", "Kyrgyzstan"],
	["la", "Laos"],
	["lv", "Latvia"],
	["lb", "Lebanon"],
	["ls", "Lesotho"],
	["lr", "Liberia"],
	["ly", "Libya"],
	["li", "Liechtenstein"],
	["lt", "Lithuania"],
	["lu", "Luxembourg"],
	["mo", "Macao"],
	["mk", "Macedonia"],
	["mg", "Madagascar"],
	["mw", "Malawi"],
	["my", "Malaysia"],
	["mv", "Maldives"],
	["ml", "Mali"],
	["mt", "Malta"],
	["mh", "Marshall Islands"],
	["mq", "Martinique"],
	["mr", "Mauritania"],
	["mu", "Mauritius"],
	["yt", "Mayotte"],
	["mx", "Mexico"],
	["fm", "Micronesia"],
	["md", "Moldova"],
	["mc", "Monaco"],
	["mn", "Mongolia"],
	["me", "Montenegro"],
	["ms", "Montserrat"],
	["ma", "Morocco"],
	["mz", "Mozambique"],
	["mm", "Myanmar"],
	["na", "Namibia"],
	["nr", "Nauru"],
	["np", "Nepal"],
	["an", "Netherlands Antilles"],
	["nl", "Netherlands"],
	["nc", "New Caledonia"],
	["nz", "New Zealand"],
	["ni", "Nicaragua"],
	["ng", "Nigeria"],
	["ne", "Niger"],
	["nu", "Niue"],
	["nf", "Norfolk Island"],
//	["nir", "Northern Ireland"],
	["mp", "Northern Mariana Islands"],
	["no", "Norway"],
	["om", "Oman"],
	["pk", "Pakistan"],
	["pw", "Palau"],
	["ps", "Palestinian Territory, Occupied"],
	["pa", "Panama"],
	["pg", "Papua New Guinea"],
	["py", "Paraguay"],
	["pe", "Peru"],
	["ph", "Philippines"],
	["pn", "Pitcairn"],
	["pl", "Poland"],
	["pt", "Portugal"],
	["pr", "Puerto Rico"],
	["qa", "Qatar"],
	["re", "Reunion"],
	["ro", "Romania"],
	["ru", "Russian Federation"],
	["rw", "Rwanda"],
	["bl", "Saint Barthelemy"],
	["sh", "Saint Helena"],
	["kn", "Saint Kitts and Nevis"],
	["lc", "Saint Lucia"],
	["mf", "Saint Martin"],
	["pm", "Saint Pierre and Miquelon"],
	["vc", "Saint Vincent & the Grenadines"],
	["ws", "Samoa"],
	["sm", "San Marino"],
	["st", "Sao Tome and Principe"],
	["sa", "Saudi Arabia"],
//	["sct", "Scotland"],
	["sn", "Senegal"],
	["rs", "Serbia"],
	["sc", "Seychelles"],
	["sl", "Sierra Leone"],
	["sg", "Singapore"],
	["sk", "Slovakia"],
	["si", "Slovenia"],
	["sb", "Solomon Islands"],
	["so", "Somalia"],
	["za", "South Africa"],
	["gs", "South Georgia & South Sandwich Island"],
	["kr", "South Korea"],
	["es", "Spain"],
	["lk", "Sri Lanka"],
	["sr", "Suriname"],
	["sj", "Svalbard and Jan Mayen"],
	["sz", "Swaziland"],
	["se", "Sweden"],
	["ch", "Switzerland"],
	["tw", "Taiwan"],
	["tj", "Tajikistan"],
	["tz", "Tanzania"],
	["th", "Thailand"],
	["tg", "Togo"],
	["tk", "Tokelau"],
	["to", "Tonga"],
	["tt", "Trinidad and Tobago"],
	["tn", "Tunisia"],
	["tr", "Turkey"],
	["tm", "Turkmenistan"],
	["tc", "Turks and Caicos Islands"],
	["tv", "Tuvalu"],
	["ug", "Uganda"],
	["ua", "Ukraine"],
	["ae", "United Arab Emirates"],
	["gb", "United Kingdom"],
	["um", "United States Minor Outlying Islands"],
	["us", "United States"],
	["uy", "Uruguay"],
	["uz", "Uzbekistan"],
	["vu", "Vanuatu"],
	["va", "Vatican City State"],
	["ve", "Venezuela"],
	["vn", "Viet Nam"],
	["vg", "Virgin Islands, British"],
	["vi", "Virgin Islands, U.S."],
//	["wl", "Wales"],
	["wf", "Wallis and Futuna"],
	["eh", "Western Sahara"],
	["ye", "Yemen"],
	["zm", "Zambia"],
	["zw", "Zimbabwe"]
];

var provstates = [
	["AL", "Alabama"],
	["AK", "Alaska"],
	["AZ", "Arizona"],
	["AR", "Arkansas"],
	["AA", "Armed Forces Americas"],
	["AE", "Armed Forces Europe"],
	["AP", "Armed Forces Pacific"],
	["CA", "California"],
	["CO", "Colorado"],
	["CT", "Connecticut"],
	["DE", "Delaware"],
	["DC", "District of Columbia"],
	["FL", "Florida"],
	["GA", "Georgia"],
	["HI", "Hawaii"],
	["ID", "Idaho"],
	["IL", "Illinois"],
	["IN", "Indiana"],
	["IA", "Iowa"],
	["KS", "Kansas"],
	["KY", "Kentucky"],
	["LA", "Louisiana"],
	["ME", "Maine"],
	["MD", "Maryland"],
	["MA", "Massachusetts"],
	["MI", "Michigan"],
	["MN", "Minnesota"],
	["MS", "Mississippi"],
	["MO", "Missouri"],
	["MT", "Montana"],
	["NE", "Nebraska"],
	["NV", "Nevada"],
	["NH", "New Hampshire"],
	["NJ", "New Jersey"],
	["NM", "New Mexico"],
	["NY", "New York"],
	["NC", "North Carolina"],
	["ND", "North Dakota"],
	["OH", "Ohio"],
	["OK", "Oklahoma"],
	["OR", "Oregon"],
	["PA", "Pennsylvania"],
	["RI", "Rhode Island"],
	["SC", "South Carolina"],
	["SD", "South Dakota"],
	["TN", "Tennessee"],
	["TX", "Texas"],
	["UT", "Utah"],
	["VT", "Vermont"],
	["VA", "Virginia"],
	["WA", "Washington"],
	["WV", "West Virginia"],
	["WI", "Wisconsin"],
	["WY", "Wyoming"],

	["AB", "Alberta"],
	["BC", "British Columbia"],
	["MB", "Manitoba"],
	["NB", "New Brunswick"],
	["NL", "Newfoundland and Labrador"],
	["NT", "Northwest Territories"],
	["NS", "Nova Scotia"],
	["NU", "Nunavut"],
	["ON", "Ontario"],
	["PE", "Prince Edward Island"],
	["QC", "Quebec"],
	["SK", "Saskatchewan"],
	["YT", "Yukon Territory"]
];
