//
// 　結果用テーブル表示
//
//=======file.csvの仕様=========
//
//日付,曜日,予想コード,競馬場コード
// ex.60611,日,1,5,7 ・・・
//	予想コード: 1=予想データのみ / 0=それ以外　
//

var module='test1.php';
//var module='http://192.168.0.154/kinba/test1.php';

var msgID = 'tblmsg'; //配当結果テーブルのメッセージ出力場所
var tableID = 'tbls'; //配当結果テーブルの出力場所

//表の項目
var haitoAry = new Array("馬連","３連複","ワイド","馬単","３連単"); 

var fileAry=new Array();//fileの一覧データ
var dataAry=new Array();//配当結果データの格納領域

var selday;

//リクエスト送信
function setData()
{
	//file一覧データ取得
	filename='&fn=data/file';
	sendRequest(onloadedfile,filename,'POST',module,false,true);

	//配当結果(最近)データ取得
	filename='&fn=data/'+fileAry[selno][0]+'/YH';
	sendRequest(onloadeddata,filename,'POST',module,true,true);
}


//fileデータ受信時処理
function onloadedfile(res)
{
	var row=new Array();
	var resdata = res.responseText;

	if(!resdata){
		document.getElementById(msgID).firstChild.nodeValue='ファイルがありません';
		return;
	}

	//デコード
	var textdata= decodeURIComponent(resdata);

	//データ格納
	row = textdata.split('\r').join('').split('\n');
	for (i=0; i<row.length; i++) {
		fileAry[i] = new Array();
		fileAry[i] = row[i].split(',');
	}
	
	//最新データの各項目を設定(最初の予想コード=0)
	for (i=0; i<fileAry.length; i++){
		if(fileAry[i][2]==0){
			selno=i;//表示対象データの添字
			break;
		}
	}
}


//結果データ受信時処理
function onloadeddata(res)
{
	var resdata = res.responseText;
	if(!resdata){
		document.getElementById(msgID).firstChild.nodeValue='データがありません';
		return;
	}

	//以前のデータがあれば削除
	if(!!dataAry){
		delete dataAry;
		dataAry=new Array();
	}

	//デコード
	var textdata= decodeURIComponent(resdata);

	//データ格納
	var row=new Array();
	row = textdata.split('\r').join('').split('\n')
	for (i=0; i<row.length; i++) {
		dataAry[i] = new Array();
		dataAry[i] = row[i].split(',')
	}

	//テーブル書き出し
	writeTable();
}


