You are here

function quicktabs_list in Quick Tabs 7.2

Same name and namespace in other branches
  1. 5 quicktabs.module \quicktabs_list()
  2. 6.3 includes/admin.inc \quicktabs_list()
  3. 6 quicktabs.module \quicktabs_list()
  4. 6.2 includes/admin.inc \quicktabs_list()
  5. 7.3 quicktabs.admin.inc \quicktabs_list()

Page callback to list quicktabs in the system.

1 string reference to 'quicktabs_list'
quicktabs_menu in ./quicktabs.module
Implements hook_menu().

File

includes/admin.inc, line 11
Provides the Quick Tabs' administrative interface.

Code

function quicktabs_list() {
  $colspan = module_exists('ctools') ? 4 : 3;
  $header = array(
    array(
      'data' => t('Quicktab'),
    ),
    array(
      'data' => t('Storage'),
    ),
    array(
      'data' => t('Operations'),
      'colspan' => $colspan,
    ),
  );
  $rows = array();
  foreach (quicktabs_get_all_quicktabs() as $quicktab) {
    if (module_exists('ctools')) {

      // Determine storage
      switch ($quicktab->export_type) {
        case EXPORT_IN_DATABASE | EXPORT_IN_CODE:
          $storage = t('Overridden');
          $delete = l(t('Revert'), 'admin/structure/quicktabs/manage/' . $quicktab->machine_name . '/delete');
          break;
        case EXPORT_IN_DATABASE:
          $storage = t('Normal');
          $delete = l(t('Delete'), 'admin/structure/quicktabs/manage/' . $quicktab->machine_name . '/delete');
          break;
        case EXPORT_IN_CODE:
          $storage = t('Default');
          $delete = '';
          break;
      }
      $tablerow = array(
        array(
          'data' => $quicktab->title,
        ),
        array(
          'data' => $storage,
        ),
        array(
          'data' => l(t('Edit'), 'admin/structure/quicktabs/manage/' . $quicktab->machine_name . '/edit'),
        ),
        array(
          'data' => l(t('Export'), 'admin/structure/quicktabs/manage/' . $quicktab->machine_name . '/export'),
        ),
        array(
          'data' => l(t('Clone'), 'admin/structure/quicktabs/manage/' . $quicktab->machine_name . '/clone'),
        ),
        array(
          'data' => $delete,
        ),
      );
    }
    else {
      $tablerow = array(
        array(
          'data' => $quicktab->title,
        ),
        array(
          'data' => t('Normal'),
        ),
        array(
          'data' => l(t('Edit'), 'admin/structure/quicktabs/manage/' . $quicktab->machine_name . '/edit'),
        ),
        array(
          'data' => l(t('Clone'), 'admin/structure/quicktabs/manage/' . $quicktab->machine_name . '/clone'),
        ),
        array(
          'data' => l(t('Delete'), 'admin/structure/quicktabs/manage/' . $quicktab->machine_name . '/delete'),
        ),
      );
    }
    $rows[] = $tablerow;
  }
  if (empty($rows)) {
    $rows[] = array(
      array(
        'data' => t('No quicktabs available.'),
        'colspan' => $colspan,
      ),
    );
  }
  $build = array(
    '#theme' => 'table',
    '#header' => $header,
    '#rows' => $rows,
    '#attributes' => array(
      'id' => 'quicktabs',
    ),
  );
  return $build;
}