$(document).ready(function() {
	$("#protective_layer").height( $(document).height() );
	
	$("#character_messages_list .one_message p.content a").click(showOneCharacterMessage);
	$("#character_messages_list .one_message p.delete a").click(deleteOneCharacterMessage);
	
	
	if ($("#character_messages_notification span.nb_unread").html() > 0) {
		$("#character_messages_notification span.nb_unread").show('fast');
	}
});

function deleteOneCharacterMessage() {
	var nbMessages = $("#character_messages_notification #nb_character_messages").html();
	nbMessages--;
	$("#character_messages_notification #nb_character_messages").html( nbMessages );
	
	var msgId = $("span.message_id", this).html();
	
	updateNbUnread(msgId);
	
	if (nbMessages <= 0) {
		$("#character_messages_list").fadeOut('fast');
	} else {
		$("#message_" + msgId).fadeOut('fast', function() {
			if ($("#message_separator_" + msgId).length == 0) {
				$("#character_messages_list li.message_separator").eq(-1).remove();
			} else {
				$("#message_separator_" + msgId).hide('fast');
			}
		});
	}
	
	$.post("http://www.onnanojinsei.com/lib/ajax/character/message.ajax.php",
		{action: 'delete', message_id: msgId},
		function(xml) {
			if ($("message_deleted", xml).text() != "OK") {
				alert('Une erreur technique a eu lieu lors de la suppression du message, merci de contacter le webmaster');
			}
		}
	, "xml");
}

function showOneCharacterMessage() {
	var msgId = $("span.message_id", this).html();
	
	updateNbUnread(msgId);
	
	// Set the message as read
	$("#character_messages_list a").blur();
	$("#message_" + msgId).removeClass("unread");
	$("#message_" + msgId + " h3 img").hide();
	
	// Show the message
	$.post("http://www.onnanojinsei.com/lib/ajax/character/message.ajax.php", {action: 'show', message_id: msgId}, function(data) {
		$("#main_popup").html(data);
		
		$("#link_go_back").html("Fermer");
		$("#link_go_back").attr("href", "javascript:void(0)");
		$("#link_go_back").click(function() {
			$("#main_popup").fadeOut('fast', function () {
				$("#protective_layer").fadeOut('fast');
			});
			
		});
	});
	
	$("#protective_layer").fadeIn('fast', function () {
		$("#main_popup").fadeIn('fast');
	});
}

function updateNbUnread(pMsgId) {
	var nbUnread = $("#character_messages_notification span.nb_unread").html();
	
	// Update the amount of unread messages
	if ($("#message_" + pMsgId).hasClass("unread")) {
		if ((nbUnread - 1) < 0) {
			$("#character_messages_notification span.nb_unread").hide();
		} else {
			$("#character_messages_notification span.nb_unread").html(nbUnread - 1);
		}
	}
}

function showCharacterMessagesList() {
	$("#character_messages_notification a").blur();
	$("#character_messages_notification span.nb_unread").hide();
	$("#character_messages_notification").hide('fast');
	$("#character_messages_list").fadeIn('fast');
}

function hideCharacterMessagesList() {
	$("#character_messages_list a").blur();
	$("#character_messages_notification").show('fast');
	$("#character_messages_list").fadeOut('fast', function() {
		if ($("#character_messages_notification span.nb_unread").html() > 0) { 
			$("#character_messages_notification span.nb_unread").show('fast');
		}
	});
}

function refreshMarket() {
	$.post("http://www.onnanojinsei.com/lib/ajax/market.ajax.php",
		function(xml) {
			var hour12 = $("market current_hour12", xml).text();
			var hour24 = $("market current_hour24", xml).text();
			var minute = $("market current_minute", xml).text();
			var second = $("market current_second", xml).text();
			
			refreshAnalogClock(hour12, hour24, minute, second);
			refreshDigitalClock(hour24, minute, second);
			
			$("#current_brokerage_rate").html($("market broker rate", xml).text());
			$("#next_brokerage_rate").html($("market broker countdown_next_rate", xml).text());
			
			for (var i = 0 ; i < $("market fx_rates currency", xml).length ; i++) {
				var ccy_id = $("market fx_rates currency", xml).eq(i).attr("id");
				var ccy_symbol = $("market fx_rates currency", xml).eq(i).attr("symbol");
				var ccy_unit = $("market fx_rates currency", xml).eq(i).attr("unit");
				var ccy_rate = parseFloat($("market fx_rates currency", xml).eq(i).text());
				
				if (ccy_rate < 1) {
					$("ul#exchange_rates li#"+ccy_id+" span.rate_value").removeClass("above_zero");
					$("ul#exchange_rates li#"+ccy_id+" span.rate_value").addClass("below_zero");
				} else {
					$("ul#exchange_rates li#"+ccy_id+" span.rate_value").removeClass("below_zero");
					$("ul#exchange_rates li#"+ccy_id+" span.rate_value").addClass("above_zero");
				}
				$("ul#exchange_rates li#"+ccy_id+" span.rate_info").html(ccy_unit+" "+ccy_symbol);
				$("ul#exchange_rates li#"+ccy_id+" span.rate_value").html(ccy_rate+" YumYum");
			}
			$("#next_fx_rates").html($("market fx_rates countdown_next_rate", xml).text());
		}
	, "xml");
}

function refreshAnalogClock(pHour12, pHour24, pMinute, pSecond) {
	if (pHour24 == "7" && pMinute == "59" && pSecond == "59") {
		$("#night").fadeOut(1000, function() {
			$("#day").fadeIn(1000);
		});
	}
	
	if (pHour24 == "18" && pMinute == "59" && pSecond == "59") {
		$("#day").fadeOut(1000, function() {
			$("#night").fadeIn(1000);
		});
	}
	
	$("#analog_clock .seconds_hand").hide();
	$("#seconds_hand_" + pSecond).show();
	
	if (pSecond == 00) {
		$("#analog_clock .minutes_hand").hide();
		$("#minutes_hand_" + pMinute).show();
	}
	
	if (pMinute == 00 && pSecond == 00) {
		$("#analog_clock .hours_hand").hide();
		$("#hours_hand_" + pHour12).show();
	}
}

function refreshDigitalClock(pHour, pMinute, pSecond) {
	$("#current_server_time").html(pHour + ":" + pMinute + ":" + pSecond);
}

setInterval(refreshMarket, 1000);

function getAjaxLoaderImage() {
	return '<img src="http://www.onnanojinsei.com/views/images/general/ajax-loader.gif" alt="" />';
}
