// JavaScript Document

var interestTagA = '<div><script type="text/javascript" src="http://www.kasumix.com/blogparts/interest.js?';
var interestTagB = '"></script><a href="http://www.kasumix.com/" target="_blank"><img src="http://www.kasumix.com/images/blogparts/kasumix.gif" alt="fx" border="0" /></a></div>';
var defaultInterestTagContents = "JPY|USD|EUR|GBP|AUD|NZD|ZAR|ISK|TRY";
var interestTagContents = defaultInterestTagContents;
var swapTagA = '<div><script type="text/javascript" src="http://www.kasumix.com/blogparts/swap.js?';
var swapTagB = '"></script><a href="http://www.kasumix.com/" target="_blank"><img src="http://www.kasumix.com/images/blogparts/kasumix.gif" alt="fx" border="0" /></a></div>';
var defaultSwapTagContents = "USDJPY|EURJPY|GBPJPY|ZARJPY|TRYJPY|EURTRY|USDTRY";
var swapTagContents = defaultSwapTagContents;
var checkResult = true;
var trHeight = 22;
var imgSupport = "png";
var crtCss = "default";
$(function()
{
/***************************共通***************************/
//透過png用ブラウザ判定
	if(jQuery.browser.msie/* && jQuery.browser.version < 7*/) imgSupport = "gif";
//css選択
	$("#css_select").change(function()
	{
		crtCss = $(this).attr("value");
		$("#blogparts_css").attr("href",'/css/blogparts/' + crtCss + '.css');
		changeTag(interestTagContents);
		changeSwapTag();
		pairCheck();
	});
//タグを選択
	$("#tag_select").click(function()
	{
		$("#tag_select ~ textarea").select();
	});
	
/***************************政策金利***************************/
//通貨グループ
	var defaultGroup	= [$("#JPY"), $("#USD"), $("#EUR"), $("#GBP"), $("#AUD"), $("#NZD"), $("#ZAR"), $("#ISK"), $("#TRY")];
	var favorite		= [$("#USD"), $("#JPY"), $("#EUR"), $("#GBP"), $("#CAD"), $("#CHF"), $("#AUD"), $("#NZD"), $("#TRY"), $("#ZAR")];
	var principal		= [$("#USD"), $("#JPY"), $("#EUR"), $("#GBP"), $("#CAD"), $("#CHF"), $("#AUD"), $("#NZD")];
	var allcurrency		= [$("#USD"), $("#TWD"), $("#JPY"), $("#CZK"), $("#EUR"), $("#HUF"), $("#GBP"), $("#ISK"), $("#CAD"), $("#PLN"), $("#CHF"), $("#NOK"), $("#AUD"), $("#SEK"), $("#NZD"), $("#TRY"), $("#CNY"), $("#MXN"), $("#HKD"), $("#BRL"), $("#INR"), $("#EGP"), $("#KRW"), $("#ZAR")];
	var redflag			=[$("#JPY"), $("#CAD"), $("#PLN"), $("#CHF"), $("#TRY"), $("#CNY"), $("#HKD")];
	var blueflag		=[$("#EUR"), $("#GBP"), $("#ISK"), $("#AUD"), $("#SEK"), $("#NZD")];

//プレビューリセット
	$("#swap_preview").text("");
	previewInterest("JPY|USD|EUR|GBP|AUD|NZD|ZAR|ISK|TRY", 11);
//グループセレクト
	$("#interest_group").change(function()
	{
		interestTagContents = '';
		clearChecked();
		crtGroup = $(this).attr("value");
		switch (crtGroup)
		{
			case "default":		crtGroup = defaultGroup;
								break;
			case "favorite":	crtGroup = favorite;
								break;
			case "principal":	crtGroup = principal;
								break;
			case "allcurrency":	crtGroup = allcurrency;
								break;
			case "redflag":		crtGroup = redflag;
								break;
			case "blueflag":	crtGroup = blueflag;
								break;
		}
		for(i=0; i<crtGroup.length; i++)
		{
			if(i != 0) interestTagContents += '|';
			crtGroup[i].attr("checked","checked");
			interestTagContents += crtGroup[i].attr("id");
		}
		changeTag(interestTagContents);
		previewInterest(interestTagContents, crtGroup.length);
	});
	
//デフォルトボタン
	$("#reset").click(function()
	{
		interestTagContents = '';
		for(i=0; i<defaultGroup.length; i++)
		{
			if(i != 0) interestTagContents += '|';
			defaultGroup[i].attr("checked","checked");
			interestTagContents += defaultGroup[i].attr("id");
		}
		changeTag(interestTagContents);
		previewInterest(interestTagContents, crtGroup.length);
	});
	
//クリアボタン
	$("#clear").click(function()
	{
		clearChecked();
		$("#interest_tag").text("通貨が選択されていません");
	});
	
//チェックボタン
	$("#bp_table input").click(function()
	{
		interestTagContents = '';
		i=0;
		$.each($("#bp_table input:checked"), function()
		{
			if(i != 0) interestTagContents += '|';
			interestTagContents += $(this).attr("id");
			i++;
		});
		changeTag(interestTagContents);
		previewInterest(interestTagContents, i);
	});

/***************************通貨ペア***************************/
//組み合わせ表
	var Aud = ["CAD", "CHF", "CZK", "DKK", "EUR", "GBP", "HUF", "JPY", "MXN", "NOK", "NZD", "PLN", "SEK", "SGD", "TRY", "USD", "ZAR"];
	var Cad = ["CHF", "JPY", "MXN", "NOK", "PLN", "SEK", "TRY", "USD"];
	var Chf = ["AUD", "CZK", "DKK", "HUF", "JPY", "MXN", "NOK", "PLN", "SEK", "SGD", "SKK", "TRY", "USD", "ZAR"];
	var Czk = ["PLN"];
	var Dkk = ["CZK", "HUF", "JPY", "PLN", "SGD", "ZAR"];
	var Eur = ["AUD", "CAD", "CHF", "CZK", "DKK", "EEK", "GBP", "HKD", "HUF", "ISK", "JPY", "LTL", "LVL", "MXN", "NOK", "NZD", "PLN", "RON", "RUB", "SEK", "SGD", "SKK", "TRY", "USD", "ZAR"];
	var Gbp = ["AUD", "CAD", "CHF", "CZK", "DKK", "EUR", "HUF", "ILS", "JPY", "MXN", "NOK", "NZD", "PLN", "SEK", "SGD", "SKK", "TRY", "USD", "ZAR"];
	var Hkd = ["JPY"];
	var Huf = ["JPY"];
	var Isk = ["JPY"];
	var Jpy = ["DKK", "NOK", "USD"];
	var Mxn = ["JPY"];
	var Nok = ["DKK", "JPY", "SEK", "USD"];
	var Nzd = ["AUD", "CAD", "CHF", "CZK", "DKK", "EUR", "GBP", "HUF", "JPY", "MXN", "NOK", "PLN", "SEK", "SGD", "TRY", "USD", "ZAR"];
	var Pln = ["DKK", "HUF", "JPY", "SEK"];
	var Sek = ["DKK", "JPY", "NOK", "PLN"];
	var Sgd = ["HKD", "JPY"];
	var Try = ["DKK", "JPY", "ZAR"];
	var Usd = ["AED", "BHD", "CAD", "CHF", "CZK", "DKK", "EEK", "HKD", "HRK", "HUF", "ILS", "ISK", "JOD", "JPY", "KWD", "LTL", "LVL", "MXN", "NOK", "OMR", "PLN", "QAR", "RON", "RUB", "SAR", "SEK", "SGD", "SKK", "TRY", "ZAR"];
	var Zar = ["JPY"];
//プレビューリセット
	$("#swap_preview").text("");
	previewSwap(swapTagContents, swapTagContents.split("|").length);
	
//グループセレクト
	$("#swap_group").change(function()
	{
		var defaultGroup	= "USDJPY|EURJPY|GBPJPY|ZARJPY|TRYJPY|EURTRY|USDTRY"/*|ISKJPY*/;
		var favorite		= "AUDJPY|CADJPY|CHFJPY|EURJPY|EURUSD|GBPJPY|NZDJPY|TRYJPY|USDJPY|ZARJPY";
		var principal		= "AUDJPY|CADJPY|CHFJPY|EURJPY|GBPJPY|NZDJPY|USDJPY";
		var jpy16			= "AUDJPY|CADJPY|CHFJPY|DKKJPY|EURJPY|GBPJPY|HKDJPY|HUFJPY|MXNJPY|NOKJPY|NZDJPY|PLNJPY|SGDJPY|USDJPY|ZARJPY";
		var usd8			= "AUDUSD|CADUSD|CHFUSD|EURUSD|GBPUSD|JPYUSD|NOKUSD|NZDUSD";
		crtGroup = $(this).attr("value");
		switch (crtGroup)
		{
			case "default":		crtGroup = defaultGroup;
								break;
			case "favorite":	crtGroup = favorite;
								break;
			case "principal":	crtGroup = principal;
								break;
			case "jpy16":		crtGroup = jpy16;
								break;
			case "usd8":		crtGroup = usd8;
								break;
		}
		swapTagContents = crtGroup;
		previewSwap(swapTagContents, swapTagContents.split("|").length);
		changeSwapTag();
		pairCheck();
	});
	
//左辺変更
	$("#left_value").change(function()
	{
		var crtSwap = [];
		switch($(this).attr("value"))
		{
			case "AUD": crtSwap = Aud;
						break;
			case "CAD": crtSwap = Cad;
						break;
			case "CHF": crtSwap = Chf;
						break;
			case "CZK": crtSwap = Czk;
						break;
			case "DKK": crtSwap = Dkk;
						break;
			case "EUR": crtSwap = Eur;
						break;
			case "GBP": crtSwap = Gbp;
						break;
			case "HKD": crtSwap = Hkd;
						break;
			case "HUF": crtSwap = Huf;
						break;
			case "ISK": crtSwap = Isk;
						break;
			case "JPY": crtSwap = Jpy;
						break;
			case "MXN": crtSwap = Mxn;
						break;
			case "NOK": crtSwap = Nok;
						break;
			case "NZD": crtSwap = Nzd;
						break;
			case "PLN": crtSwap = Pln;
						break;
			case "SEK": crtSwap = Sek;
						break;
			case "SGD": crtSwap = Sgd;
						break;
			case "TRY": crtSwap = Try;
						break;
			case "USD": crtSwap = Usd;
						break;
			case "ZAR": crtSwap = Zar;
						break;
		}
		$("#right_value").html("");
		for(i=0; i<crtSwap.length; i++)
		{
			if(i==0)
			{
				$("#right_value").append('<option value="'+ crtSwap[i] +'" selected="selected">'+ crtSwap[i] +'</option>');
			}else{
				$("#right_value").append('<option value="'+ crtSwap[i] +'">'+ crtSwap[i] +'</option>');
			}
		}
		pairCheck();
	});
//右辺変更
	$("#right_value").change(function()
	{
		pairCheck();
	});
//テーブルクリック
	$("#country_table a").click(function()
	{
		var crtCountry = $(this).attr("id");
		$("#left_value").attr("value") = crtCountry;
	});
//クリアボタン
	$("#clear_swap").click(function()
	{
		$("#swap_tag").text('通貨ペアを選択し、"追加"ボタンを押してください。');
		swapTagContents = "";
		pairCheck();
	});
//追加ボタン
	$("#apply").click(function()
	{
		applySwap();
	});
});


