// JavaScript Document
var last_round_winner='';
var this_round_winner='';
var player_name='nobody';
function show(list) {
	var items = list.split(",");
	for (var i=0; i<items.length; i++) {
		var el = document.getElementById(items[i]);
		el.style.display='block';
	}
}
function hide(list) {
	var items = list.split(",");
	for (var i=0; i<items.length; i++) {
		var el = document.getElementById(items[i]);
		el.style.display='none';
	}
}
function showback(who){
	document.getElementById(who+'_card').innerHTML='<img src="/tt/cardback.png">';
}
function do_gameover_cb(gameover) {
	if(gameover) {
		data=gameover.split(':::');
		document.getElementById("result").innerHTML+="<br>GAME OVER "+data[0];
		showback(data[1]);
		document.getElementById(data[2]+'_card').innerHTML=data[3]; 
		show('new_game_button');
	} else {
		if(this_round_winner == 'player') {
			show('turn_button');
		}
		else if (this_round_winner == 'cpu') {
			show('cpu_turn');
		}
		else if (this_round_winner == 'draw') {
			if(last_round_winner == 'cpu') {
				show('cpu_turn');
			} else {
				show('turn_button');
			}
		}
	}
}
function do_gameover() {
	x_gameover(player_name, do_gameover_cb);
}
function do_disable(chosen_category) {
	for(f=2; f<9; f++) {
		pcard=document.getElementById("pc"+f);
		if(pcard.childNodes[0].innerHTML) {
			pcard.innerHTML=pcard.childNodes[0].innerHTML;
		}
		if(f==chosen_category) {
			pcard.className='category2chosen';
			document.getElementById("pv"+f).className='value2chosen';
		} else {
			pcard.className='category2disabled';
			document.getElementById("pv"+f).className='value2disabled';
		}
	}
}
function do_showdeck_cb(deck_data) {
	data=deck_data.split(':::');
	who=data[0];
	deck=data[1];
	document.getElementById(who+"_deck").innerHTML=deck;
}
function do_showdeck(who) {
	x_showdeck(who, do_showdeck_cb);
}
function do_turncard_cb(newround) {
	data=newround.split(':::');
	document.getElementById("round").innerHTML="Round "+data[0];
	document.getElementById("player_stack").innerHTML=data[1];
	document.getElementById("cpu_stack").innerHTML=data[2];
	document.getElementById("pot_stack").innerHTML=data[3];
	document.getElementById(data[4]+"_card").innerHTML=data[5];
	showback('cpu');
	document.getElementById("result").innerHTML='Choose a Category';
}
function do_turncard_cpu_cb(newround) {
	data=newround.split(':::');
	document.getElementById("round").innerHTML="Round "+data[0];
	document.getElementById("cpu_card").innerHTML='';
	document.getElementById("player_stack").innerHTML=data[1];
	document.getElementById("cpu_stack").innerHTML=data[2];
	document.getElementById("pot_stack").innerHTML=data[3];
	document.getElementById(data[4]+"_card").innerHTML=data[5];
	document.getElementById("result").innerHTML="I choose "+data[7];
	document.getElementById("cpubutton").value="Compare";
	cat=data[6];
	do_disable(cat);
	document.getElementById("cpubutton").onclick=function(){do_find_winner(cat, 'N');};
	show('cpubutton');
	showback('cpu');
}

function do_turncard(who) {
	showback('cpu');
	last_round_winner=this_round_winner;
	hide('cpubutton');
	hide('cpu_turn');
	hide('turn_button');
	if (who == 'player') {
		x_turncard('player', do_turncard_cb);
	}
	if (who == 'cpu') {
		x_turncard('cpu', do_turncard_cpu_cb);
	}	
}

function do_choosecard() {
	showback('cpu');
	do_turncard('cpu');
	hide('cpu_turn');
	hide('cpubutton');
}
function do_find_winner_cb(result) {
	data=result.split(':::');
	document.getElementById("result").innerHTML=data[1];
	this_round_winner=data[0];
	document.getElementById(data[2]+"_card").innerHTML=data[3];
	do_gameover();
}
function do_find_winner(category, disable_yn) {
	if(disable_yn == 'Y') {
		do_disable(category);
	}
	hide('cpubutton');
	x_find_winner(category, do_find_winner_cb);
}
function do_deal_cb(result) {
	do_turncard('player');
}
function do_deal() {
	last_round_winner='';
	this_round_winner='';
	hide('deal_button,new_game_button');
	x_deal(do_deal_cb);
}
function check_name() {
	pname = document.getElementById("player_name");
	if(pname.value) {
		player_name=pname.value;
		hide('player_name');
		do_deal();
	} else {
		alert('Please enter your name');
	}
}
