(function($) {

	var searchType = " instructors";
	var sortBy = "firstname"
	var getInstructors = function(stime, etime){
		$("#center .panel h4").text("finding"+searchType);
		$("#searchlist").empty();
		$.ajax({
		    url: $baseUrl+"data/instructors"
			,data: {q: $("#filter").val(), s: sortBy, o: $("#organization").val() }
		    ,success: handleSearch
		    ,error: handleSearchError
		});
	};
	var handleSearchError = function(msg){};
	var handleSearch = function(data){
		$("#searchlist").html(data);
		var recs = $("#searchlist li");
		if(recs.length > 0){
			$("#center .panel h4").text(recs.length+(recs.length==1?searchType.substring(0,searchType.length-1):searchType)+" found");
		} else {
			$("#center .panel h4").text("No"+searchType+" found");
		}
	};
	var handleFilterSearch = function(e){
		if(e.keyCode == 13){
			getInstructors();
		}	
	};
	var handleFilterOrganization = function(e){
		getInstructors();
	};
	var handleSortByClick = function(e){
		$("#sortby li.selected").removeClass("selected");
		$(e.target).addClass("selected");
		sortBy = $(e.target).attr("sort");
		getInstructors();
	};
	
	$.danceful.instructors = function(){
		$("#sortby li").click(handleSortByClick);
		$("#formSearch").submit($.danceful.empty);
		$("#filter").keydown(handleFilterSearch);
		$("#organization").change(handleFilterOrganization);
		getInstructors();
	};

	$(function(){ new $.danceful.instructors() });
})(jQuery);
