function HHC_hasClass(n, x)
{
  return (new RegExp('\\b' + x + '\\b')).test(n.className);
}

/* add X class to N node, return TRUE if added, FALSE if already exists */
function HHC_addClass(n, x)
{
  if (HHC_hasClass(n, x)) return false;
  else n.className += ' ' + x;
  return true;
}

/* remove X class from N node, return TRUE if removed, FALSE if not present */
function HHC_removeClass(n, x)
{
  if (!HHC_hasClass(n, x)) return false;
  x = new RegExp('\\s*\\b' + x + '\\b', 'g');
  n.className = n.className.replace(x, '');
  return true;
}

function HHC_showHHCArea(doShow)
{
  var div = document.getElementById('div_HHC_HHCArea');
  if(doShow && HHC_hasClass(div, 'HHCHidden')) {
    document.getElementById('textarea_HHC_HandHistory').name = "req_textarea_HHC_HandHistory";
    //document.getElementById('inputtext_HHC_user').name = "req_inputtext_HHC_user";
    HHC_removeClass(div, 'HHCHidden');
  }
  else if(!doShow && !HHC_hasClass(div, 'HHCHidden')) {
    document.getElementById('textarea_HHC_HandHistory').name = "textarea_HHC_HandHistory";
    //document.getElementById('inputtext_HHC_user').name = "inputtext_HHC_user";
    HHC_addClass(div, 'HHCHidden');
  }
  
  var fieldset = document.getElementById('fieldset_HHC_HHCArea');
  if(doShow && HHC_hasClass(fieldset, 'HHCHidden')) {
    HHC_removeClass(fieldset, 'HHCHidden');
  }
  else if(!doShow && !HHC_hasClass(fieldset, 'HHCHidden')) {
    HHC_addClass(fieldset, 'HHCHidden');
  }
  
  return true;
}