﻿
var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadstatustext="<img src='loading.gif' />"

// 依據不同的瀏覽器，取得 XMLHttpRequest 物件
function createAJAX() {
	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 onRcvData () {
	if (ajax.readyState == 4) {
		if (ajax.status == 200) {
			var content = document.getElementById ('content');
			content.innerHTML = ajax.responseText;
		} else {
			alert ("伺服器處理錯誤");
			//content.innerHTML = ("RSS處理發生不可預期錯誤!");
		}
	} 
}

function onRcvData (ajax,containerid) {
	if (ajax.readyState == 4) {
		if (ajax.status == 200) {
			var content = document.getElementById (containerid);
			content.innerHTML = ajax.responseText;
		} else {
			//alert ("伺服器處理錯誤");
			var content = document.getElementById (containerid);
			content.innerHTML = ajax.responseText;
			//content.innerHTML = ("AJAX發生不可預期錯誤!");
		}
	} 
}

// 非同步送出資料
function ajaxSendRequest(uri,newcontent) {
    var ajax;
	ajax = createAJAX() ;
	if (!ajax) {
		alert ('使用不相容 XMLHttpRequest 的瀏覽器');
		return 0;
	}

	//ajax.onreadystatechange = onRcvData;
	document.getElementById(newcontent).innerHTML=loadstatustext;
	ajax.onreadystatechange = function()
    {
        onRcvData(ajax,newcontent)
    }
    
    if (bustcachevar) //if bust caching of external page
    bustcacheparameter=(uri.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()	
	ajax.open ("GET", uri+bustcacheparameter, true);
	ajax.send ("");
}

function ajaxSendPostRequest(uri,para,newcontent) {
    var ajax;
	ajax = createAJAX() ;
	if (!ajax) {
		alert ('使用不相容 XMLHttpRequest 的瀏覽器');
		return 0;
	}

	//ajax.onreadystatechange = onRcvData;
	document.getElementById(newcontent).innerHTML=loadstatustext;
	ajax.onreadystatechange = function()
    {
        onRcvData(ajax,newcontent)
    }
    
    if (bustcachevar) //if bust caching of external page
    bustcacheparameter=(uri.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()	
	ajax.open ("POST", uri, true);
	ajax.send (para);
}


function getinfo(sURL,sDivID)
{
	if(sURL.length == 0)
	{
		//alert('請輸入密碼');
		return;
	}
	
	ajaxSendRequest(sURL, sDivID);
}

function ajaxsendpost(sUrl,sPara,sDivID)
{
	if(sURL.length == 0)
	{
		//alert('請輸入密碼');
		return;
	}
	
	ajaxSendRequest(sURL, sDivID);

}