function newXMLHttpRequest() {
	var xmlreq = false;
	if (window.XMLHttpRequest) {
		xmlreq = new XMLHttpRequest();
	} else {
		if (window.ActiveXObject) {
			try {
				xmlreq = new ActiveXObject("Msxml2.XMLHTTP");
			}catch (e1) {
				try {
					xmlreq = new ActiveXObject("Microsoft.XMLHTTP");
				}catch (e2) {
				}
			}
		}
	}
	return xmlreq;
}
function sendRequest(urlstr,dataStr,whenGetResponse) {
	var req = newXMLHttpRequest();
	var handlerFunction = getReadyStateHandler(req, whenGetResponse);
	req.onreadystatechange = handlerFunction;
	req.open("POST", urlstr, true);//"/control?MatterAff.parseMainInfo"
	req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");  
//	req.send("dataStr=" + encode(dataStr));
	req.send(dataStr);
}
function sendRequestNoRes(urlstr,dataStr) {
	var req = newXMLHttpRequest();
	req.open("POST", urlstr, true);//"/control?MatterAff.parseMainInfo"
	req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;"); 
	req.send(dataStr);
}
function encode(str){
   return escape(str);
}
function decode(str){
   return unescape(str);
}
function getReadyStateHandler(req, responseXmlHandler) {
	return function () {
		/*if (req.readyState == 4) {
			if (req.status == 200) {*/
				responseXmlHandler(req);//.responseText
			/*} else {
			}
		}*/
	};
}
         
function buildSubmitForm(form) {//encodeURIComponent
	var elements = form.elements;
	var element;            
	var i;            
	var postContent = "";
	 for(i=0;i<elements.length;++i) {
		 var element=elements[i];
		 if(element.type!=undefined){
			 if(element.type=="text" || element.type=="textarea" || element.type=="hidden") { 
			 	postContent += encodeURIComponent(element.name) + "=" + encodeURIComponent(element.value) + "&"; 
			 }else if(element.type=="select-one"||element.type=="select-multiple") { 
			 	var options=element.options,j,item; 
				for(j=0;j<options.length;++j){ 
					item=options[j]; 
					if(item.selected) {         
					postContent += encodeURIComponent(element.name) + "=" + encodeURIComponent(item.value) + "&";      
					}
				}         
			 }else if(element.type=="checkbox"||element.type=="radio") { 
				if(element.checked) {      
					postContent += encodeURIComponent(element.name) + "=" + encodeURIComponent(element.value) + "&";   
				}       
			 } else if(element.type=="file") {
				if(element.value != "") {
					postContent += encodeURIComponent(element.name) + "=" + encodeURIComponent(element.value) + "&";   
				}       
			 } else {
			 	postContent += encodeURIComponent(element.name) + "=" + encodeURIComponent(element.value) + "&";     
			 } 
		}
	 }
	 return (postContent);
 }
 function sendRequestForm(urlstr,form,container,loading_msg) {
 	var method="POST";
	var postContent;
	if(form!=undefined){
 		method=form.method.toUpperCase();
 		postContent=buildSubmitForm(form);
	}
	var req = newXMLHttpRequest();
	req.onreadystatechange = function(){
		var dataCt=document.getElementById(container);
		if(dataCt!=null&&dataCt!=undefined){
			if (req.readyState==1){
				dataCt.innerHTML=loading_msg;
			}
			if (req.readyState==4){
				var s=req.responseText;
				var bg="<div id=\""+container+"\">";
				var at1=s.indexOf(bg);
				var at2=s.indexOf("</div><!--"+container+"-->");
				if(at1>0&&at2>0){
					at1+=bg.length;
					s=s.substring(at1,at2);
				}
				//setInnerHTML(dataCt,s);
				dataCt.innerHTML=s;
			}
		}
	}
	if(method== "GET") {
		var link=urlstr.indexOf("?")>0?"&":"?";
 		req.open("GET", urlstr +link+ postContent, true);
 		req.send(null);
 	} else if(method== "POST") {
		req.open("POST", urlstr, true);
		//req.setRequestHeader("Content-Type","text/html;charset=utf-8");
		req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
		req.send(postContent);
	}
}
function ajaxFormSubmit(form_obj,container){
	var loading_msg="<img src='/1mfg/img/loading2.gif' style='margin-bottom:-3px'>";
	ajaxFormSubmitWithMsg(form_obj,container,loading_msg);
}
function ajaxFormSubmitWithMsg(form_obj,container,loading_msg){
	sendRequestForm(form_obj.getAttributeNode("action").value,form_obj,container,loading_msg);
}

function loadThickBox(){
	document.createStyleSheet("/1mfg/js/thick/thickbox.css");
	var xx=document.createElement("script");
	xx.language="JavaScript";
	xx.src="/1mfg/js/thick/jquery-latest.js";
	var xx2=document.createElement("script");
	xx2.language="JavaScript";
	xx2.src="/1mfg/js/thick/thickbox.js";
	document.getElementsByTagName("head")[0].appendChild(xx);
	document.getElementsByTagName("head")[0].appendChild(xx2);
}

