function select_fid( fid ) {
  var frm = $('devcompform');
  frm.fid.value = fid;
  prepare_lists_for_submit(Array( 'featsel' ));
  frm.submit();
}

function rem_feat(from, to, id) {
  f = $(from);

  for(var i = 0; i < f.length; i++ ) {
    if( f.options[i].value == id ) {
      f.options[i].selected = true;
    }
  }
  
  move_selected(from, to);
}

function move_selected(from, to) {
  f = $(from);
  t = $(to);
  var i;

  for( i = 0; i < f.length; i++ ) 
  {
    if( f.options[i].selected == true ) 
    {
      optgroups = t.getElementsByTagName('optgroup');

      optgroup = f.options[i].parentNode.label;

      var group = "";
      var el;

      for( j = 0; j < optgroups.length; j++ )
      {
        if (optgroups[j].label == optgroup)
        {
          el = j;

          group = optgroups[j];
          break;
        }
      }

      if (group != "")
      {
        var newOption = t.getElementsByTagName('option')[0].cloneNode(true);
        newOption.value = f.options[i].value;
        newOption.text = f.options[i].text;

        if (newOption.value != "0")
        {
          group.insertBefore(newOption, optgroups[el].firstChild);
        }
      }
    }
  }
  for( i = f.length-1; i >= 0; i-- ) {
    if( f.options[i].selected == true && f.options[i].value != "0") {
      f.options[i] = null;
    }
  }
}

function copy_selected(from, to) {
  f = $(from);
  t = $(to);
  var i,j,dup;
  for( i = 0; i < f.length; i++ ) {
    if( f.options[i].selected == true ) {
      dup = false;
      for( j=0; j < t.length; j++ ) {
        if( t.options[j].value == f.options[i].value ) {
          dup = true;
        }
      }
      if( !dup ) {
        t.options[t.length] = new Option(f.options[i].text, f.options[i].value);
      }
    }
  }
}

function rem_selected(from) {
  f = $(from);
  var i;
  for( i = f.length-1; i >= 0; i-- ) {
    if( f.options[i].selected == true ) {
      f.options[i] = null;
    }
  }
}

function prepare_lists_for_submit( fields ) {
  var i;
  var j;
  for( i=0; i < fields.length; i++ ) {
    el = $( fields[i] );
    if( el ) {
      for( j=0; j < el.options.length; j++ ) {
        el.options[j].selected = true;
      }
    }
  }
}
