function ajax_load_html(URL, parameters, destination) {
  var ajax_request;

  if (parameters) parameters += '&ajax='+destination;
  else parameters = 'ajax='+destination;

  function ajax_load_html_processStateChange() {
    if (ajax_request.readyState == 4){
	contentDiv = document.getElementById(destination);

	if (ajax_request.status == 200){
	    var s=new String(ajax_request.responseText);

	    if ((s.length > 0) &&
		(s.indexOf('&nbsp;<noscript>') == 0) &&
		(s.lastIndexOf('</noscript>') == s.length-12)) {
		// Removing "noindex" tags
		s=s.slice(16,s.length-12);
	    };
	    contentDiv.innerHTML = s;

	    document.body.style.cursor='default';

	    var scripts=contentDiv.getElementsByTagName('script');
	    for (i = 0; i < scripts.length; i++) {
		if (window.execScript) window.execScript(scripts.item(i).innerHTML, 'javascript');
		else window.eval(scripts.item(i).innerHTML);
	    };
	} else {
	    contentDiv.innerHTML = "Error: Status "+ajax_request.status;
	}
    }
  };
  if (window.XMLHttpRequest){
    document.body.style.cursor='wait';

    ajax_request = new XMLHttpRequest();
    ajax_request.onreadystatechange = ajax_load_html_processStateChange;
    ajax_request.open("POST", URL, true);

    ajax_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    ajax_request.setRequestHeader("Content-length", parameters.length);
    ajax_request.setRequestHeader("Connection", "close");
    ajax_request.send(parameters);
  } else if (window.ActiveXObject) {
    ajax_request = new ActiveXObject("Microsoft.XMLHTTP");
    if (ajax_request) {
	ajax_request.onreadystatechange = ajax_load_html_processStateChange;
	ajax_request.open("POST", URL, true);

	ajax_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	ajax_request.setRequestHeader("Content-length", parameters.length);
	ajax_request.setRequestHeader("Connection", "close");
        ajax_request.send(parameters);
    }
  }
}

function ajax_send_form(URL,frm,apnd,destination) {
    var param='';
    for (i=0; i<document.forms[frm].length; i++) {
	if (! document.forms[frm].elements[i].name) continue;
	if (i != 0) param = param + '&';
	if ((document.forms[frm].elements[i].type == 'checkbox') ||
	    (document.forms[frm].elements[i].type == 'radio')) {
	    if (document.forms[frm].elements[i].checked)
		param = param + document.forms[frm].elements[i].name + '=' +
			encodeURIComponent(document.forms[frm].elements[i].value);
	} else param = param + encodeURIComponent(document.forms[frm].elements[i].name) + '=' +
		       encodeURIComponent(document.forms[frm].elements[i].value);
    };
    if (apnd != '') param += (param == ''?apnd:'&'+apnd)
    ajax_load_html(URL, param, destination);
}
