

function createAjaxRequest()
{
	var ajaxRequest;
	
	try
	{
		ajaxRequest=new XMLHttpRequest();
	}
	catch(e)
	{
		try
		{
			ajaxRequest=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e)
		{
			try
			{
				ajaxRequest=new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e)
			{
				ajaxRequest=null;
			}
		}
	}
	return ajaxRequest;
}

function sendAjaxPost(url, names, result_func)
{
	var data="";
	var retval=false;
	for(i=0; i<names.length; i++)
	{
		var el=document.getElementById(names[i]);
		if(null!=el)
		{
			if(i!=0)
				data+="&";
			data+=names[i]+"="+encodeURI(el.value);
		}
	}
	
	request=createAjaxRequest();
	if(false==request)
		return false;
		
	request.open('POST',url,true);
	request.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	request.setRequestHeader("Content-length",data.length);
	request.setRequestHeader("Connection","close");
	request.send(data);
	request.onreadystatechange=function(){
		if(request.readyState!=4)
			return;
		else
		{
			result_func(request.responseText);
		}
	}
}

function sendAjaxPostMisc(url, names, values, result_func)
{
	var data="";
	var retval=false;
	
	if(names.length!=values.length)
		return false;
	
	for(i=0; i<names.length; i++)
	{
		if(i!=0)
			data+="&";
		data+=names[i]+"="+encodeURI(values[i]);
	}
	
	request=createAjaxRequest();
	if(false==request)
		return false;
	
	request.open('POST',url,true);
	request.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	request.setRequestHeader("Content-length",data.length);
	request.setRequestHeader("Connection","close");
	request.send(data);
	request.onreadystatechange=function(){
		if(request.readyState!=4)
			return;
		else
		{
			result_func(request.responseText);
		}
	}
	return true;
}
