﻿// 送信中フラグ
var sendflg = 0;

//-----------------------------------------------------------------------------
// XMLHttpRequest
//-----------------------------------------------------------------------------
function sendRequest(url, sload, func)
{
	//XMLHttpRequestオブジェクト生成
	var oj = createHttpRequest();
	if(oj == null) return null;

	//強制ロードの設定
	var sload = (!!sendRequest.arguments[1])?sload:false;
	if(sload)
	{
		if(-1 < url.indexOf('?'))
		{
			url = url+'&t='+(new Date()).getTime();
		}
		else
		{
			url = url+'?t='+(new Date()).getTime();
		}
	}

	//ブラウザ判定
	var ua = navigator.userAgent;
	var safari = ua.indexOf('Safari')!=-1;
	var konqueror = ua.indexOf('Konqueror')!=-1;
	var mozes = ((a=navigator.userAgent.split('Gecko/')[1])?a.split(' ')[0]:0) >= 20011128;

	//受信処理
	if(window.opera || safari || mozes)
	{
		oj.onload = function()
		{
			sendflg = 0;
			func(oj.responseText);
		}
	}
	else
	{
		oj.onreadystatechange = function()
		{
			if(oj.readyState == 4)
			{
				sendflg = 0;
				func(oj.responseText);
			}
		}
	}

	//送信中の要求をキャンセル
	if(sendflg==1)
	{
		oj.abort();
	}

	//送信中フラグ
	sendflg = 1

	//open メソッド
	oj.open('GET', url, true);

	//send メソッド
	oj.send('');
}

//-----------------------------------------------------------------------------
// XMLHttpRequestオブジェクト生成
//-----------------------------------------------------------------------------
function createHttpRequest()
{
	if(window.ActiveXObject)
	{
		//Win e4,e5,e6用
		try
		{
			return new ActiveXObject('Msxml2.XMLHTTP');
		}
		catch(e)
		{
			try
			{
				return new ActiveXObject('Microsoft.XMLHTTP');
			}
			catch(e2)
			{
				return null;
 			}
 		}
	}
	else if(window.XMLHttpRequest)
	{
		//Win Mac Linux m1,f1,o8 Mac s1 Linux k3用
		return new XMLHttpRequest();
	}
	else
	{
		return null;
	}
}


