function createHttpRequest(){
	if(window.ActiveXObject){
		try {
			return new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e){
			try {
				return new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e2) {
				return null;
 			}
 		}
	} else if(window.XMLHttpRequest){
		return new XMLHttpRequest();
	} else {
		return null;
	}
}

function sendRequest(callback,data,method,url,async,sload,user,password){
	var oj = createHttpRequest();
	if( oj == null ) return null;
	
	var sload = (!!sendRequest.arguments[5])?sload:false;
	if(sload)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 () {
			callback(oj);
		}
	}
	else{
		oj.onreadystatechange =function(){
			if ( oj.readyState == 4){
				callback(oj);
			}
		}
	}
	if(method == "GET"){
		if(data!=""){
			var encdata = "";
			var datas = data.split("&");
			for(i=0;i<datas.length;i++){
				var dataq = datas[i].split("=");
				encdata += "&"+encodeURIComponent(dataq[0])+"="+encodeURIComponent(dataq[1]);
			}
			url=url + encdata;
		}
	}

	oj.open(method,url,async,user,password);
	if(method == 'POST') {
		if(!window.opera){
			oj.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=sjis');
		}
		else {
			if((typeof oj.setRequestHeader) == "function")
				oj.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=sjis');
		}
	} 
		//デバック
//	alert("////jslb_ajaxxx.js//// \n data:"+data+" \n method:"+method+" \n url:"+url+" \n async:"+async);
	
	oj.send(data);
	}

//返り値の配列化
function getRowColArray(resdata){
	var ary = resdata.split("\n");
	var i;
	for(i = 0; i < ary.length; i++){
		ary[i] = ary[i].split(",");
	}
	return ary;
}

function setData(data,callback,url){
//	var data = "&data="+sql;
	//コールバック関数,SQL文,送信形式,送信先,非同期,強制ロード
	sendRequest(callback,data,"POST",url,true,true);
}

function setDataG(data,callback,url){
//	var data = "&data="+sql;
	//コールバック関数,SQL文,送信形式,送信先,非同期,強制ロード
	sendRequest(callback,data,"GET",url,true,true);
}

function jsgt_progressBar(id){
	this.progress =setProgressBars(id);
	function setProgressBars(id){
		// プログレスバーを出力するdiv
		this.div = document.getElementById(id);

		// プログレスバーのデフォルト値
		this.prog_bar= '.'; //バーのキャラクタ
		this.prog_interval = 50; //プログレス インターバル 1/1000秒単位
		this.prog_count = 0; //プログレスカウンター初期値
		this.prog_count_max = 18;//プログレスバー カウンターMax

		var prog_array= []; //バーのタイマーIDを格納する配列
	
		//プログレス スタート
		this.prog_start = function(){
			prog_array.unshift(
				setInterval(
				//プログレスバー出力
					function (){
						if(this.prog_count >= this.prog_count_max){
							this.div.innerHTML = "Now Loading"; //初期化
							this.prog_count =0;
						}
						this.div.innerHTML += this.prog_bar;
						this.prog_count++ ;
					}
					,this.prog_interval
				)
			)
		}
	
		//プログレス ストップ
		this.prog_stop = function(){
			clearInterval(prog_array[0])
			//停止したタイマーを削除
			prog_array.shift()
			//消去
			this.div.innerHTML= "";
		}
		return this
	}
}

