You are here

function ctools_export_ui::list_build_row in Chaos Tool Suite (ctools) 6

Same name and namespace in other branches
  1. 7 plugins/export_ui/ctools_export_ui.class.php \ctools_export_ui::list_build_row()

Build a row based on the item.

By default all of the rows are placed into a table by the render method, so this is building up a row suitable for theme('table'). This doesn't have to be true if you override both.

1 call to ctools_export_ui::list_build_row()
ctools_export_ui::list_form_submit in plugins/export_ui/ctools_export_ui.class.php
Submit the filter/sort form.
2 methods override ctools_export_ui::list_build_row()
ctools_custom_content_ui::list_build_row in ctools_custom_content/plugins/export_ui/ctools_custom_content_ui.class.php
Build a row based on the item.
stylizer_ui::list_build_row in stylizer/plugins/export_ui/stylizer_ui.class.php
Build a row based on the item.

File

plugins/export_ui/ctools_export_ui.class.php, line 519

Class

ctools_export_ui
Base class for export UI.

Code

function list_build_row($item, &$form_state, $operations) {

  // Set up sorting
  $name = $item->{$this->plugin['export']['key']};
  $schema = ctools_export_get_schema($this->plugin['schema']);

  // Note: $item->{$schema['export']['export type string']} should have already been set up by export.inc so
  // we can use it safely.
  switch ($form_state['values']['order']) {
    case 'disabled':
      $this->sorts[$name] = empty($item->disabled) . $name;
      break;
    case 'title':
      $this->sorts[$name] = $item->{$this->plugin['export']['admin_title']};
      break;
    case 'name':
      $this->sorts[$name] = $name;
      break;
    case 'storage':
      $this->sorts[$name] = $item->{$schema['export']['export type string']} . $name;
      break;
  }
  $this->rows[$name]['data'] = array();
  $this->rows[$name]['class'] = !empty($item->disabled) ? 'ctools-export-ui-disabled' : 'ctools-export-ui-enabled';

  // If we have an admin title, make it the first row.
  if (!empty($this->plugin['export']['admin_title'])) {
    $this->rows[$name]['data'][] = array(
      'data' => check_plain($item->{$this->plugin['export']['admin_title']}),
      'class' => 'ctools-export-ui-title',
    );
  }
  $this->rows[$name]['data'][] = array(
    'data' => check_plain($name),
    'class' => 'ctools-export-ui-name',
  );
  $this->rows[$name]['data'][] = array(
    'data' => check_plain($item->{$schema['export']['export type string']}),
    'class' => 'ctools-export-ui-storage',
  );
  $this->rows[$name]['data'][] = array(
    'data' => theme('links', $operations),
    'class' => 'ctools-export-ui-operations',
  );

  // Add an automatic mouseover of the description if one exists.
  if (!empty($this->plugin['export']['admin_description'])) {
    $this->rows[$name]['title'] = $item->{$this->plugin['export']['admin_description']};
  }
}