
setData();


//====================================================================
// テーブル処理用ライブラリ jslb_writetable.js
//
// 最新情報 http://jsgt.org/mt/archives/01/000414.html 
// 上記コメント削除不可。商用利用、改造、自由。連絡不要です。
// 

var tableId = 'tdiv'; //テーブルの出力場所
var tbTitle = 'area';//テーブルのタイトル出力
var mpTitle = 'maptitle';//タイトル出力(地図用)
var mpId = 'map';//地図出力

var dataAry=new Array();//csvデータの格納領域
var year;//現在の年
var month;//現在の月
var day;//現在の日にち

var area;//選択された場所

var mapAry = new Array(10);
mapAry[0] = new Array("札幌", "43.0773676555873", "141.324005126953");
mapAry[1] = new Array("函館", "41.7828010478679", "140.775632858276");
mapAry[2] = new Array("福島", "37.7653377135765", "140.480461120605");
mapAry[3] = new Array("中山", "35.7268480128102", "139.960885047912");
mapAry[4] = new Array("東京", "35.6646882398248", "139.483194351196");
mapAry[5] = new Array("新潟", "37.9486816236257", "139.184975624084");
mapAry[6] = new Array("中京", "35.0660609525006", "136.988568305969");
mapAry[7] = new Array("京都", "34.9063990098742", "135.723960399627");
mapAry[8] = new Array("阪神", "34.7786763448226", "135.360918045043");
mapAry[9] = new Array("小倉", "33.8426175852102", "130.875084400177");

//リクエスト送信
function setData()
{
	sendRequest(onloaded,'&fn=data/schedule','POST',"test1.php",true,true)
//	sendRequest(onloaded,'&fn=data/schedule','POST',"http://192.168.0.154/ajax/test1.php",true,true)
}

//受信時処理
function onloaded(res)
{

	var row=new Array();
	var resdata = res.responseText;

	//デコード
	var textdata= decodeURIComponent(resdata)
	row = textdata.split('\r').join('').split('\n')

	//行の処理
	for (i=0; i<row.length-2; i++) {
		dataAry[i] = new Array();
		dataAry[i] = row[i].split(',')
	}
	//現在の日にちを把握
	now=new Date();
	year=now.getYear();
	month=now.getMonth();
	day=now.getDate();
	
	//テーブル書き出し
//	writeTable('全国')
	

}


// テーブル書き出し
function writeTable(data)
{
	//引数があれば下記を実行
	if(!!writeTable.arguments[0]){
		removeTable(tableId)       ; //テーブル削除
		mkTable(tableId,data)   ; //テーブル生成
	}
	area=data;
//	mapdisp(data);
}

// 対象テーブル削除
function removeTable(tableId){
	if (tbl = document.getElementById(tableId)) { 
		while(tbl.lastChild){
  		tbl.removeChild(tbl.lastChild);
		}
	}
}

// テーブル生成
function mkTable(tableId,data) 
{
	if(!dataAry)return 
	var table, tbody, tr, td, text, i ,j; // ローカル変数
	var row = dataAry.length; // テーブルデータ行数
	var col; // テーブルデータ列数
	var mydoc = document; // documentオブジェクト

	//タイトル
	var areatext = data+'競馬場　レース開催日程';
	if (data=='race') areatext= '重賞レース開催日程';
	document.getElementById(tbTitle).firstChild.nodeValue=areatext;

	removeTable(mpId);
	var maptext = data+'競馬場　地図';
	if (data=='race' || data=='全国') {	
		maptext= '地図はありません';
//	document.getElementById(mpId).firstChild.nodeValue=mapinfo;
	}
	document.getElementById(mpTitle).firstChild.nodeValue=maptext;


	//tableとtbody要素を生成
	table = mydoc.createElement("TABLE")
	tbody = mydoc.createElement("TBODY")

	//tableへtbody要素を挿入しさらに出力用DIVへ挿入
	table.insertBefore(tbody, null)
	document.getElementById(tableId).insertBefore(table, null)

	var wflg=0;
	var date=new Array();

	//行の処理
	for (i=0; i<row; i++) {
		col = dataAry[0].length;

		wflg = 0; 
		if (i==0) wflg=1; //タイトル行
		if (dataAry[i][2]==data) wflg=1; //地域抽出
		if (data=='全国') wflg=1; //全部
		if (data=='race' && dataAry[i][5]) wflg=1; //重賞レース抽出
		
		//昨日以前の前のデータは表示しない
		if (i!=0){
			date=dataAry[i][0].split('/');
			if(date[0]<month+1) wflg=0;
			if(date[0]==month+1 && date[1]<day) wflg=0;
		}

		if (wflg==1){
		//列の処理
			tr = mydoc.createElement("TR");
			tbody.insertBefore(tr, null);

			for (j=0; j<col; j++) {
				if(j!=3 && j!=4){
					td	 = mydoc.createElement("TD");
					text = mydoc.createTextNode(dataAry[i][j]);
					tr.insertBefore(td, null);
					td.insertBefore(text, null);

					//見出しセル(1列目と1行目)に関するCSS用class名を設定
					var className=(typeof ScriptEngine=='function')?'className':'class';
					// 2列目 (成績)
					if(dataAry[i][1]=='日')td.setAttribute(className,'col1');
					if(i==0)td.setAttribute(className,'row0');
				}
			}
		}
	}
	return table
}


function mapdisp(){
	var map = new GMap(document.getElementById("map"));
	var lon   = 139.48594093322754;
	var lat   = 35.663154109136684;

	for(i=0; i<mapAry.length; i++){
		if(mapAry[i][0]==area){
			lat = mapAry[i][1];
			lon=mapAry[i][2];
			break;
		}
	}
	if(i<10){
		var keiba = new GPoint(lon,lat);
		map.centerAndZoom(keiba , 3); 
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		var marker = new GMarker(keiba);
		map.addOverlay(marker);
	}
}
