$(function() {

	/** Set up UI interactions **/
	$("#shop-online").click( function(e) {
		e.preventDefault();
		$("#chosen-shop-retailers").hide();
		$("#chosen-shop-online").show();
		$(this).addClass("active-shop");
		$("#shop-retailers").removeClass("active-shop");
	});
	
	$("#shop-retailers").click( function(e) {
		e.preventDefault();
		$("#chosen-shop-retailers").show();
		$("#chosen-shop-online").hide();
		$(this).addClass("active-shop");
		$("#shop-online").removeClass("active-shop");
	});
	/** End UI interaction setup **/
	
	/** Prefetch data for retailers **/
	
	// load list of countries
	load('countries');
	// load states once countries are loaded
	$("#country-select").livequery(function() { 
		load('states');
	}); 
	
	// load retailers once states are loaded
	$("#state-select").livequery(function () {
		load('retailers');
	})
	
	/** End prefetch data **/
	
	/** Set up UI for retailer choosing **/
	
	// update retailers on country change
	$("#country-select").livequery("change", function () {
		// remove states and get new ones
		$("#state-select").html("");
		load('states');
		
		load('retailers');
	});
	
	// update retailers on state change
	$("#state-select").livequery("change", function () {
		load('retailers');
	})
	
	/** End set up UI for retailer choosing **/
	

});


function load(typeToLoad) {
	// define our data to send
	data = { type: typeToLoad };
			
	// add in country if we have one
	if ($("#country-select").val() != null) {
		data.country = $("#country-select").val();
	}
	
	// add in state if we have one
	if ( ($("#state-select").length > 0 ) && ($("#state-select").val() != null)) {
		data.state = $("#state-select").val();
	}

	// load states or countries
	$.get("library/retailer-info.php", data , function(data) {
			if (typeToLoad != 'retailers') {
				$("." + typeToLoad).html(data);
			} else {
				$("#chosen-shop-retailers").html(data);
			}
		}
	);
}

