function doggleWindow(target) {
	var windows = new Array('Facebook', 'Myspace', 'Twitter');
	for (var index = 0 ; index < windows.length ; index++) {
		if (windows[index] == target) {
			$('#' + target + 'Window').toggle('nomal');
		} else {
			$('#' + windows[index] + 'Window').hide('nomal');
		}
	}
}

function sendCommentToTwitter() {
	sendComment('Twitter');
}

function sendCommentToFacebook() {
	sendComment('Facebook');
}

function sendCommentToMyspace() {
	sendComment('Myspace');
}

function sendCommentToStaff() {
	params = new Object();
	params['report_type'] = $("#UserReportWindow input[@name='report_type']:checked").val();

	sendComment('UserReport', params);
}

function sendComment(prefix, params) {
	var windowElementID		= prefix + 'Window';
	var commentElementID	= prefix + 'Comment';
	var maskElementID		= prefix + 'WindowMask';
	var maskMessageElementID= prefix + 'WindowMaskMessage';
	
	params = params || new Object();
	params['url'] = encodeURI(document.location);
	params['comment'] = $('#' + commentElementID).val();
	
	//hogeを送信しても意味ないので。
	var hoge = params['url'].match(/http:.*\/(hoge.*)/);
	params['url'] = params['url'].replace(hoge ? hoge[1] : '', '');
	
	$(document.createElement('div'))
		.attr('id'		, maskElementID)
		.css('position'	, 'absolute')
		.css('width'	, '100%')
		.css('height'	, '100%')
		.css('z-index'	, '999')
		.css('top'		, '0px')
		.appendTo('#' + windowElementID);
	
	$(document.createElement('div'))
		.attr('id'		, maskMessageElementID)
		.css('position'	, 'absolute')
		.css('bottom'	, '80px')
		.css('left'		, '172px')
		.html('<img src="/img/ajax_loader.gif" /><br />Sending....')
		.appendTo('#' + maskElementID);
	
	$.post(
		'/api/' + prefix + 'API_sendComment', 
		params,
		function(data, status) {
			if (status != 'error' && data != 'ERROR') {
				$('#' + maskMessageElementID).html('<img src="/img/ajax_loader.gif" /><br />Complete!');
			} else {
				$('#' + maskMessageElementID).html('<img src="/img/ajax_loader.gif" /><br />Error!');
			}
			setTimeout(
				function() {
					$('#' + windowElementID).toggle(
						'nomal',
						function() {
							$('#' + commentElementID).val('Comment');
							$('#' + maskElementID).remove();
						})
				},
				1500);
		}
	);
}

//Realtime Notices
/*
$(document).ready(function(){
	checkAnnounce();
	setInterval("checkAnnounce()", 30000);
	//setTimeout("checkAnnounce()", 1000);
	$("#notices").css("cursor","pointer").click(function(){
		showSessionStack();
	});
});
*/

function startAnnounceLoad() {
	checkAnnounce();
	setInterval("checkAnnounce()", 30000);
	$("#notices").css("cursor","pointer").click(function(){
		showSessionStack();
	});
}

function checkAnnounce() {

	checkFlag = true;
	params = new Object();
	params['checkFlag'] = checkFlag;
	$.post(
		'/api/AnnounceAPI_checkStock',
		params,
		function (data, status){
			if(status != 'error'){
				checkFlag = false;
				
				data = data.split("!");
				var stack_count = data[1];
				if(data[1] != null && data[1] != "") {
					$("#stack_count").text(data[1]);
				}else{
					$("#stack_count").text(0);
				}
				
				if(data[0] != null && data[0] != "") {
					//alert(data);
					showAnnounceCard(decodeJsonData(data[0]), 0);
				}
			}
		}
	);
}

function showSessionStack() {
	checkFlag = true;
	params = new Object();
	params['checkFlag'] = checkFlag;
	$.post(
		'/api/AnnounceAPI_getSessionStack',
		params,
		function(data, status) {
			if(status != 'error'){
				checkFlag = false;
				if(data != null && data != "") {
					//alert(data);
					showAnnounceCard(decodeJsonData(data), 0);
				}
			}
		}
	);
}

function showAnnounceCard(data, i) {
	var html;
	var timer;
	
	if(i >= data.length){
		$("#announce").hide();
		return;
	}

	$("#announce").hide();
	html = getPopwindowHtml(data[i]);
	$("#announce").html(html).show("normal",
		function(){
			timer = setTimeout(
				function(){
					showAnnounceCard(data,i+1);
				}, 4000);
	});
}



