//////////////////////////////////////////////////////////////////////
// hogemonia_mk2式 "get_server_time.js" 適当制作２０分えでぃしょん  //
//                Ver.0.0.0.1beta   <UTF-8BOM無版>                  //
//                      Webサーバ時間取得スクリプト                 //
//                       http://blog.mct-lab.com/                   //
//                   Copyright 2007 by HoGeMoNiA_mkII               //
//////////////////////////////////////////////////////////////////////

var SEV_php_url = "http://www.earthrize.net/data/common/cgi/clock/get_server_time.php";

function loadTimeData(){
	TimeDATA_httpObj = createXMLHttpRequest(getTimeDATA);
	if (TimeDATA_httpObj)
	{
		TimeDATA_httpObj.open("GET",SEV_php_url,true);
		TimeDATA_httpObj.send(null);
	}	
}

function getTimeDATA()
{
		if ((TimeDATA_httpObj.readyState == 4) && (TimeDATA_httpObj.status == 200))
		{
			date_moto_data = TimeDATA_httpObj.responseText;
			date_local  = new Date();
			temp_server = date_moto_data.match(/\S+/g); //get_server_time.phpから得られるデータをそれぞれ、年、月、日、時、分、秒、マイクロ秒に分離して、temp_server配列に放り込む。
			date_server = new Date(temp_server[0],temp_server[1]-1,temp_server[2],temp_server[3],temp_server[4],temp_server[5],Math.round(temp_server[6]*1000,0)); //マイクロ秒の部分は細か過ぎるので適当に四捨五入して使用。
			SEV_T_plusminus = date_local.getTime() - date_server.getTime(); //毎回（毎秒ごとに）その時の時間をサーバから得る方法では、サーバに激しく負荷がかかるので、ローカル時間とサーバ時間の時間差を求め、以後はその時間差を元にローカル時間からサーバ時間を計算して表示。
		}
}

function createXMLHttpRequest(cbFunc)
{
	var XMLhttpObject = null;
	try{
		XMLhttpObject = new XMLHttpRequest();
	}catch(e){
	try{
		XMLhttpObject = new ActiveXObject("Msxml2.XMLHTTP");
	}catch(e){
		try{
			XMLhttpObject = new ActiveXObject("Microsoft.XMLHTTP");
		}catch(e){
			return null;
				}
			}
		}
	if (XMLhttpObject) XMLhttpObject.onreadystatechange = cbFunc;
	return XMLhttpObject;
}

var SEV_T_plusminus;
getTimeDATA_temp_dd = new Date();
SEV_php_url = SEV_php_url + "?" + getTimeDATA_temp_dd.toString();
loadTimeData();
