		var BASE_URL = "";
		var CONTENT_URL = BASE_URL + 'medals.js';
		var ROOT = '#medal_board';
		var order = 'gold';

		function padout(number) { return (number < 10) ? '0' + number : number; }

		function bubbleSort(arrayName,length) {
		    for (var i=0; i<(length-1); i++)
		        for (var j=i+1; j<length; j++)
		            if (arrayName[j] < arrayName[i]) {
		                var dummy = arrayName[i];
		                arrayName[i] = arrayName[j];
		                arrayName[j] = dummy;
		            }
		}

		function myObjectToString() {
		    return '' + padout(this.total) + padout(this.gold) + padout(this.silver) + padout(this.bronze) + this.ioc;
		}
		
		Object.prototype.toString = myObjectToString;

		function loadCountries()
		{
			var countries = {};

			$.ajax({
				type: "GET",
				url: "ioc_countries.xml",
				dataType: "xml",
				async: false,
				success:function(xml)
				{
					$("country",xml).each(function(i)
					{
						var ioc = ''; 
						ioc = $(this).attr('name');
						var	name = $(this).text();
						countries[ioc] = name;
					});
				}
			});

			return countries;
		}

		function getMedalBoardFull(order)
		{
			requestData = $.getJSON(
				CONTENT_URL,
				function(json)
				{
					var out = '';
					var countries = loadCountries();

					if(order=='total')
					{
						bubbleSort(json.MedalCounts, json.MedalCounts.length);
						json.MedalCounts.reverse();
					}
					for(var i=0; i < json.MedalCounts.length; i++)
					{
						line =  "<tr class='";
						if(json.MedalCounts[i].ioc == 'BRA') { line += "brasil"; }
						else if((i+1)%2==0) { line += "fundo_par"; }
						else { line += "fundo_impar"; }
						line += "'><td>" + (i+1) + "&ordm; </td><td>";
						line += countries[json.MedalCounts[i].ioc] + "</td><td>";
						line += json.MedalCounts[i].gold + "</td><td>";
						line += json.MedalCounts[i].silver + "</td><td>";
						line += json.MedalCounts[i].bronze + "</td><td>";
						line += json.MedalCounts[i].total + "</td></tr>";
						out += line;

					} 
					$(ROOT).html(out);
				}
			);
		}

		
		$(document).ready(function()
		{
			getMedalBoardFull(order);
			
			$("#choose_order > li > a").click(function()
			{
				getMedalBoardFull(this.rel);
				return false;
			});
		});

