You are here

function views_content_views_row_content_type_admin_info in Chaos Tool Suite (ctools) 7

Same name and namespace in other branches
  1. 6 views_content/plugins/content_types/views_row.inc \views_content_views_row_content_type_admin_info()

File

views_content/plugins/content_types/views_row.inc, line 191

Code

function views_content_views_row_content_type_admin_info($subtype, $conf, $contexts) {

  // Go through this route to make sure we catch changes in configuration
  // that can happen.
  $plugin = ctools_get_content_type('views_row');
  $context = ctools_content_select_context($plugin, $subtype, $conf, $contexts);
  $block = new stdClass();
  $block->title = t('Row information');
  if (!empty($conf['use_fields'])) {
    $display_fields = array();
    $view = views_content_context_get_view($context);
    if (empty($view)) {
      $block->title = t('Broken view');
      return $block;
    }
    $fields = $view->display_handler
      ->get_field_labels();
    foreach ($conf['fields'] as $field) {
      if (!empty($fields[$field])) {
        $display_fields[$field] = '"<em>' . check_plain($fields[$field]) . '</em>"';
      }
    }
    if ($display_fields) {
      $block->content = t('Displaying: !fields', array(
        '!fields' => implode(', ', $display_fields),
      ));
    }
    else {
      $block->content = t('Displaying no fields due to misconfiguration.');
    }
  }
  else {
    $block->content = t('Displaying the configured row.');
  }
  return $block;
}