function flushTable(id,full)
{
  var  tbl = document.getElementById(id);
  var rows = tbl.tBodies[0].rows.length -1;
  var  end = 0;

  if ( full == 1 )
    end = 1;

  for (var i = rows; i >= end; i--)
    tbl.tBodies[0].deleteRow(i);
}

function flushSelect(id,full)
{
  var elSel = document.getElementById(id);
  var end = 0;

  if ( full == 1 )
    end = 1;

  for (var i = elSel.length; i > end; i--)
    elSel.remove(elSel.length - 1);
}

function selectAllOptions(selStr)
{
  alert(selStr);

  var selObj = document.getElementById(selStr);
  alert(selObj);
  for ( var i = 0 ; i < selObj.options.length ; i++ )
    selObj.options[i].selected = true;
}

// Coloca todos los elementos de un select en un campo hidden
function placeInHidden(delim, selStr, hidStr)
{
  var selObj = document.getElementById(selStr);
  var hideObj = document.getElementById(hidStr);
  hideObj.value = '';
  for (var i=0; i<selObj.options.length; i++) {
    hideObj.value = hideObj.value ==
      '' ? selObj.options[i].value : hideObj.value + delim + selObj.options[i].value;
  }
}

function addOption(id,txtDescription,txtValue)
{
  var elOptNew = document.createElement('option');

  elOptNew.text = txtDescription;
  elOptNew.value = txtValue;

  var elSel = document.getElementById(id);

  try {
    elSel.add(elOptNew, null); // standards compliant; doesn't work in IE
  }
  catch(ex) {
    elSel.add(elOptNew); // IE only
  }
}

function deleteOption(id,position)
{
  var elSel = document.getElementById(id);

  if(position <= elSel.length)
	elSel.remove(position);
}

function explodeXML ( xmltag, element, xmldoc )
{
  var container = new Array();
  var nodes = xmldoc.getElementsByTagName(xmltag);

    for ( xy = 0; xy < nodes.length; xy++)
    {
      var node  = nodes[xy];
      var ids = new Array();
      for ( yz=0; yz < element.length; yz++)
      {
        try { ids[element[yz]] = node.getElementsByTagName(element[yz])[0].firstChild.nodeValue; }
        catch (e) { ids[element[yz]] = null; }
      }
      container.push(ids);
    }

  return container;
}

function flushCheckBoxes( list )
{
  for ( i=0; i < list.length; i++)
  {
    list[i].checked = false;
  }
}

/*
  Copyright Robert Nyman, http://www.robertnyman.com
  Free to use if this text is included
*/
function getElementsByAttribute(oElm, strTagName, strAttributeName, strAttributeValue){
  var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
  var arrReturnElements = new Array();
  var oAttributeValue = (typeof strAttributeValue != "undefined")? new RegExp("(^|\s)" + strAttributeValue + "(\s|$)") : null;
  var oCurrent;
  var oAttribute;
  for(var i=0; i<arrElements.length; i++){
    oCurrent = arrElements[i];
    oAttribute = oCurrent.getAttribute && oCurrent.getAttribute(strAttributeName);
    if(typeof oAttribute == "string" && oAttribute.length > 0){
      if(typeof strAttributeValue == "undefined" || (oAttributeValue && oAttributeValue.test(oAttribute))){
        arrReturnElements.push(oCurrent);
      }
    }
  }
  return arrReturnElements;
}
