function populateServer(sid, response, clear) {
	if(clear) {
		removeChildrenFromNode($('gameserver'+sid));
	}
	base = document.createElement('div');
	base.setAttribute('id', 'server'+sid);
	base.setAttribute('style', 'margin-left:2px; display:none;');
	buildDivAndText(response.name, base, 0);
	buildDivAndText(response.ip, base, 0);
	buildDivAndText(response.game_type, base, 0);
	buildDivAndText(response.players, base, 0);
	buildDivAndText(response.map, base, 5);
	buildImg(response.map_img, base, 0);
	$('gameserver'+sid).appendChild(base);
	new Effect.Appear($('server'+sid), { duration: 0.5 });
}

function buildDivAndText(text, base, spacing) {
	e = document.createElement('div');
	e.setAttribute('style', 'margin-bottom:'+spacing+'px');
	e.appendChild(document.createTextNode(text));
	base.appendChild(e);
}

function buildImg(src, base) {
	e = document.createElement('img');
	e.setAttribute('src', src);
	base.appendChild(e);
}

function removeChildrenFromNode(node) {
	while (node.hasChildNodes()) {
		node.removeChild(node.firstChild);
    }
}

function makeGameServerRequest(sip, sport, sid, clear) {
	if($('server'+sid) != null) {
		new Effect.Fade($('server'+sid), { duration: 0.5, from: 1, to: 0 });
	}
	
	new Ajax.Request('plugins/gameservers/inc/games/ajax/mohaa.ajax.index.php', 
	{
		method: 'get', 
		parameters: {ip:sip, port:sport, id:sid},
		onSuccess: function(transport) { populateServer(sid, transport.responseText.evalJSON(), clear); }
	});
}