var Post = new Object();
Post.Send = function(form)
{
  var query = Post.buildQuery(form);
  document.getElementById('frm_container').innerHTML = '<p style="position:absolute;top:50%;left:50%;margin-top:-8px;margin-left:-8px;"><img src="images/ajax-loader.gif" /></p>';
  $.post(form.action, query, Post.OnResponse, 'text');
}

Post.OnResponse = function(txt)
{
  document.getElementById('frm_container').innerHTML = txt;
}

Post.buildQuery = function(form)
{
  var query = "";
  for(var i=0; i<form.elements.length; i++)
  {
    var key = form.elements[i].name;
    var value = Post.getElementValue(form.elements[i]);
    if(key && value)
    {
      query += key +"="+ value +"&";
    }
  }
  return query;
}

Post.getElementValue = function(formElement)
{
  if(formElement.length != null) var type = formElement[0].type;
  if((typeof(type) == 'undefined') || (type == 0)) var type = formElement.type;

  switch(type)
  {
    case 'undefined': return;

    case 'radio':
      for(var x=0; x < formElement.length; x++) 
        if(formElement[x].checked == true)
      return formElement[x].value;

    case 'select-multiple':
      var myArray = new Array();
      for(var x=0; x < formElement.length; x++) 
        if(formElement[x].selected == true)
          myArray[myArray.length] = formElement[x].value;
      return myArray;

    case 'checkbox': return formElement.checked;
  
    default: return formElement.value;
  }
}

  
