function createXMLHttp(){
	var xmlHttp;
	try{
		xmlHttp = new XMLHttpRequest();
	} catch( e ){
		var XmlHttpVersions = new Array('MSXML2.XMLHTTP.7.0', 'MSXML2.XMLHTTP.6.0', 'MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP');
		for ( var i = 0; i < XmlHttpVersions.length && !xmlHttp; i++ ){
			try{
				xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
			}catch (e) {}
		}
	}
	if ( !xmlHttp ){
		alert("Ошибка создания XmlHttpRequest");
	}else{
		return xmlHttp;
	}
}

var ajaxExtent = '';
function doAjax(url){
	try{
		if ( typeof(arguments[1]) != "undefined" ){
			ajaxExtent = arguments[1];
		}
		request = createXMLHttp();
		request.onreadystatechange = finAjax;  
		request.open("GET", url, true);  
		request.send(null);  
	} catch ( aError ){
	}
}
function finAjax(){
	if ( request.readyState == 4 ){
		if ( request.status == 200 ){
			eval(request.responseText);
			if ( ajaxExtent.length > 0 ){
				eval(ajaxExtent);
			}
		}
	}  
}
function getRequestBody(oForm){
	var aParams = new Array();
	for ( var i = 0; i < oForm.elements.length; i++ ){
		var sParam = encodeURIComponent(oForm.elements[i].name);
		sParam += "=";
		if ( oForm.elements[i].type != 'checkbox' ){
			sParam += encodeURIComponent(oForm.elements[i].value);
		}else{
			sParam += oForm.elements[i].checked ? 'on' : '';
		}
		aParams.push(sParam);
	}
	return aParams.join("&");
}
