
function BiznetMessageTable()
{
  var table = document.getElementById("biznetRailTableBody");
  var loadingImage = document.getElementById("biznetRailLoading");
  var submitButton = document.getElementById("biznetRailSubmit");

  this.setPlainState = function(text)
  {
    loadingImage.style.display = "none";
    submitButton.style.display = "block";
    clear();
    var messages = text.split("\n");
    for(var i=0; i<messages.length; i++) 
    { 
      if(messages[i].length > 0) appendMessage(messages[i], false);
    }
  }

  this.setWaitState = function()
  {
    submitButton.style.display = "none";
    loadingImage.style.display = "block";
  }

  this.setErrorState = function(text)
  {
    loadingImage.style.display = "none";
    submitButton.style.display = "block";
    clear();
    appendMessage(text, true);
  }

  function clear()
  {
    for(var i=table.childNodes.length-1; i>=0; i--)
    {
      var className = table.childNodes[i].className;
      if(className == "biznetMessage" || className == "biznetErrorMessage")
      {
        table.removeChild(table.childNodes[i]);
      }
    }
  }

  function appendMessage(text, error)
  {
    var tr = document.createElement("tr");
    tr.className = error ? "biznetErrorMessage" : "biznetMessage";
    var td = document.createElement("td");
    td.colSpan = 5;
    td.appendChild(document.createTextNode(text));
    tr.appendChild(td);
    table.appendChild(tr);
  }
}

var biznetMessageTable = null;

function biznetSubmitQueryForm(id)
{
  var form = document.getElementById("biznetQueryForm" + id);
  if(biznetMessageTable == null)
  {
    biznetMessageTable = new BiznetMessageTable();
  }
  biznetMessageTable.setWaitState();
  var message = Clean.createSimpleMessage(form.action, "", null);
  message.silent = true;
  message.onComplete = function(req)
  {
    var text = req.responseText;
    biznetMessageTable.setPlainState(text);
  }
  message.onError = function(ex)
  {
    biznetMessageTable.setErrorState(ex + "");
  }
  //Clean.sendFormById(message, formId, false); //? method doesn't find a form
  Connection.sendFormByMessage(message, form, false);
}


