//
// HTTP通信JavaScript
//
// 作成日時 : 2007/10/20 H.Takeda
// 更新履歴 : 2008/01/08 H.Takeda 非同期受信処理修正
//
// Copyright(C) 2007-2008 ECHO Software Design
//


//
// XMLHttpオブジェクト作成
//
// <引数>
//    なし
// <戻値>
//    成功:XMLHttpオブジェクト、失敗:null
//
function createXMLHttpRequest()
{
	var XMLhttpObject = null;

	try
	{
		// IE7,Firefox,Safari,Opera
		XMLhttpObject = new XMLHttpRequest();
	}
	catch(e)
	{
		// IE6...
		try
		{
			XMLhttpObject = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e)
		{
			try
			{
				XMLhttpObject = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e)
			{
				return null;
			}
		}
	}

	return XMLhttpObject;
}


//
// サーバからデータを取得する
//
// <引数>
//    method : メソッド("get" or "post")
//    url    : 取得URL(同一ドメイン以外はサーバ側にcgi等が必要)
//    async  : 通信種別(true:非同期、false:同期)
//    event  : 受信イベント
// <戻値>
//    成功:取得内容、失敗:null
//
function getData( method, url, async, event)
{
	xmlhttp = createXMLHttpRequest( );
	if (xmlhttp)
	{
		if( async) xmlhttp.onreadystatechange = event;
		xmlhttp.open(method, url, async);
		xmlhttp.send(null);
	}
	else
	{
		alert( "XMLHttpRequestの生成に失敗しました。");
	}
}