// テーブル書き出し
function writeTable()
{
	//テーブル削除
	if (tbl = document.getElementById(tableID)) { 
		while(tbl.lastChild){
  		tbl.removeChild(tbl.lastChild);
		}
	}

	//メッセージ削除
	document.getElementById(msgID).firstChild.nodeValue='';

	//テーブル編集
	var table, tbody, tr, td, text; // ローカル変数
//var area = fileAry[selno].length-3; //テーブルの総数
	var row = dataAry.length-2; // テーブルデータ行数
	var col = dataAry[0].length-1; // テーブルデータ列数
	var doc = document.getElementById(tableID);// テーブル書き出し領域
	var className=(typeof ScriptEngine=='function')?'className':'class';
	var ele=document;

	//日付と曜日編集
	var textday = eval(fileAry[selno][0].substr(fileAry[selno][0].length-4,2))+'月'+eval(fileAry[selno][0].substr(fileAry[selno][0].length-2))+'日('+fileAry[selno][1]+')　';

	//繰り返し処理
	i=0;
	while (i<row) {
		//タイトル編集
		table = ele.createElement("table");
		tbody = ele.createElement("tbody");
		table.insertBefore(tbody, null);
		doc.appendChild(table);
		tr = ele.createElement("tr");
		tbody.insertBefore(tr, null);
		td = ele.createElement("td");
		text = ele.createTextNode(textday+dataAry[i][0]+'競馬場');
		tr.insertBefore(td, null);
		td.insertBefore(text, null);
		td.setAttribute(className,'title');
		td.width=520;

		area=dataAry[i][0];

		//予想配当テーブル編集
		table = ele.createElement("table");
		table.setAttribute(className,'tbl1');
		tbody = ele.createElement("tbody");
		table.appendChild(tbody);
		doc.appendChild(table);

		//タイトル1行目
		tr = ele.createElement("tr");
		tbody.insertBefore(tr, null);

		td = ele.createElement("td");
		td.setAttribute('rowspan','2');
		text = ele.createTextNode('レース');
		td.appendChild(text);
		tr.appendChild(td);
		td.rowSpan=2;

		td = ele.createElement("td");
		text = ele.createTextNode('★指数1位～5位ボックス買いの的中配当');
		tr.appendChild(td);
		td.appendChild(text);
		td.colSpan=5;
		td.setAttribute(className,'row0');

		td = ele.createElement("td");
		text = ele.createTextNode('★指数1位～6位ボックス買いの的中配当');
		tr.appendChild(td);
		td.appendChild(text);
		td.colSpan=5;
		td.setAttribute(className,'row0');

		//タイトル2行目
		tr = ele.createElement("tr");
		tbody.insertBefore(tr, null);
		for(j=0; j<2; j++){
			for(k=0; k<5; k++){
				td = ele.createElement("td");
				text = ele.createTextNode(haitoAry[k]);
				td.appendChild(text);
				tr.appendChild(td);
				if(k<2)td.setAttribute(className,'pinks');
			}
		}

		var totalAry = new Array(); //合計金額
		for (j=0; j<col; j++) {totalAry[j]=0;} //クリア

		//金額表示
		while (area==dataAry[i][0]) {
			//列の処理
			tr = ele.createElement("tr");
			tbody.insertBefore(tr, null);

			for (j=0; j<col; j++) {
				td	 = ele.createElement("td");
				tr.insertBefore(td, null);
				td.align="right";

				if(j==0){
					text = ele.createTextNode(dataAry[i][j+1]+'R');
					td.insertBefore(text, null);
					td.setAttribute(className,'blues');
				}else{
					if(dataAry[i][j+1]>0){
						text = ele.createTextNode('\\'+dataAry[i][j+1]);
						td.insertBefore(text, null);
						if(dataAry[i][j+1]>10000) td.style.color='red';
						totalAry[j]+=parseInt(dataAry[i][j+1]);
					}
					if(j<3)td.setAttribute(className,'pinks');
					if(j>5 && j<8)td.setAttribute(className,'pinks');
				}
			}
			i++;
		}

		//合計金額表示
		tr = ele.createElement("tr");
		tbody.insertBefore(tr, null);

		for (j=0; j<col; j++) {
			td	 = ele.createElement("td");
			tr.insertBefore(td, null);
			td.align="right";

			if(j==0){
				text = ele.createTextNode('合計');
				td.insertBefore(text, null);
				td.setAttribute(className,'blues');
			}else{
				if(totalAry[j]>0){
					text = ele.createTextNode('\\'+totalAry[j]);
					td.insertBefore(text, null);
					if(totalAry[j]>10000) td.style.color='red';
				}
				if(j<3)td.setAttribute(className,'pinks');
				if(j>5 && j<8)td.setAttribute(className,'pinks');
			}
		}

		//回収率表示
		tr = ele.createElement("tr");
		tbody.insertBefore(tr, null);

		for (j=0; j<col; j++) {
			td	 = ele.createElement("td");
			tr.insertBefore(td, null);

			if(j==0){
				text = ele.createTextNode('回収率');
				td.insertBefore(text, null);
				td.setAttribute(className,'row0');
			}else{
				if(totalAry[j]>0){
					if (j==1){td.innerHTML=Math.round(totalAry[j]/12000 * 100)+'%';}
					if (j==2){td.innerHTML=Math.round(totalAry[j]/12000 * 100)+'%';}
					if (j==6){td.innerHTML=Math.round(totalAry[j]/18000 * 100)+'%';}
					if (j==7){td.innerHTML=Math.round(totalAry[j]/24000 * 100)+'%';}
				}
			}
			td.align="right";

			//クラスの設定
			if(j<3)td.setAttribute(className,'oranges');
			if(j>5 && j<8)td.setAttribute(className,'oranges');
			
		}
	}
}

function onareaclick(dayno)
{
	//同じだったらreturn
　if(selday==dayno)return;

	//入力日を設定
	selday=dayno;

	//日付テーブルで何番目か検索
	for(i=0; fileAry.length; i++){
		if(fileAry[i][0]==selday) {
			selday=fileAry[i][0];//表示対象の日付セット
			selno=i;//表示対象データの添字
			break;
		}
	}

	//データアクセス
	filename='&fn=data/'+selday+'/YH';
	sendRequest(onloadeddata,filename,'POST',module,true,true);
}
