function ajaxpage(url, answerfunc){
	var page_request = false
	if (window.XMLHttpRequest){ // if Mozilla, Safari etc
		page_request = new XMLHttpRequest()
	}else if (window.ActiveXObject){ // if IE
		try {
			page_request = new ActiveXObject("Msxml2.XMLHTTP")
		} 
		catch (e){
			try{
				page_request = new ActiveXObject("Microsoft.XMLHTTP")
			}
			catch (e){}
		}
	}else
		return false
	page_request.onreadystatechange=function(){
			ajaxdata(page_request, answerfunc)
		}
	page_request.open('GET', url, true)
	page_request.send(null)
	return true;
}

function ajaxpagepost(url, answerfunc, postparams){
	var page_request = false
	if (window.XMLHttpRequest){ // if Mozilla, Safari etc
		page_request = new XMLHttpRequest()
	}else if (window.ActiveXObject){ // if IE
		try {
			page_request = new ActiveXObject("Msxml2.XMLHTTP")
		} 
		catch (e){
			try{
				page_request = new ActiveXObject("Microsoft.XMLHTTP")
			}
			catch (e){}
		}
	}else
		return false
	page_request.onreadystatechange=function(){
			ajaxdata(page_request, answerfunc)
		}
	page_request.open('POST', url, true)
	if(isString(postparams) && postparams){
		page_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	  page_request.setRequestHeader("Content-length", postparams.length);
	  page_request.setRequestHeader("Connection", "close");
		page_request.send(postparams)
	}else{
		page_request.send(null)
	}
	return true;
}

function ajaxdata(page_request, answerfunc){
	if (page_request.readyState == 4 && (page_request.status==200 ||
		page_request.status==206 ||
		window.location.href.indexOf("http")==-1)){
		  //alert("SRC: "+page_request.responseText);
		  var data=page_request.responseText;
 
		  var js="";
		  var re = new RegExp("^(.*?)<script[^>]*>(.*?)</script>(.*)$","i");
		  var m = re.exec(data.replace(/\n/g,'\uffff').replace(/\r/g,'\ufffe'));
		  
		  while ((m != null)&&(m.length==4)){
        data=m[1]+m[3];
        js=js+"\n"+m[2];
        var m = re.exec(data);
		  }
		  data=data.replace(/\uffff/g,'\n').replace(/\ufffe/g,'\r');
		  js=js.replace(/\uffff/g,'\n').replace(/\ufffe/g,'\r');
		//alert("HTML: "+data);alert("JS: "+js);
		
		  if (answerfunc)
			  eval(answerfunc)(data,js);	
	}
}
