function games_show(type, num, my_a)
{
	var toshow = type+num;
	var tohide = type;
	
	if(num==1) tohide +=2;
	else tohide +=1;
	
	if(document.getElementById(toshow) == null) return;
	
	document.getElementById(toshow).style.display = "inline-block";
	document.getElementById(tohide).style.display = "none";

	var a_el = document.getElementById(type).getElementsByTagName("a");
	
	for(var i=1;i<a_el.length;i++)
	{
		var a_sel = a_el[i];
		a_sel.id = "none";
		if(num==i-1) a_sel.id = "selected";
	}
}
function change_rank_type(value)
{
	var game_list = document.getElementById("rank_games_list");
	var bdate_list = document.getElementById("rank_begindate_list");
	var edate_list = document.getElementById("rank_enddate_list");
	
	if(game_list == null) return;

	if(value != '')
	{
		switch(value)
		{
			case 'mainrank':
				hide_rank_elements(game_list, bdate_list, edate_list);
				break;
			case 'gamesrank':
				hide_rank_elements(game_list, bdate_list, edate_list);
				break;
			case 'activityrank':
				hide_rank_elements(game_list, bdate_list, edate_list);
				break;
			case 'referrals':
				hide_rank_elements(game_list, bdate_list, edate_list);
				break;
			case 'dates':
				bdate_list.getElementsByTagName("label")[0].style.display = "inline";
				bdate_list.getElementsByTagName("span")[0].style.display = "inline";
				edate_list.getElementsByTagName("label")[0].style.display = "inline";
				edate_list.getElementsByTagName("span")[0].style.display = "inline";
				game_list.getElementsByTagName("label")[0].style.display = "inline";
			    game_list.getElementsByTagName("select")[0].style.display = "block";
			    break;
			default:
				game_list.getElementsByTagName("label")[0].style.display = "inline";
			    game_list.getElementsByTagName("select")[0].style.display = "block";
			    bdate_list.getElementsByTagName("label")[0].style.display = "none";
				bdate_list.getElementsByTagName("span")[0].style.display = "none";
				edate_list.getElementsByTagName("label")[0].style.display = "none";
				edate_list.getElementsByTagName("span")[0].style.display = "none";

		}
	}

}

function hide_rank_elements(game_list, bdate_list, edate_list)
{
	game_list.getElementsByTagName("label")[0].style.display = "none";
	game_list.getElementsByTagName("select")[0].style.display = "none";
	bdate_list.getElementsByTagName("label")[0].style.display = "none";
	bdate_list.getElementsByTagName("span")[0].style.display = "none";
	edate_list.getElementsByTagName("label")[0].style.display = "none";
	edate_list.getElementsByTagName("span")[0].style.display = "none";
}
function rank_show(num)
{
	var tosel = 1;
	if(num!=''){
		
		if(num=='alltime')
		{
			document.getElementById("gr_today").style.display = 'none';
			document.getElementById("gr_thisweek").style.display = 'none';
			document.getElementById("gr_alltime").style.display = 'block';
			tosel = 3;
		}
		else if(num=='thisweek')
		{
			document.getElementById("gr_today").style.display = 'none';
			document.getElementById("gr_thisweek").style.display = 'block';
			document.getElementById("gr_alltime").style.display = 'none';
			tosel = 2;
		}
		else if(num=='today')
		{
			document.getElementById("gr_today").style.display = 'block';
			document.getElementById("gr_thisweek").style.display = 'none';
			document.getElementById("gr_alltime").style.display = 'none';
			tosel = 1;
		}
	}
	for(var i=1;i<=3;i++)
	{
		var li = document.getElementById("r"+i);
		li.className = "";
		if(i==tosel) li.className = "sel";
	}		
}
function fav_show(id, id2)
{
	if(id!='' && id2!='')
	{
		document.getElementById(id).style.display = 'none';
		if(id2=='fav_show') document.getElementById(id2).style.display = 'inline';
		else document.getElementById(id2).style.display = 'block';
	}
}
function just_play()
{
	document.getElementById("my_game").style.display = 'block';
	document.getElementById("my_login").style.display = 'none';	
}
function select_field(id)
{
	 document.getElementById(id).focus();
	 document.getElementById(id).select();
}


