(function($){
	$.fn.extend({
		serverstatus: function(){
			
			function status(i){
				switch(i){
					case "0":
						return "on";
					case "1":
						return "maint";
					case "2":
						return "off";
					default:
						return "off";
				}
			}
			
			return this.each(function(){
				var obj = $(this);
				var r = Math.floor(Math.random()*1000);
				$.get("/servers/server_status.php", {i: r}, function(xml){
					var ss_output = "<table>";
					var t_span=1;
					var part = false;
					$(xml).find("world").each(function(){
						var span=1;
						ss_output += "<tr><td class=\"serv\">" + $(this).attr("name") + "</td>";
						$(this).find("server").each(function(){
							 ss_output += "<td class=\"" + status($(this).text()) + "\">" + $(this).attr("name") + "</td>";
							 span++;
						});
						$(this).find("channel").each(function(){
							ss_output += "<td class=\"" + status($(this).text()) + "\">" + $(this).attr("name") + "</td>";	
							span++;
						});
						if(t_span < span){
							t_span = span;	
						}
						ss_output += "</tr>";
					});
					ss_output += "<tr><td>&nbsp;</td><td class=\"stamp\" colspan=\"" + (t_span-1) + "\">" + $(xml).find("list").attr("time") + "</td></tr></table>";
					obj.html(ss_output);
				}, "xml");
			});
		}
	});
})(jQuery);