<!--
// initial column must be pre-sorted
var previousColumnIndex = 0; 

function SortTable(selectedColumnIndex,Table) 
{
  var table = document.getElementById(Table);
  var tableBody = table.getElementsByTagName("tbody")[0];
  var tableRows = tableBody.getElementsByTagName("tr");
  // Get the data of selected column
  var originalColumnArray = new Array();
  for (var i=0; i < tableRows.length; i++) 
  {
    originalColumnArray[i] = new Object;
    originalColumnArray[i].oldIndex = i;
    originalColumnArray[i].value = tableRows[i].getElementsByTagName("td") 
    [selectedColumnIndex].firstChild.nodeValue;
  }
  if (selectedColumnIndex == previousColumnIndex) 
  { 
    // User clicked on the same column
    // again, reverse sort direction.
    originalColumnArray.reverse(); 
  }
  else 
  {
    // Select sorting method depending on 
    // column type
    if (selectedColumnIndex == 2) 
    {
      originalColumnArray.sort(CompareDigits);
    }
    else 
    {
      originalColumnArray.sort(Compare);
    }
    previousColumnIndex = selectedColumnIndex;
  }
  
  // Create a new tbody and copy old rows 
  // using the sorted index
  var sortedTableBody = 
  document.createElement("tbody");
  for (var i=0; i < originalColumnArray.length; i++) 
  {
    fila = sortedTableBody.appendChild(tableRows 
    [originalColumnArray[i].oldIndex]. 
    cloneNode(true));
    ispar = i%2==0?true:false; 
    if (ispar)
      fila.setAttribute('bgColor', '#F2F2F2');
    else
      fila.setAttribute('bgColor', '#FFFFFF');
  }
  
  // Replace old table with new one
  table.replaceChild(sortedTableBody, tableBody);
}



function Compare(x, y) 
{
  var xValue = x.value;
  var yValue = y.value;
  return (xValue == yValue ? 0 : 
  (xValue > yValue ? 1 : -1));
}

 function CompareDigits(x, y) 
{
  var xValue = parseInt(x.value);
  var yValue = parseInt(y.value);
  return (xValue - yValue);
}

//-->
