function getXMLHttpRequest() {
	if (window.ActiveXObject) {
		try	{
			return new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e)	{
			try {
					return new ActiveXObject("Microsoft.XMLHTTP");
			} catch(e1) { return null; }
		}
	} else if (window.XMLHttpRequest) {
			return new XMLHttpRequest();
	} else {
		return null;
	}
}

var httpRequest = null;

function sendRequest(url, params, callback, method) {

	httpRequest = getXMLHttpRequest();
	var httpMethod = method ? method : 'GET';
	if (httpMethod != 'GET' && httpMethod != 'POST') {
		httpMethod = 'GET';
	}

	var httpParams = (params == null || params == '') ? null : params;
	var httpUrl = url;
	if (httpMethod=='GET' && httpParams != null) {
			httpUrl = httpUrl + "?" + httpParams;
	}
	httpRequest.open(httpMethod, httpUrl, true);
	httpRequest.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	httpRequest.onreadystatechange = callback;
	httpRequest.send(httpMethod == 'POST' ? httpParams : null);
}

function getFormStr(obj) { //Form value string
      var getstr = "";
      for (i=0; i<obj.length; i++) {
         if (obj.elements[i].tagName == "INPUT") {
            if (obj.elements[i].type == "text") {
               getstr += obj.elements[i].name + "=" + encodeURIComponent(escape(obj.elements[i].value.replace(/%/g,"*-*-*"))) + "&";
            }
            if (obj.elements[i].type == "checkbox") {
               if (obj.elements[i].checked) {
                  getstr += obj.elements[i].name + "=" + encodeURIComponent(escape(obj.elements[i].value.replace(/%/g,"*-*-*"))) + "&";
               } else {
                  getstr += obj.elements[i].name + "=&";
               }
            }
            if (obj.elements[i].type == "radio") {
               if (obj.elements[i].checked) {
                  getstr += obj.elements[i].name + "=" + encodeURIComponent(escape(obj.elements[i].value.replace(/%/g,"*-*-*"))) + "&";
               }
            }
         }
         if (obj.elements[i].tagName == "SELECT") {
            var sel = obj.elements[i];
            getstr += sel.name + "=" + encodeURIComponent(escape(sel.options[sel.selectedIndex].value.replace(/%/g,"*-*-*"))) + "&";
         }
         if (obj.elements[i].type.toUpperCase() == "TEXTAREA"){
         		getstr += obj.elements[i].name + "=" + encodeURIComponent(escape(obj.elements[i].value.replace(/%/g,"*-*-*"))) + "&";
         }
         if (obj.elements[i].type.toUpperCase() == "HIDDEN"){
         		getstr += obj.elements[i].name + "=" + encodeURIComponent(escape(obj.elements[i].value.replace(/%/g,"*-*-*"))) + "&";
         }
      }
      return getstr;
   }