//帯メニューのロールオーバー
function mainmenu(){
$(" #globalNavi  ul ").css({display: "none"}); // Opera Fix
$(" #globalNavi  li").hover(function(){
		$(this).find('ul:first').css({visibility: "visible",display: "none"}).show(200);
		},function(){
		$(this).find('ul:first').css({visibility: "hidden"});
		});
}

  $(document).ready(function(){					
	mainmenu();
});
  
/*--------------------------------------------------------------------------*
 * テーブルの縞々表示
 *--------------------------------------------------------------------------*/
$(function(){
		   
$(".zebra tr:even td").css("background-color","#ddd");
$(".zebra td").css("font-color","red");
/*ヘッダーとフッター行の色*/
$(".zebra th,.zebra tfoot td").css("background-color","#546072").css("color","#FFFFFF");

});
/*--------------------------------------------------------------------------*
 * トレードシミュレーション
 * フォームチェックのトリガーはHTML側に置いてる
 *--------------------------------------------------------------------------*/
//日付の設定
var toDay = new Date();
var month = toDay.getMonth();
var year = toDay.getFullYear();

/*
入出金フォームのチェック
*/
function startCheck(){
  nyuuShyukkinCheck("#syukkinCheck" , "#syukkinKaishi" , "#syukkinGaku");
  nyuuShyukkinCheck("#nyuukinCheck" , "#nyuukinKaishi" , "#nyuukinGaku");
}

/*
 * 年月を指定して月末日を求める
 */
function getMonthEndDay(year, month) {
    //日付を0にすると前月の末日を指定したことになります
    //指定月の翌月の0日を取得して末日を求めます
    //そのため、ここでは month - 1 は行いません
    var dt = new Date(year, month, 0);
    return dt.getDate();
}

/**
 * 年月日と加算月からnヶ月後、nヶ月前の日付を求める
 * year 年
 * month 月
 * day 日
 * addMonths 加算月。マイナス指定でnヶ月前も設定可能
 */
function computeMonth(year, month, day, addMonths) {
    month += addMonths;
    var endDay = getMonthEndDay(year, month);//ここで、前述した月末日を求める関数を使用します
    if(day > endDay) day = endDay;
    var dt = new Date(year, month - 1, day);
    return dt;
}
/*
入出金チェックを入れると0万円に書き換えさせる
ページ読み込まれた時のチェックボックスの状態を見て処理
*/
function nyuuShyukkinCheck(check , kaishi , kingaku){
	if ($(check)[0].checked) {
			$(kingaku).attr("disabled", "disabled");
			$(kingaku).val("0");
			$(kingaku).css("backgroundColor","#aaa");
			$(kaishi).attr("disabled", "disabled");
			$(kaishi).val("1");
			$(kaishi).css("backgroundColor","#aaa");
		} else {
			$(kingaku).removeAttr("disabled");
			$(kingaku).css("backgroundColor","#FFF");
			$(kaishi).removeAttr("disabled");
			$(kaishi).css("backgroundColor","#FFF");
		}
	//クリックされた時のチェックボックスの状態を見ての処理
	$(check).click(function() {
		if (this.checked) {
			$(kingaku).attr("disabled", "disabled");
			$(kingaku).val("0");
			$(kingaku).css("backgroundColor","#aaa");
			$(kaishi).attr("disabled", "disabled");
			$(kaishi).val("1");
			$(kaishi).css("backgroundColor","#aaa");
		} else {
			$(kingaku).removeAttr("disabled");
			$(kingaku).css("backgroundColor","#FFF");
			$(kaishi).removeAttr("disabled");
			$(kaishi).css("backgroundColor","#FFF");
		}
	});
}


/*
金額の3桁毎にカンマを入れる
*/
function addFigure(str) {
	var num = new String(str).replace(/,/g, "");
	while(num != (num = num.replace(/^(-?\d+)(\d{3})/, "$1,$2")));
	return num;
}

/*
シミュレーションの表出力
*/
function keisan(){
	var shoki = $("#syoki").attr('value');//初期資金
	var ritan = $("#ritan").attr('value');//リターン率
	var syukkinGaku = $("#syukkinGaku").attr('value');//出金額
	var syukkinKaishi = $("#syukkinKaishi").attr('value');//出金開始
	var nyuukinGaku = $("#nyuukinGaku").attr('value');//入金額
	var nyuukinKaishi = $("#nyuukinKaishi").attr('value');//入金開始
	var result;
	ritan = ritan*0.01+1;
	
	goukei = new Array();
	var result = shoki;
	for(i=0 ; i<12 ; i++){
		result = Math.round(result * ritan);
		
		//resultが整数で無ければ計算終了
		n = isNaN(result);
		if(n == true){
				goukei[i] = "<tr><td style='padding:20px;border:solid 2px #fff;'>入力された数値にエラーがあります。数値は半角数字でご入力ください。</td></tr>"
				break;
			}
		
		var m = i + 1;//経過月
		
		//月を設定
		var date = computeMonth(year, month, 31, m);
		
		//出金月以降は出金分の金額を減らす
		if(syukkinKaishi < m+1){
			result -= syukkinGaku;
		}
		//入金月以降は入金分の金額を増やす
		if(nyuukinKaishi < m+1){
			result -= nyuukinGaku*-1;
		}
			
		//出力用の文字を配列に代入・入出金開始月以降は入出金額を表記する
		goukei[i] = "<tr><td>" + date.getFullYear()  + "年" + (date.getMonth() + 1) + "月 (" + m + "ヶ月後)</td><td align='right'><strong style='color:#FFF;font-size:1.5em;display:block;margin:5px 10px;'>" + addFigure(result) + "万円</strong>";
		
		goukei[i] +="</td><td>";
		
		if(syukkinKaishi < m+1){
			if(syukkinGaku > 0){
				goukei[i] += "(" + syukkinGaku + "万円出金)";
			}
		}
			
		if(nyuukinKaishi < m+1){
			if(nyuukinGaku > 0){
				goukei[i] += "(" + nyuukinGaku + "万円入金)";
			}else{
				goukei[i] += "&nbsp;";
			}
		}else{
			goukei[i] += "&nbsp;";
			}
			
		goukei[i] +="</td></tr>";
		
	}
	
	var trout = goukei.join("");
	trout = "<table class='table01'><tbody>" + trout + "</tbody></table>(小数以下の数値は四捨五入しています)";
	$("#kekkaHyouji").html(trout);
	$("#keisan").val('もう一度シミュレーションを行う')
}
/*--------------------------------------------------------------------------*/