function makeRequest(url, parameters, container, method) {
  var http_request = false;

  if (window.XMLHttpRequest) {
    http_request = new XMLHttpRequest();
    if (http_request.overrideMimeType) {
      http_request.overrideMimeType('text/html');
    }
  } 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('Cannot create XMLHTTP instance');
    return false;
  }
	 
  http_request.onreadystatechange = function() {
    if (http_request.readyState == 4) {
      if (http_request.status == 200) {
        result = http_request.responseText;
        document.getElementById(container).innerHTML = result;            
      } else {
        alert('There was a problem with the request.');
      }
    }
  }
	
  switch (method) {
    case 'get':
      http_request.open('GET', url + parameters, true);
      http_request.send(null);
	break;
	case 'post':
      http_request.open('POST', url, true);
      http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      http_request.setRequestHeader("Content-length", parameters.length);
      http_request.setRequestHeader("Connection", "close");
      http_request.send(parameters);
	break;
  }
}

function get(form, url, container, method) {
  switch (method) {
    case 'get': var parameters = "?"; break;
    case 'post': var parameters = ""; break;
  }
	  
  for (i = 0; i < form.childNodes.length; i++) {
    if (form.childNodes[i].tagName == "INPUT") {
      if (form.childNodes[i].type == "text") {
        parameters += form.childNodes[i].name + "=" + form.childNodes[i].value + "&";
      }
      if (form.childNodes[i].type == "checkbox") {
        if (form.childNodes[i].checked) {
          parameters += form.childNodes[i].name + "=" + form.childNodes[i].value + "&";
        } else {
          parameters += form.childNodes[i].name + "=&";
        }
      }
      if (form.childNodes[i].type == "radio") {
        if (form.childNodes[i].checked) {
          parameters += form.childNodes[i].name + "=" + form.childNodes[i].value + "&";
        }
      }
    }   
    if (form.childNodes[i].tagName == "SELECT") {
      var sel = form.childNodes[i];
      parameters += sel.name + "=" + sel.options[sel.selectedIndex].value + "&";
    }
    if (form.childNodes[i].tagName == "TEXTAREA") {
      parameters += form.childNodes[i].name + "=" + encodeURI(form.childNodes[i].value) + "&";
    }	  
  }
	
  makeRequest(url, parameters, container, method);
}

function clearDocument(container) {
  document.getElementById(container).innerHTML = '';
}