// Отправляет XMLHTTP-запрос методом GET и устанавливает функцию-обработчик
function makeRequest(url, handle){
	var http_request=false;

	if(window.XMLHttpRequest){
		http_request=new XMLHttpRequest();
		}
	else if(window.ActiveXObject){
		try{
			http_request=new ActiveXObject('Msxml2.XMLHTTP');
			}
		catch(e){
			try{
				http_request=new ActiveXObject('Microsoft.XMLHTTP');
				}
			catch(e){}
			}
		}

	if(!http_request){
		alert('Ваш интернет браузер не поддерживает работу с объектом XMLHTTP');
		return false;
		}
	http_request.onreadystatechange=function(){handle(http_request);};
	http_request.open('GET', url, true);
	http_request.send(null);
	}

// Отправляет XMLHTTP-запрос методом POST и устанавливает функцию-обработчик
function makePostRequest(url, handle, tosend){
	var http_request=false;

	if(window.XMLHttpRequest){
		http_request=new XMLHttpRequest();
		}
	else if(window.ActiveXObject){
		try{
			http_request=new ActiveXObject('Msxml2.XMLHTTP');
			}
		catch(e){
			try{
				http_request=new ActiveXObject('Microsoft.XMLHTTP');
				}
			catch(e){}
			}
		}

	if(!http_request){
		alert('Ваш интернет браузер не поддерживает работу с объектом XMLHTTP');
		return false;
		}
	http_request.onreadystatechange=function(){handle(http_request);};
	http_request.open('POST', url, true);
	http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
	http_request.send(tosend);
	}

// Дополняет указанный select даными из XML вида <select> <option value='...'>...</option> ... </select>
function updateselect(xmldoc, selectobj){
	var root_node=xmldoc.getElementsByTagName('select')[0];

	var cg=root_node.childNodes;
	for(var i=0; i<cg.length; i++)
		if(cg[i].nodeType==1)
			selectobj.options[selectobj.options.length]=new Option(cg[i].firstChild.nodeValue, cg[i].getAttribute('value'));
	}
