function selectCategory(element) {
  element = $(element);
  if ($('toggle-more') && element == $('toggle-more').parentNode) return;
  
  var selected = $('categories').down('.selected');
  var id = element.id.split('_').last();
  
  if (element.parentNode == $('more')) {
    var sid = selected.id, eid = element.id, svalue = selected.innerHTML, evalue = element.innerHTML;
  
    selected.id = element.id = '';  // avoid id collisions
    selected.innerHTML = evalue;
    selected.id = eid;
    element.innerHTML = svalue;
    element.id = sid;
  } else {
    selected.toggleClassName('selected');
    element.toggleClassName('selected');
  }
  
  $('query').value = categories[id].keywords;
  $('selected_category').value = categories[id].key;
  if($('more')) {
    $('more').hide();
  }
}