﻿// JavaScript Document
//建立AJAX對象
function getXMLHttp(){
	var xmlhttp,alerted;
	try {
		xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
	} catch (e) {
		try {
			xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {
		    try{
		        xmlhttp=new XMLHttpRequest();
		    }catch(e){
		        alert("請安裝Microsofts XML parsers");
		    }			
		}
	}
	if (!xmlhttp && !alerted) {
		try {
			xmlhttp = new XMLHttpRequest();
		} catch (e) {
			alert("您的IE不支持XMLHttpRequest對象");
		}
	}
	return xmlhttp;
}

//銷毀對象,防止內存泄漏
function DisCloseObj(obj){
	obj=null;
	CollectGarbage();
}

//AJAX调用类
function sendAjax(){
    this.url="";
    this.id="";
    this.method="get";
    this.XmlOrText="Text";
    this.asynchronous=true;
    this.xmlData="";
    this.postFlag=0;
    this.ln="";
    this.getXml = getXMLHttp();

    //返回值
    this.result = "";
}

////异步调用更新已知ID的内容
//sendAjax.prototype.getAjax=function(){
//    var xmlHttp=this.getXml;
//    var DivId=this.id;
//    xmlHttp.open(this.method,this.url,this.asynchronous);
//    if(this.postFlag==0){
//        xmlHttp.setRequestHeader("context-type","text/xml;charset=Big5");
//    }else{
//        xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
//    }
//    xmlHttp.onreadystatechange=function UpdataDiv(){
//	    if(xmlHttp.readyState==1){
//	        switch(this.ln){
//	            case "EN":
//	                $(DivId).innerHTML=getPlease('Is Initialized, Please...');
//	                break;
//	            case "CN":
//	                $(DivId).innerHTML=getPlease('正在初始化，请稍后...');
//	                break;
//	            case "TW":
//	                $(DivId).innerHTML=getPlease('正在初始化，請稍後...');
//	                break;
//	        }		    
//	    }	    
//	    if(xmlHttp.readyState==4){
//	    	//alert(xmlHttp.ResponseText);
//		$(DivId).innerHTML=xmlHttp.ResponseText;			        
//	        if(xmlHttp.status==404){
//	            switch(this.ln){
//	                case "EN":
//	                    $(DivId).innerHTML=getPlease("Can not find a visit to the page！");
//	                    break;
//	                case "CN":
//	                    $(DivId).innerHTML=getPlease("未找到可访问的页！");
//	                    break;
//	                case "TW":
//	                    $(DivId).innerHTML=getPlease("未找到可訪問的頁！");
//	                    break;
//	            }	            
//	        }else if(xmlHttp.status==200){				            
//	                    $(DivId).innerHTML= xmlHttp.ResponseText;						            
//			            DisCloseObj("xmlHttp");
//		    }else{
//		        xmlHttp.abort();
//		        $(DivId).innerHTML='執行時出現錯誤，被強制終止！'
//		    }
//	    }
//    }//回調函數
//    if(this.xmlData==""){
//        xmlHttp.send(null);
//    }else{
//        xmlHttp.send(this.xmlData);
//    }
//}

//异步调用更新已知ID的内容
sendAjax.prototype.getAjax = function() {
    var xmlHttp = this.getXml;
    var DivId = this.id;
    xmlHttp.open(this.method, this.url, this.asynchronous);
    if (this.postFlag == 0) {
        xmlHttp.setRequestHeader("context-type", "text/xml;charset=Big5");
    } else {
        xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
    }
    xmlHttp.onreadystatechange = function UpdataDiv() {
        if (xmlHttp.readyState == 1) {
            switch (this.ln) {
                case "EN":
                    $Y(DivId).innerHTML = getPlease('Is Initialized, Please...');
                    break;
                case "CN":
                    $Y(DivId).innerHTML = getPlease('正在初始化，请稍后...');
                    break;
                case "TW":
                    $Y(DivId).innerHTML = getPlease('正在初始化，請稍後...');
                    break;
            }
        }
        if (xmlHttp.readyState == 4) {
            //alert(xmlHttp.ResponseText);
            $Y(DivId).innerHTML = xmlHttp.ResponseText;
            if (xmlHttp.status == 404) {
                switch (this.ln) {
                    case "EN":
                        $Y(DivId).innerHTML = getPlease("Can not find a visit to the page！");
                        break;
                    case "CN":
                        $Y(DivId).innerHTML = getPlease("未找到可访问的页！");
                        break;
                    case "TW":
                        $Y(DivId).innerHTML = getPlease("未找到可訪問的頁！");
                        break;
                }
            } else if (xmlHttp.status == 200) {
                $Y(DivId).innerHTML = xmlHttp.ResponseText;
                DisCloseObj("xmlHttp");
            } else {
                xmlHttp.abort();
                $Y(DivId).innerHTML = '執行時出現錯誤，被強制終止！'
            }
        }
    } //回調函數
    if (this.xmlData == "") {
        xmlHttp.send(null);
    } else {
        xmlHttp.send(this.xmlData);
    }
}


//异步调用有返回值
sendAjax.prototype.ResultAjax = function() {
    var xmlHttp = this.getXml;
    xmlHttp.open(this.method, this.url, this.asynchronous);
    if (this.postFlag == 0) {
        xmlHttp.setRequestHeader("context-type", "text/xml;charset=Big5");
    } else {
        xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
    }
    xmlHttp.onreadystatechange = function UpdataDiv() {
        if(xmlHttp.readyState==1){
	        switch(this.ln){
	            case "EN":
	                $(DivId).innerHTML=getPlease('Is Initialized, Please...');
	                break;
	            case "CN":
	                $(DivId).innerHTML=getPlease('正在初始化，请稍后...');
	                break;
	            case "TW":
	                $(DivId).innerHTML=getPlease('正在初始化，請稍後...');
	                break;
	        }		    
	    }	    
	    if(xmlHttp.readyState==4){
	    	alert(xmlHttp.ResponseText);
	        this.result = xmlHttp.ResponseText;			        
	        if(xmlHttp.status==404){
	            switch(this.ln){
	                case "EN":
	                    $(DivId).innerHTML=getPlease("Can not find a visit to the page！");
	                    break;
	                case "CN":
	                    $(DivId).innerHTML=getPlease("未找到可访问的页！");
	                    break;
	                case "TW":
	                    $(DivId).innerHTML=getPlease("未找到可訪問的頁！");
	                    break;
	            }	            
	        }else if(xmlHttp.status==200){
	                    this.result = xmlHttp.ResponseText;						            
			            DisCloseObj("xmlHttp");
		    }else{
		        xmlHttp.abort();
		        $(DivId).innerHTML='執行時出現錯誤，被強制終止！'
		    }
	    }
    }//回調函數
    if(this.xmlData==""){
        xmlHttp.send(null);
    }else{
        xmlHttp.send(this.xmlData);
    }
}

////异步调用无返回值
//sendAjax .prototype.VoidAjax=function(){
//    var xmlHttp=this.getXml;
//    xmlHttp.open(this.method,this.url,this.asynchronous);	
//    if(this.postFlag==0){
//        xmlHttp.setRequestHeader("context-type","text/xml;charset=Big5");
//    }else{
//        xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
//    }		
//    xmlHttp.onreadystatechange=function UpdataDiv(){
//	    if(xmlHttp.readyState==1){
//		    getDataPlease('正在更新數據,請稍後...');
//	    }
//	    if(xmlHttp.status==404){
//	            getDataPlease('未找可訪問的頁...');
//	        }else if(xmlHttp.status==200){
//	                    $("DataPlease").innerHTML=xmlHttp.ResponseText;					            
//			            DisCloseObj("xmlHttp");
//			            //更新數據圖層
//                        getUrl(thisID,thisTextValue,thisUrl);
//		    }else{
//		        xmlHttp.abort();
//		        getDataPlease('執行時出現錯誤，被強制終止！');
//		    }
//    }//回調函數
//    if(this.xmlData==""){
//        xmlHttp.send(null);
//    }else{
//        xmlHttp.send(this.xmlData);
//    }
//}

//异步调用无返回值
sendAjax.prototype.VoidAjax = function() {
    var xmlHttp = this.getXml;
    xmlHttp.open(this.method, this.url, this.asynchronous);
    if (this.postFlag == 0) {
        xmlHttp.setRequestHeader("context-type", "text/xml;charset=Big5");
    } else {
        xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
    }
    xmlHttp.onreadystatechange = function UpdataDiv() {
        if (xmlHttp.readyState == 1) {
            getDataPlease('正在更新數據,請稍後...');
        }
        if (xmlHttp.status == 404) {
            getDataPlease('未找可訪問的頁...');
        } else if (xmlHttp.status == 200) {
            $Y("DataPlease").innerHTML = xmlHttp.ResponseText;
            DisCloseObj("xmlHttp");
            //更新數據圖層
            getUrl(thisID, thisTextValue, thisUrl);
        } else {
            xmlHttp.abort();
            getDataPlease('執行時出現錯誤，被強制終止！');
        }
    } //回調函數
    if (this.xmlData == "") {
        xmlHttp.send(null);
    } else {
        xmlHttp.send(this.xmlData);
    }
}