/***************************政策金利***************************/
function clearChecked()
{
	$("#bp_form input").removeAttr("checked");
}

function changeTag(e, c)
{
	$("#interest_tag").text(interestTagA + e + "&css=" + crtCss + interestTagB);
}

function previewInterest(e, h)
{
	h *= trHeight;
	$("#interest_preview").load('/blogparts/interest.php?disp=' + e + '&edit=true',function()
	{
		//項目削除ボタン	
		$("#interest_table .edit_point").hover(function()
		{
			rmvContents = $(this).text();
			$(this).prepend('<img src="/images/blogparts/delete_button.' + imgSupport + '" width="170" height="25" alt="この項目を削除" class="delete_button" />');
			$("#interest_table .delete_button").fadeIn(200);
			$("#interest_table .delete_button").click(function()
			{
				$("#bp_table input").removeAttr("checked");
				interestTagContents = "";
				var i=0;
				$(this).parents("tr").remove();
				$.each($("#interest_table .edit_point"),function()
				{
					if(i != 0) interestTagContents += "|";
					var crtID = $(this).attr("id").split("_");
					interestTagContents += crtID[1];
					$("#" + crtID[1]).attr("checked", "checked");
					i++;
				});
				$("#interest_tag").text(interestTagA + interestTagContents + interestTagB);
			});
		},function(){
			$("#interest_table .delete_button").remove();
		});
	});
}

