field_ui_build_modes_tabs

Versions
7
field_ui_build_modes_tabs($obj_type, $tab_selector = NULL)

Group available build modes on tabs on the 'Manage display' page.

@todo Remove this completely and use vertical tabs?

▾ 3 functions call field_ui_build_modes_tabs()

field_ui_display_overview_form in modules/field_ui/field_ui.admin.inc
Menu callback; presents a listing of fields display settings for a content type.
field_ui_menu in modules/field_ui/field_ui.module
Implements hook_menu().
template_preprocess_field_ui_display_overview_form in modules/field_ui/field_ui.admin.inc
Theme preprocess function for field_ui-display-overview-form.tpl.php.

Code

modules/field_ui/field_ui.module, line 177

<?php
function field_ui_build_modes_tabs($obj_type, $tab_selector = NULL) {
  $info = &drupal_static(__FUNCTION__);

  if (!isset($info[$obj_type])) {
    $info[$obj_type] = module_invoke_all('field_ui_build_modes_tabs');
    // Collect titles, and filter out non active modes.
    $active_modes = field_build_modes($obj_type);
    foreach ($info[$obj_type] as $tab => $values) {
      $modes = array();
      foreach ($info[$obj_type][$tab]['build modes'] as $mode) {
        if (isset($active_modes[$mode])) {
          $modes[$mode] = $active_modes[$mode];
        }
      }
      if ($modes) {
        $info[$obj_type][$tab]['build modes'] = $modes;
      }
      else {
        unset($info[$obj_type][$tab]);
      }
    }
  }
  if ($tab_selector) {
    return isset($info[$obj_type][$tab_selector]) ? $info[$obj_type][$tab_selector]['build modes'] : array();
  }
  return $info[$obj_type];
}
?>
Login or register to post comments
 
 

All source code and documentation on this site is released under the terms of the GNU General Public License, version 2 and later. Drupal is a registered trademark of Dries Buytaert.