var is_opened = false;
var hs_games_arr = new Array();
var hs_games_num = 0;
var hs_games_left = 0;
var pop_up_bg = "#my_game_bg";
var pop_up_box = "#my_game_popup";

function getGamesID(user_id, culture)
{
	clearGameList();
	hs_games_left = 1;
	var url = "/user_get_games/";
	$.getJSON(url, function(data){
		
		hs_games_arr = data.games;
		//console.log(hs_games_arr[1]);
		hs_games_num = hs_games_arr.length;
		getUserHighScores(user_id, culture);
	});
}
function getUserHighScores(user_id, culture)
{
	var url = "/user_get_highscores/";
	var hs_game_id = hs_games_arr.pop();
	$.getJSON(url, { user_id: user_id, game_id: hs_game_id },
			function(data){
				//console.log(data.hs);
				var r = data.hs;
				displayGame(r.gid, r.gn, r.gns, r.score, r.pos, culture);
				if(hs_games_arr.length>0 && is_opened){
					getUserHighScores(user_id, culture);
				}
				displayGamesLeft();
			}
	);
	
}
function displayGamesLeft(culture)
{
	$("#hs_left_s").html((hs_games_left++)+"/"+hs_games_num);
}
function displayGame(game_id, game_name, game_name_stripped, user_score, user_position, culture)
{
	var my_class = "hs_displayed";
	var my_id = "hs_"+game_id;
	var img_name = "";
	if(user_score==0) {
		my_class = "hs_displayed_light";
		user_position = "~";
	}else{
		if(user_position == 1) img_name = "gameonade_smedal_gold.png";
		else if(user_position == 2) img_name = "gameonade_smedal_silver.png";
		else if(user_position == 3) img_name = "gameonade_smedal_bronze.png";
	}
	
	$("#hs_display").before("<li class=\""+my_class+"\" id=\""+my_id+"\"><a target=\"_blank\" href=\"/"+culture+"/game/"+game_id+"/"+game_name_stripped+"\">"+game_name+"</a><span class=\"hs_user_score\"><b>"+user_position+"</b><br/> "+user_score+"</span></li>");
		
	if(img_name!="") $('#'+my_id).css("background", "#F08F00 url(/img/medals/"+img_name+") no-repeat left bottom");
	
}
function clearGameList()
{
	$("#hs_left_s").html("-");
	$("#hs_display_div").html("<ul id=\"hs_display\">"+hs_info_li+"</ul>");
}
function displayPopup(bg_id, popup_id){
	//alert("TEST");
	if(!is_opened){
		$(bg_id).css({"opacity":"0.9"});
		$(bg_id).fadeIn("fast");
		$(popup_id).fadeIn("fast");
		is_opened = true;
	}
}
function hidePopup(bg_id, popup_id){
	if(is_opened){
		$(bg_id).fadeOut("fast");
		$(popup_id).fadeOut("fast");
		is_opened = false;
	}
}
function centerPopup(bg_id, popup_id){
	var w_w = $("#top").width();//document.documentElement.clientWidth;
	var w_h = document.documentElement.clientHeight;
	
	var p_w = $(popup_id).width();
	var p_h = $(popup_id).height();
	//alert("PW:"+p_w+" PH:"+p_h);
	
	$(bg_id).css({"height":w_h});
	//$("#my_game_popup").css({ "position":"absolute", "top": w_h/2 - p_h/2, "left": w_w/2 - p_w/2});
	$(popup_id).css({ "position":"absolute", "top": 0, "left":w_w/2 - p_w/2 - 10});
	
}

