/** XHConn - Simple XMLHTTP Interface - bfults@gmail.com - 2005-04-08        **
 ** Code licensed under Creative Commons Attribution-ShareAlike License      **
 ** http://creativecommons.org/licenses/by-sa/2.0/                           **/
var JS_IE = true;

function XHConn()
{
    var xmlhttp, bComplete = false;
    try { 
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); 
    }
    catch (e) { 
        try { 
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
        }
        catch (e) {
            JS_IE = false;
            try { 
                xmlhttp = new XMLHttpRequest(); 
            }
            catch (e) { 
                xmlhttp = false; 
            }
        }
    }
    if (!xmlhttp) return null;
    this.connect = function(sURL, sMethod, sVars, fnDone)
    {
        if (!xmlhttp) 
            return false;
        bComplete = false;
        sMethod = sMethod.toUpperCase();
        try {
            if (sMethod == "GET")
            {
                xmlhttp.open(sMethod, sURL+"?"+sVars, true);
				xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=tis-620");
                sVars = "";
            }
            else
            {
                xmlhttp.open(sMethod, sURL, true);
                xmlhttp.setRequestHeader("Method", "POST "+sURL+" HTTP/1.1");
                xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=tis-620");
            }
            xmlhttp.onreadystatechange = function(){
                if (xmlhttp.readyState == 4 && !bComplete)
                {
                    bComplete = true;
                    fnDone(xmlhttp);
                }
            };
            xmlhttp.send(sVars);
        }
        catch(z) { 
            return false; 
        }
        return true;
    };
    return this;
}

//self.onError=null;
currentX = currentY = 0; 
whichIt = null; 
//lastScrollX = 0; lastScrollY = 0;
NS = (document.layers) ? 1 : 0;
IE = (document.all) ? 1: 0;

function showWait(str){
		document.getElementById("msgbox").style.top = document.body.scrollTop+300;
		document.getElementById("msgbox").style.left =  300
		document.getElementById("msgbox").style.visibility="visible";
}
function hideWait(){
		document.getElementById("msgbox").style.visibility="hidden";
}
function cleanData(txt){
		//ตรวจสอบเครื่องหมายพิเศษ
          txt=txt.replace(/&/g, "%26"); //เครื่องหมาย &
          txt=txt.replace(/#/g, "%23"); //เครื่องหมาย #
          txt=txt.replace(/\+/g, "%2B"); //เครื่องหมาย +
		  txt=txt.replace(/\^/g, "%5E"); //เครื่องหมาย ^
		  txt=txt.replace(/\$/g, "%24"); //เครื่องหมาย $
		  return(txt);
}
function from2string(ObjForm){
	var str="";
	m=ObjForm.length
	for(i=0;i<m;i++){
		if(ObjForm[i].name!=""){
			//alert(ObjForm[i].type)
			switch(ObjForm[i].type){
				case "text":
					str+="&"+ObjForm[i].name+"="+cleanData(ObjForm[i].value);
					break;
				case "password":
					str+="&"+ObjForm[i].name+"="+cleanData(ObjForm[i].value);
					break;
				case "hidden":
					str+="&"+ObjForm[i].name+"="+cleanData(ObjForm[i].value);
					break;
				case "select-one":
					str+="&"+ObjForm[i].name+"="+ObjForm[i].value;
					break;
				case "radio":
					if(ObjForm[i].checked==true) str+="&"+ObjForm[i].name+"="+ObjForm[i].value					
					break;	
				case "checkbox":
					if(ObjForm[i].checked==true) str+="&"+ObjForm[i].name+"="+ObjForm[i].value;
					break;
				case "textarea":
					str+="&"+ObjForm[i].name+"="+cleanData(ObjForm[i].value);
					break;
			}
		}
	}
	//document.getElementById("ss").value=str
	return("s=1"+str);
	alert(str)
}

function oo(id_name){
	return(document.getElementById(id_name));
}

