
jQuery.fn.exists = function(){return jQuery(this).length>0;}
function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}


$(document).ready(function(){

	/***
	$(".header_nav ul li a:not(.wiki_link)").mouseover(function(){
		$(".header_subnav").slideUp("fast");
		$(".wiki_link").css({"border-bottom" : "0"});
		//$(this).animate({"color" : "#F90", "border-bottom" : "2px solid #F90"}, 1000);
	}).mouseout(function(){
		//$(this).animate({"color" : "#FFF", "border-bottom" : "2px solid #777"}, 500);
	});
	***/
	
	$(".header_nav ul li").hover(
		function(){
			$(this).find("a.top_level").css({"border-bottom" : "2px solid #F90"});		
			$(this).find(".subnav_dropdown").css({"left" : "auto"})/*.slideDown("fast")*/;
		},
		function(){
			$(this).find(".subnav_dropdown").css({"left" : "-9999px"})/*.slideUp("fast")*/;
			$(this).find("a.top_level").css({"border-bottom" : "0"});
		}
	);
	
	
	$(".strips tr").mouseover(function() {
		$(this).addClass("over");
	}).mouseout(function() {
		$(this).removeClass("over");
	});
	
	$(".strips tr:even").addClass("alt1");
	$(".strips tr:odd").addClass("alt2");
	
	
	$(".toggleEnabled").live('click', function (e)
	{
		if ($(this).html() == 'Show only Active')
		{
			$(".disabledFlag").addClass('hiddenElement');
			$(".toggleEnabled").html('Show All');
		}
		else
		{
			$(".disabledFlag").removeClass('hiddenElement');
			$(".toggleEnabled").html('Show only Active');
		}
		return false;
	});
	
	
	$(".section .section-header").click(function() {
		var str = $(this).html();
		if (str.indexOf('+') > -1)
		{
			str = str.replace('[+]', '[-]');
		}
		else
		{
			str = str.replace('[-]', '[+]');
		}
		$(this).html(str);
		$(this).next().slideToggle("slow");
	});
	
	
	$(".ajax_train_skill").live('click', function (e)
	{
		var charID = this.getAttribute('charID');
		var skillID = this.getAttribute('skillID');
		var gameURL = location.pathname.split('/')[2];
		$('html,body').animate({scrollTop: $('#ajax_result').offset().top}, 500);
		$('#ajax_current_skills').prepend('Reloading data. Please be patient...').find('*').css('visibility', 'hidden');
		$.ajax({
			type	: "POST",
			url		: "http://www.inmyth.com/ajax_game_controller.php?gameURL=" + gameURL,
			data	: "mode=train_skill&charID=" + charID + "&skillID=" + skillID,
			success	: function(strResult)
			{
				$('#ajax_result').html(strResult).show();
				
				if ($('.charXP' + charID + ':first').exists() && $('.skillXP' + skillID + ':first').exists())
				{
					var charXP = parseInt($('.charXP' + charID + ':first').html().replace(',', ''));
					var skillCostXP = parseInt($('.skillXP' + skillID + ':first').html().replace(',', ''));
					var newXP = charXP - skillCostXP;
					$('.charXP' + charID).html(addCommas(newXP));
				}
				if ($('.charMoney' + charID + ':first').exists() && $('.skillMoney' + skillID + ':first').exists())
				{
					var charMoney = parseInt($('.charMoney' + charID + ':first').html().replace(',', ''));
					var skillCostMoney = parseInt($('.skillMoney' + skillID + ':first').html().replace(',', ''));
					var newMoney = charMoney - skillCostMoney;
					$('.charMoney' + charID).html(addCommas(newMoney));
				}
				
				$.ajax({
					type	: "POST",
					url		: "http://www.inmyth.com/ajax_game_controller.php?gameURL=" + gameURL,
					data	: "mode=refresh_skills&charID=" + charID + "&skillID=" + skillID,
					success	: function(strResult)
					{
						$('#ajax_current_skills').html(strResult);
						$(".strips tr:even").addClass("alt1");
						$(".strips tr:odd").addClass("alt2");
					}
				});
			}
		});
		return false;
	});
	
	
	
	
	
	
	
	
	$(".ajax_buy_item").live('click', function (e)
	{
		var charID = this.getAttribute('charID');
		var itemID = this.getAttribute('itemID');
		var gameURL = location.pathname.split('/')[2];
		$('html,body').animate({scrollTop: $('#ajax_result'+itemID).offset().top}, 500);
		$.ajax(
		{
			type	: "POST",
			url		: "/ajax_game_controller.php?gameURL=" + gameURL,
			data	: "mode=buy_item&charID=" + charID + "&itemID=" + itemID,
			success	: function(strResult)
			{
				$('#ajax_result'+itemID).html(strResult).show();
				
				if ($('#side_inventory').exists())
				{
					$.ajax(
					{
						type	: "POST",
						url		: "/ajax_game_controller.php?gameURL=" + gameURL,
						data	: "mode=refresh_side_inventory",
						success	: function(strResult)
						{
							$('#side_inventory').html(strResult);
						}
					});
				}
			}
		});
		return false;
	});
	
	
	
	$(".ajax_undo_purchase.char_item").live('click', function (e)
	{
		var inventoryID = this.getAttribute('key');
		var itemID = this.getAttribute('itemID');
		var gameURL = location.pathname.split('/')[2];
		$.ajax(
		{
			type	: "POST",
			url		: "/ajax_game_controller.php?gameURL=" + gameURL,
			data	: "mode=undo_buy_item&inventoryID=" + inventoryID,
			success	: function(strResult)
			{
				$('#ajax_result'+itemID).html(strResult).show();
				
				if ($('#side_inventory').exists())
				{
					$.ajax(
					{
						type	: "POST",
						url		: "/ajax_game_controller.php?gameURL=" + gameURL,
						data	: "mode=refresh_side_inventory",
						success	: function(strResult)
						{
							$('#side_inventory').html(strResult);
						}
					});
				}
			}
		});
		return false;
	});
	
	
	
	
	
	
	$(".ajax_sell_item").live('click', function (e)
	{
		var charID = this.getAttribute('charID');
		var itemID = this.getAttribute('itemID');
		var resale = parseInt($('.resaleValue' + itemID + ':first').html().replace(',', ''));
		var gameURL = location.pathname.split('/')[2];
		$('html,body').animate({scrollTop: $('#ajax_item_result').offset().top}, 500);
		$('#itemInventory').prepend('Reloading data. Please be patient...').find('*').css('visibility', 'hidden');
		$.ajax(
		{
			type	: "POST",
			url		: "/ajax_game_controller.php?gameURL=" + gameURL,
			data	: "mode=sell_item&charID=" + charID + "&itemID=" + itemID + "&resale=" + resale,
			success	: function(strResult)
			{
				$('#ajax_item_result').html(strResult).show();
				
				if ($('.charMoney' + charID + ':first').exists() && resale)
				{
					var charMoney = parseInt($('.charMoney' + charID + ':first').html().replace(',', ''));
					var newMoney = charMoney + resale;
					$('.charMoney' + charID).html(addCommas(newMoney));
				}
				
				$.ajax({
					type	: "POST",
					url		: "http://www.inmyth.com/ajax_game_controller.php?gameURL=" + gameURL,
					data	: "mode=refresh_items&charID=" + charID,
					success	: function(strResult)
					{
						$('#itemInventory').html(strResult);
					}
				});
			}
		});
		return false;
	});
	
	
	
	
	
	$(".ajax_buy_group_item").live('click', function (e)
	{
		var groupID = this.getAttribute('groupID');
		var itemID = this.getAttribute('itemID');
		var gameURL = location.pathname.split('/')[2];
		$('html,body').animate({scrollTop: $('#ajax_result'+itemID).offset().top}, 500);
		$.ajax(
		{
			type	: "POST",
			url		: "/ajax_game_controller.php?gameURL=" + gameURL,
			data	: "mode=buy_group_item&groupID=" + groupID + "&itemID=" + itemID,
			success	: function(strResult)
			{
				$('#ajax_result'+itemID).html(strResult).show();
				
				if ($('#side_inventory').exists())
				{
					$.ajax(
					{
						type	: "POST",
						url		: "/ajax_game_controller.php?gameURL=" + gameURL,
						data	: "mode=refresh_group_side_inventory&groupID=" + groupID,
						success	: function(strResult)
						{
							$('#side_inventory').html(strResult);
						}
					});
				}
			}
		});
		return false;
	});
	
	
});