function getPopwindowHtml(cdata) {
	var html = "";
	switch(cdata['type']){
		case "login":
			html = getUserHtml(cdata, "/img/friend_ttl.png", cdata['type']);
			break;
		case "comment":
			html = getUserHtml(cdata, "/img/newcomment_ttl.png", cdata['type']);
			break;
		case "message":
			html = getUserHtml(cdata, "/img/newmessage_ttl.png", cdata['type']);
			break;
		case "roomin":
			html = getRoomHtml(cdata, "/img/letschat_ttl.png");
			break;
		case "infomation":
			html = getInfoHtml(cdata, "/img/information_ttl.png");
			break;
		case "attention":
			html = getInfoHtml(cdata, "/img/attention_ttl.png");
			break;
		case "warning":
			html = getInfoHtml(cdata, "/img/warning_ttl.png");
			break;
		default:
			break;
	}
	return html;
}

function getUserHtml(cdata, titleImage, type) {
	var html = '';

	html += '<div class="popbox pop_normal">';
	html += '<a onclick="$(\'#announce\').hide();" class="close">';
	html += '<img src="/img/normal_close_btn.png" alt="close" /></a>';
	html += '<p class="ttl"><img src="'+ titleImage +'" alt="Hi, friend!" /></p>';
	html += '<div class="cont">';
	html += '<a href="'+ cdata['user_url'] +'">';
	html += '<img src="'+ cdata['user_img'] +'" alt="" class="thumb" /></a>';
	if(type == "login"){
		html += '<span class="notice"><a href="'+ cdata['user_url'] +'"><span class="popbox_name">'+ cdata['user_name'] +'</span></a></span>';
	}else if(type == "comment"){
		html += '<span class="notice"><a href="'+ cdata['user_url'] +'"><span class="popbox_name">'+ cdata['user_name'] +'</span></a>sent you a comment</span>';
	}else if(type == "message"){
		html += '<span class="notice"><a href="'+ cdata['message_url'] +'"><span class="popbox_name">'+ cdata['user_name'] +'</span></a>sent you a message</span>';
	}
	html += '<span class="time">('+getShowTime(cdata['time'])+')</span>';
	html += '</div></div>';

	return html;
}

function getRoomHtml(cdata, titleImage) {
	var html = '';

	html += '<div class="popbox pop_normal">';
	html += '<a onclick="$(\'#announce\').hide();" class="close"><img src="/img/normal_close_btn.png" alt="close" /></a>';
	html += '<p class="ttl"><img src="'+ titleImage +'" alt="Hi, friend!" /></p>'
	html += '<div class="cont" style="padding-bottom: 20px;">';
	html += '<a href="'+ cdata['room_url'] +'">';
	html += '<img src="'+ cdata['room_img'] +'" alt="" class="thumb" /></a>';
	html += '<span class="notice"><a href="'+cdata['user_url']+'"><span class="popbox_name">'+ cdata['user_name'] +'</span></a>entered the <a href="'+cdata['room_url']+'"><span>'+ cdata['room_name'] +'</span></a> chat room</span>';
	html += '<span class="time">('+getShowTime(cdata['time'])+')</span>';
	html += '<div class="fox"><a href="javascript:realTimeChatOpen(\''+ cdata['chat_url'] +'\');" class="btn"><img src="/img/btn_chat_book_join.gif" alt="Join" /> </a>';
	html += '<a onclick="realTimeChatOpen(\''+ cdata['chat_url'] +'\', true);" href="javascript:void(0)" class="btn"><img src="/img/btn_chat_book_read.gif" /></a></div>';
	html += '</ul></div></div>';
	
	return html;
}

function getInfoHtml(cdata) {
	var html = '';
	
	html += '<div class="popbox pop_normal">';
	html += '<p class="ttl"><img src="'+ titleImage +'" alt="Hi, friend!" /></p>';
	html += '<div class="cont">';
	html += '<span class="notice">'+ cdata['contents'] +'</span>';
	html += '<span class="time">('+getShowTime(cdata['time'])+')</span>';
	htnl += '</div></div>';
	
	return html;
}

function getShowTime(str) {
	var time = new Date(str.replace(/\-/g, "/")+" +0900");
	return time.toLocaleString();
}

function decodeJsonData(jdata) {
	var orderStr = "cardData = "+ jdata;
	eval(orderStr);
	return cardData;
}

function realTimeChatOpen(chat_url, rom_mode){
	rom_mode = (rom_mode) ? 1 : 0;
	var option = getOption ();
	var cr = window.open((chat_url + rom_mode + '/'), "chatroom", option);
	cr.focus ();
}