/***************************通貨ペア***************************/
//スワップ表表示、項目削除
function previewSwap(e, h)
{
	h *= trHeight;
	h += trHeight * 2;
	//ローディイングアイコン
	$("#swap_display").append('<div class="loading_box"><img src="/images/blogparts/loading.gif" width="60" height="60" alt="loading" class="loading" /></div>');
	loadingBoxHeight = $("#swap_display").height();
	if(loadingBoxHeight <= 0) loadingBoxHeight = 60;
	$("#swap_display .loading_box").css({"height": loadingBoxHeight , "width": $("#swap_display").width() , "opacity": "0.7"});
	$("#swap_display .loading_box img").css("top", (loadingBoxHeight - 60) / 2 + "px");
	//結果ロード
	$("#swap_preview").load('/blogparts/swap.php?disp=' + e + '&edit=true',function()
	{
		pairCheck();
		//項目削除ボタン	
		$("#swap_table .edit_point").hover(function()
		{
			rmvContents = $(this).text();
			$(this).prepend('<img src="/images/blogparts/delete_button.' + imgSupport + '" width="170" height="25" alt="この項目を削除" class="delete_button" />');
			$("#swap_table .delete_button").fadeIn(200);
			$("#swap_table .delete_button").click(function()
			{
				swapTagContents = "";
				var i=0;
				$(this).parents("tr").remove();
				$.each($("#swap_table .edit_point"),function()
				{
					if(i != 0) swapTagContents += "|";
					swapTagContents += $(this).text();
					i++;
				});
				changeSwapTag();
				pairCheck();
			});
		},function(){
			$("#swap_table .delete_button").remove();
		});
	});
}
//タグ書き換え
function changeSwapTag()
{
	$("#swap_tag").text(swapTagA + swapTagContents + "&css=" + crtCss + swapTagB);
}
//同一項目追加禁止
function pairCheck()
{
	var checkContents = swapTagContents.split("|");
	var checkValue = $("#left_value").attr("value") + $("#right_value").attr("value");
	var i = 0;
	checkResult = true;
	$("#apply").removeAttr("disabled");
	$.each(checkContents, function()
	{
		if(checkContents[i] == checkValue){
			checkResult = false;
			$("#apply").attr("disabled","disabled");
		}
		i++;
	});
}

function applySwap()
{
	if(swapTagContents == "")
	{
		swapTagContents = $("#left_value").attr("value") + $("#right_value").attr("value");
	}else{
		swapTagContents += "|" + $("#left_value").attr("value") + $("#right_value").attr("value");
	}
	changeSwapTag();
	previewSwap(swapTagContents, swapTagContents.split("|").length);
}