function add_row_to_clauses_table(table_name)
{
  var tbl = document.getElementById(table_name);
  var last_row = tbl.rows.length;
  var row = tbl.insertRow(last_row);
  rand = get_rand(9999999);
  var index = last_row + '_' + rand;

  // cell 1
  var cell_1 = row.insertCell(0);
  var onclick_event = 'delete_row_from_table(\'' + table_name + '\', \'' + index + '\');';
  var img = '<img alt="Delete" id="' + table_name + '_' + index + '" src="../images/icons/delete.gif" onClick="' + onclick_event + '">';
  cell_1.innerHTML = img;

  // cell 2
  var cell_2 = row.insertCell(1);
  var radio_1 = '<input type="radio" class="none" name="data[clauses][' + index + '][type]" value="whereas">Whereas<br>';
  var radio_2 = '<input type="radio" class="none" name="data[clauses][' + index + '][type]" value="be_it_resolved">Be It Resolved<br>';
  cell_2.innerHTML = radio_1 + radio_2;

  // cell 3
  var cell_3 = row.insertCell(2);
  var radio_1 = '<input type="radio" class="none" name="data[clauses][' + index + '][approved]" value="yes">yes<br>';
  var radio_2 = '<input type="radio" class="none" name="data[clauses][' + index + '][approved]" value="no" checked>no<br>';
  cell_3.innerHTML = radio_1 + radio_2;

  // cell 4
  var cell_4 = row.insertCell(3);
  var input = '<textarea name="data[clauses][' + index + '][text]" rows="3" cols="60" wrap="virtual"></textarea>';
  cell_4.innerHTML = input;
}

function add_row_to_submitters_table(table_name)
{
  var tbl = document.getElementById(table_name);
  var last_row = tbl.rows.length;
  var row = tbl.insertRow(last_row);
  rand = get_rand(9999999);
  var index = last_row + '_' + rand;

  // cell 1
  var cell_1 = row.insertCell(0);
  var onclick_event = 'delete_row_from_table(\'' + table_name + '\', \'' + index + '\');';
  var img = '<img alt="Delete" id="' + table_name + '_' + index + '" src="../images/icons/delete.gif" onClick="' + onclick_event + '">';
  cell_1.innerHTML = img;

  // cell 2
  var cell_2 = row.insertCell(1);
  var input = '<input type="text" name="data[submitters][' + index + '][text]" size="25">';
  cell_2.innerHTML = input;
}

function delete_row_from_table(table_name, row_num)
{
  var tbl = document.getElementById(table_name);
  row_index = find_row_index(table_name, row_num);
  if (row_index !== null)
  {
    tbl.deleteRow(row_index);
  }
}

function find_row_index(table_name, row_num)
{
  var magic_row_id = table_name + '_' + row_num;
  var tbl = document.getElementById(table_name);
  var last_row = tbl.rows.length;
  var the_row = null;

  var id;
  var col;
  var columns;
  var row;

  //With help from: http://developer.mozilla.org/en/docs/Traversing_an_HTML_table_with_JavaScript_and_DOM_Interfaces

  for (i = 0; i < last_row; i++)
  {
    row = tbl.getElementsByTagName("tr")[i];
    columns = row.getElementsByTagName("td").length;
    for (j = 0; j < columns; j++)
    {
      col = row.getElementsByTagName("td")[j];
      id = col.childNodes[0].id;
      if (id == magic_row_id)
      {
        the_row = i;
      }
    }
  }
  return the_row;
}

function get_rand(max)
{
  return ( Math.floor ( Math.random ( ) * max + 1 ) );
}

