function $(e){if(typeof e=='string')e=document.getElementById(e);return e};
function collect(a,f){var n=[];for(var i=0;i<a.length;i++){var v=f(a[i]);if(v!=null)n.push(v)}return n};
ajax={};
ajax.x=function(){try{return new ActiveXObject('Msxml2.XMLHTTP')}catch(e){try{return new ActiveXObject('Microsoft.XMLHTTP')}catch(e){return new XMLHttpRequest()}}};
ajax.serialize=function(f){var g=function(n){return f.getElementsByTagName(n)};var nv=function(e){if(e.name)return encodeURIComponent(e.name)+'='+encodeURIComponent(e.value);else return ''};var i=collect(g('input'),function(i){if((i.type!='radio'&&i.type!='checkbox')||i.checked)return nv(i)});var s=collect(g('select'),nv);var t=collect(g('textarea'),nv);return i.concat(s).concat(t).join('&');};
ajax.send=function(u,f,m,a){var x=ajax.x();x.open(m,u,true);x.onreadystatechange=function(){if(x.readyState==4)f(x.responseText)};if(m=='POST')x.setRequestHeader('Content-type','application/x-www-form-urlencoded');x.send(a)};
ajax.get=function(url,func){ajax.send(url,func,'GET')};
ajax.gets=function(url){var x=ajax.x();x.open('GET',url,false);x.send(null);return x.responseText};
ajax.post=function(url,func,args){ajax.send(url,func,'POST',args)};
ajax.update=function(url,elm){var e=$(elm);var f=function(r){e.innerHTML=r};ajax.get(url,f)};
ajax.submit=function(url,elm,frm){var e=$(elm);var f=function(r){e.innerHTML=r};ajax.post(url,f,ajax.serialize(frm))};

var tm;
var chart_cnt = 0;

function cell(id,text){
	var e = $(id);
	if(e != undefined){
		e.innerHTML = text;
	}
}

function update(text){
	var row = text.split("\n");

	var d= new Date();
	d.setTime(row[0]);

	var year = d.getFullYear();
	var month = d.getMonth() + 1;
	var date = d.getDate();
	var hours = d.getHours();
	var minutes = d.getMinutes();
	var seconds = d.getSeconds();
	if(hours < 10) hours = "0" + hours;
	if(minutes < 10) minutes = "0" + minutes;
	if(seconds < 10) seconds = "0" + seconds;

	var date_str = year + "/" + month + "/" + date + " " + hours + ":" + minutes + ":" + seconds;

	for(var j = 0; j < 1; j++){
		cell("DATE" + j,date_str);

		var index = document.forms[j].cp.selectedIndex;

		for(var i = 1; i < row.length; i++){
			var col = row[i].split("\t");
			if(col.length != 9) continue;
			var id = col[1];
			if(id == document.forms[j].cp.options[index].value){
				cell("BID" + j,col[2]);
				cell("ASK" + j,col[3]);
				cell("HIGH" + j,col[4]);
				cell("LOW" + j,col[5]);
				cell("CHANGE" + j,col[6]);
				//cell("B_SWAP" + j,col[7]);
				//cell("S_SWAP" + j,col[8]);
				break;
			}
		}
	}
}

function change_chart(id){
	chart_cnt = 0;
	var index = document.forms[id].cp.selectedIndex;
	var cp = document.forms[id].cp.options[index].value;

	var cp2 = cp.substr(0,3) + "/" + cp.substr(3,3);
	cell("CP" + id,cp2);

	var ts = Math.floor(new Date().getTime() / 180);
	cell("CHART" + id,'<img src="http://www.fx-today.net/chart/cimg/' + cp + '-hour-180-180.png?src=atfx.jp&' + ts + '" width="180" height="180" alt="" border="">');
	clearTimeout(tm);
	getrate();
}

function getrate(){
	if(++chart_cnt % 30 == 0){
		for(var i = 0; i < 4; i++){
			change_chart(i);
		}
		return;
	} else{
		// ajax.get("getrate.php?src=atfx.jp&" + new Date().getTime(), update);
		ajax.get("./rate/getrate.php?src=atfx.jp&" + new Date().getTime(), update);
		tm = setTimeout('getrate()',10000);
	}
}

function init(){
	for(var i = 0; i < 1; i++){
		change_chart(i);
	}
}
