This is a mirror report of this issue (http://drupal.org/node/1359026).

Basically if someone uses a fieldset that not top like:

$form['layout']['sidebar'] = array(
    '#type' => 'fieldset',
    '#title' => t('Sidebar layout settings'),
    '#collapsible' => TRUE,
    '#collapsed' => TRUE,
  );

Then all those settings will be hidden so the user won't even know they exist.

Comments

andrewmacpherson’s picture

Status: Active » Closed (works as designed)

This is expected behaviour, rather than a bug. The nested fieldset you mention DOES appear inside the top-level layout vertical tab. This is desirable; the sidebar layout fieldset provides additional context for the general layout. As far as I'm concerned there is no problem with the Mayo theme, which has structured it's settings sensibly.

I've tested this module with several themes which provide their own theme settings fieldsets:

  • Zen provides simple fieldsets, which each become a vertical tab when this themesettings_verticaltabs is enabled.
  • Mayo provides several fieldsets, one of which has a nested, collaped fieldset. The top level fieldsets become vertical tabs, and the nested fieldset (layout > sidebar layout) is found inside the vertical tab for the layout fieldset.
  • Some themes (e.g. Adaptivetheme, Omega) implement their own vertical tabs layouts using FAPI. These play nicely with themesettings_verticaltabs. You get two sets of vertical tabs; one for the theme-specific fieldsets, and another vertical tab set for the general themesettings when themesettings_verticaltabs is enabled.
    Both of these themes make use of nested (and collapsed) fieldsets in their own vertical tabsets.
  • My Touch Icons module is a similar case. When this module is enabled, a pair of nested collapsed fieldsets are inside the iOS touch icons vertical tabs.
  • There is some weirdness with the Fusion theme, because it implements a vertical tab set inside a fieldset. When themesettings_verticaltabs is enabled, things get messy with vertical tabs inside vertical tabs. This could do with a workaround perhaps, but I'll keep it out of the scope of this present bug report.