var BandsPage = {
	displayBandInfo : function( id )
	{
		$("#status").html("Loading...")
		sxswdata.getBand(id, function(data) { 
			result = eval(data);
			$("#bandname").html(result.name+"<br><span class='genre'>"+result.genre+" - "+result.hometown+"</span>").slideDown("normal");
			
			var bandinfoHTML = $("<div class='bandinfo'>");

			if (result.mp3)
				$("#bandname").append("<div class='iconlink'><a href='"+result.mp3+"'><img src='img/song.png' width='25' height='25' alt='Song'></a></div>");
			
			if (result.image)
				$("#bandname").append("<div class='iconlink'><a href='"+result.image+"'><img src='img/pic.png' width='25' height='25' alt='Pic'/></a></div>");
			
			$(bandinfoHTML).append("<h2 class='showcases'>Showcases</h2>");
			
			var showcasesHTML = $("<div class='showcases'>");
			result.showcases.forEach( function( show ){ 
				$(showcasesHTML).append("<div class='showcase'><a href='http://maps.google.com/maps?q=" +
                                        show.address+ "%20Austin,%20TX'>"+
                                        show.club+"</a><br><span>"+show.date+"</span><span>, "+
                                        show.time+"</span></div");
			});
	
	
			$(bandinfoHTML).append(showcasesHTML);

				
			/*if (result.url)
				$("#resultslist").append("<div><a class='url' href='"+result.url+"'>SXSW Site</a></div>");*/
			
			
			$(bandinfoHTML).append("<h2 class='bio'>Bio</h2><p>"+result.bio+"</p>");
			
			$("#resultslist").fadeOut("normal").html(bandinfoHTML).slideDown("normal");
			$("#status").html("");
		});
	},
	
	displayAlphaInfo : function ( letter )
	{
		$("div.letter.active").removeClass("active");
		$("#"+letter).addClass("active");
		
		$("#status").html("Loading...");
		sxswdata.bandListAlphaHTML(letter, function(data) { 
			$("#bandname").slideUp("normal");
			$("#resultslist").html(data).fadeIn("normal");
			$("#status").html("");
		});
	}
};

$(document).ready( function() { 
	// Figure out what band list to get or to get an individual band by id from the query string
	var qs = new QueryString();
	
	if( qs.params["id"] != null )
	{
		$("div.letter.active").removeClass("active");
		BandsPage.displayBandInfo(qs.params["id"]);
	}
	else
	{
		var letter = qs.params["letter"] != null ? qs.params["letter"] : "a";
		BandsPage.displayAlphaInfo(letter);
	}
	
	$("div.letter").click( function( obj ) { 
		$("#resultslist").fadeOut("normal");
		BandsPage.displayAlphaInfo(obj.target.id);
	});
});