var client_debug = false;
var isDirty = false;
var ROOT = "";
function getClientGridNumber(free)
{
	var no;
	var skip;
	var sanity = 0;
	while(true)
	{
		skip = false;
		no = Math.floor(Math.random()*(grid.length));
		//alert("NO:" + no);
		
		if(!isDirty && (no == 10 || no == 11))
			skip = true;

		if(!skip)
		{					
			if(free)
			{
				if(!grid[no]) return no;
			}
			else
			{
				if(grid[no])
				{
					if(!$("#client .square" + no + " a").hasClass("clicked"))
						return no;
				}
			}
		}
		
		sanity++;
		if(sanity > 100)
			return false;	
	}
}
function getNextClient()
{
	var clientMember;
	var id;
	var i;
	var proceed = false;
	var sanity = 0;
	while(true)
	{
		clientMember = client[clientCount].split(":");
		id = clientMember[0];
		proceed = true;
		for(i=0;i<grid.length;i++)
		{
			//alert(grid[i] + "==" + id);
			if(grid[i] == id)
				proceed = false;
		}
		
		clientCount++;
		if(clientCount >= client.length)
			clientCount = 0;

		if(proceed)
			return clientMember;
			
		sanity++;
		
		if(sanity > 100)
			return false;	
	}
}

function randomClientInsert()
{
	//var remove = grid[Math.floor(Math.random()*(grid.length))];
	//alert("GOT HERE");
	var remove = getClientGridNumber(false);
	if(remove)
	{
		//alert("REMOVING " + remove);
		
		if(client_debug)
			$("#debug").html($("#debug").html() + "<br />Remove client member at cell #" + remove);
		//$("#debug").html("TEAM COUNT: " + clientCount + ", REMOVING NO: " + remove);
		
		$("#client-holder .square" + remove + " a img").customFadeOut(2000, function()
		{ 
			grid[remove] = 0;
			var clientMember = getNextClient();
			if(clientMember)
			{
				if(client_debug)
					$("#debug").html($("#debug").html() + "<br />Client Member to Insert:" + clientMember[1]);
				
				var insert = getClientGridNumber(true);
				if(insert)
				{
					//$("#debug").html("INSERTING " + clientMember[1]);
					
					if(client_debug)
						$("#debug").html($("#debug").html() + "<br />Insert into cell #" + insert);
					
					$("#client-holder .square" + remove + " a").addClass("blank");
					$("#client-holder .square" + remove + " a").removeClass("clicked");
					
					$("#client-holder .square" + insert + " a").removeClass("blank");
					$("#client-holder .square" + insert + " a").removeClass("clicked");
					$("#client-holder .square" + remove + " a img").attr("onclick", ""); // remove default
					$("#client-holder .square" + remove + " a img").unbind('click').attr('onlick',''); 
					
					
					$("#client-holder .square" + insert + " a img").customFadeOut(1);	
					$("#client-holder .square" + insert + " a img").attr("src", ROOT + "/uploadedimages/client/" + clientMember[2]);
					/*$("#client-holder .square" + insert + " a img").attr("tiptitle", clientMember[1]);*/
					$("#client-holder .square" + insert + " a img").customFadeOut(1);	
					$("#client-holder .square" + insert + " a img").customFadeIn(2000);	
										
					grid[insert] = clientMember[0];
				}
			}

		});
	}
}