/////////////////////////////////////////////////////////////////////

var rowSelected;
var idSelected;

function clickRow(table, row, id){
  idSelected = id;
  var obj = document.getElementById(table);
  for (var i = 1; i < parseInt(obj.rows.length); i++){
    if (obj.rows[i] == row){
      rowSelected = i;
    }
    obj.rows[i].style.background = "#f0f8ff";
  }
  row.style.background = "#616a7f";
}

function removeRow(table) { /* NEW added from version 1.1 */
  var idArray = new Array();
  var listIndex = 0;
  var j = 0;

  if (rowSelected == null){
    alert("<bean:message key='alert.list.selection'/>");
    return;
  }

  var obj = document.getElementById(table);
  obj.deleteRow(rowSelected);

  for (var i = 1; i < parseInt(obj.rows.length + 1); i++){
    listIndex = parseInt(i - 1);
    if (parseInt(i) != parseInt(rowSelected)){
      idArray[idArray.length] = window.document.forms[1].elements["list[" + parseInt(listIndex) + "].id"].value;
    }
  }
  for(var i = 0; i < window.document.forms[1].elements.length; i++){
    if (window.document.forms[1].elements[i].id == "id"){
      window.document.forms[1].elements["list[" + parseInt(j) + "].id"].value = idArray[parseInt(j)];
      j++;
    }
  }
  rowSelected = null;
  idSelected = null;
}

function upRow(table) { /* NEW added from version 1.1 */
  if (rowSelected == null){
    alert("<bean:message key='alert.list.selection'/>");
    return;
  }

  if (parseInt(rowSelected) == 1){
    alert("<bean:message key='alert.list.top'/>");
    return;
  }
  var obj = document.getElementById(table);
  var listIndex = parseInt(rowSelected - 1);
  var holdId = window.document.forms[1].elements["list[" + parseInt(listIndex - 1) + "].id"].value;
  obj.moveRow(rowSelected, parseInt(rowSelected - 1));
  window.document.forms[1].elements["list[" + listIndex + "].id"].value = holdId;
  window.document.forms[1].elements["list[" + parseInt(listIndex - 1) + "].id"].value = idSelected;
  rowSelected = parseInt(rowSelected - 1);
}

function downRow(table) { /* NEW added from version 1.1 */
  if (rowSelected == null){
    alert("<bean:message key='alert.list.selection'/>");
    return;
  }

  var obj = document.getElementById(table);
  if (parseInt(rowSelected) == parseInt(obj.rows.length - 1)){
    alert("<bean:message key='alert.list.bottom'/>");
    return;
  }
  var listIndex = parseInt(rowSelected - 1);
  var holdId = window.document.forms[1].elements["list[" + parseInt(listIndex + 1) + "].id"].value;
  obj.moveRow(rowSelected, parseInt(rowSelected + 1));
  window.document.forms[1].elements["list[" + listIndex + "].id"].value = holdId;
  window.document.forms[1].elements["list[" + parseInt(listIndex + 1) + "].id"].value = idSelected;
  rowSelected = parseInt(rowSelected + 1);
}

function topRow(table) { /* NEW added from version 1.1 */
  var idArray = new Array();
  var listIndex = 0;
  var j = 0;

  if (rowSelected == null){
    alert("<bean:message key='alert.list.selection'/>");
    return;
  }

  if (parseInt(rowSelected) == 1){
    alert("<bean:message key='alert.list.top'/>");
    return;
  }

  var obj = document.getElementById(table);
  obj.moveRow(rowSelected, 1);

  for (var i = 1; i < parseInt(obj.rows.length); i++){
    listIndex = parseInt(i - 1);
    if (parseInt(i) == parseInt(rowSelected)){
      idArray[idArray.length] = window.document.forms[1].elements["list[" + parseInt(listIndex) + "].id"].value;
    }
  }
  for (var i = 1; i < parseInt(obj.rows.length); i++){
    listIndex = parseInt(i - 1);
    if (parseInt(i) != parseInt(rowSelected)){
      idArray[idArray.length] = window.document.forms[1].elements["list[" + parseInt(listIndex) + "].id"].value;
    }
  }
  for(var i = 0; i < window.document.forms[1].elements.length; i++){
    if (window.document.forms[1].elements[i].id == "id"){
      window.document.forms[1].elements["list[" + parseInt(j) + "].id"].value = idArray[parseInt(j)];
      j++;
    }
  }
  rowSelected = 1;
}

function bottomRow(table) { /* NEW added from version 1.1 */
  var idArray = new Array();
  var listIndex = 0;
  var j = 0;

  if (rowSelected == null){
    alert("<bean:message key='alert.list.selection'/>");
    return;
  }

  var obj = document.getElementById(table);

  if (parseInt(rowSelected) == parseInt(obj.rows.length - 1)){
    alert("<bean:message key='alert.list.bottom'/>");
    return;
  }

  obj.moveRow(rowSelected, parseInt(obj.rows.length - 1));

  for (var i = 1; i < parseInt(obj.rows.length); i++){
    listIndex = parseInt(i - 1);
    if (parseInt(i) != parseInt(rowSelected)){
      idArray[idArray.length] = window.document.forms[1].elements["list[" + parseInt(listIndex) + "].id"].value;
    }
  }
  for (var i = 1; i < parseInt(obj.rows.length); i++){
    listIndex = parseInt(i - 1);
    if (parseInt(i) == parseInt(rowSelected)){
      idArray[idArray.length] = window.document.forms[1].elements["list[" + parseInt(listIndex) + "].id"].value;
    }
  }
  for(var i = 0; i < window.document.forms[1].elements.length; i++){
    if (window.document.forms[1].elements[i].id == "id"){
      window.document.forms[1].elements["list[" + parseInt(j) + "].id"].value = idArray[parseInt(j)];
      j++;
    }
  }

  rowSelected = parseInt(obj.rows.length - 1);
}