/*FORUM*/
var is_loading = false;
var content_type = "application/x-www-form-urlencoded";
var post_url = "/forum/edit";
var delete_url = "/forum/delete";
var tiny_set = "bold,italic,underline,strikethrough,|,fontsizeselect,forecolor,|,bullist,numlist,|,blockquote,link,unlink,image,|,cleanup,undo,redo,preview";
var tiny_w = "730px";
var tiny_h = "200px";
function newPost(){
	initTiny("post_content", "test");
}
function editPost(p_id, f_post){
	var p_content = "";
	var t_id = "t_"+p_id;
	var fr_id = "fr_"+p_id;
	if ($("#"+t_id).length == 0){
		p_content = f_post.children(".forum_desc").html();
		f_post.after($("#html_to_copy").html());
		f_post.next().children("textarea").attr("id", t_id);
		f_post.next().children("textarea").parent().attr("id", fr_id); 
		f_post.children(".forum_desc").css("display", "none");
		f_post.children(".forum_desc").after('<div class="forum_desc_preview">'+p_content+'</div>');
		$("#"+t_id).val(p_content);
		initTiny(t_id, p_content);
		$("#"+fr_id).children(".post_buttons").children("#cancel_submit").click(
				function(){
					var r = confirm(confirm_text);
					if (r==true) editPost(p_id, f_post); 
				});
		
		$("#"+fr_id).children(".post_buttons").children("#post_submit").click(
				function(){
					if(!is_loading){
						var tiny = tinyMCE.get(t_id);
						tiny.setProgressState(1);
						var message = tiny.getContent();
						is_loading = true;
						$.ajax({
			                url: post_url,
			                content_type : content_type,
			                type: "POST",
			                data: "message="+encodeURIComponent(message)+"&p_id="+p_id,
			                success : function(r) {
			                    tiny.setProgressState(0);
			                    is_loading = false;
			                    var res = unescape(r);
			                    if(res == "isok"){
			                    	f_post.children(".forum_desc").html(message);
				                    editPost(p_id, f_post);
			                    }else{
			                    	alert(res);
			                    }
			                },
							error:function(xhr,err,e){ 
								alert( "Error: " + err ); 
							}
			            });
					}
				});
	}else{
		tinyMCE.execCommand('mceFocus', false, t_id);  
		tinyMCE.execCommand('mceRemoveControl', false, t_id);
		f_post.children(".forum_desc_preview").remove();
		f_post.children(".forum_desc").css("display", "block");
		$("#"+fr_id).remove();
	}
}
function deletePost(p_id, f_post){
	$(f_post).css({"opacity":"0.5"});
	var r = confirm(confirm_delete_text);
	if (r==true) {
		
		f_post.html("wait...");
		$.ajax({
			 url: delete_url,
			 content_type : content_type,
			 type: "POST",
			 data: "p_id="+p_id,
			 success : function(r) {
				 var res = unescape(r);
				 if(res == "isok"){
					  f_post.parent().hide();
				 //}else if(res == "tdel"){
					// window.location.href = "";
				 }else{
					 var t_res = res.split("&&&");
					 if(t_res[0]=="red") $(location).attr('href',t_res[1]);
					 else alert(res);
				 }
			 },
			 error:function(xhr,err,e){ 
				alert( "Error: " + err ); 
			 }
		});
	}else $(f_post).css({"opacity":"1"});
}
function quotePost(p_id, f_post){
	var tiny = tinyMCE.get("post_content");
	var c = tiny.getContent();
	var username = f_post.children(".forum_user").children("h2").children("a").html();
	tiny.setContent(c+"<cite>"+username+":</cite><blockquote>"+f_post.children(".forum_desc").html()+"</blockquote>");
}
function initTiny(field){
	tinyMCE.execCommand('mceAddControl', false, field);	
}
function generatePreview(tarea_id){
	var tiny = tinyMCE.get(tarea_id);
	if(tarea_id == "post_content" || tarea_id == "forum_topics_desc"){
		var preview_element = $("#preview_li").children(".forum_post").children(".forum_desc");
		if(tiny.getContent().length>0){
				$("#preview_li").css("display", "inherit");
		}else if(tiny.getContent().length==0) $("#preview_li").css("display", "none");
	}else {	
		var id_arr = tarea_id.split("_");
		var preview_element = $("[name="+id_arr[1]+"]").parent().children(".forum_desc_preview");
	}
	preview_element.html(tiny.getContent());
}


