You are here

function panels_renderer_editor::render_category in Panels 6.3

Render all of the content links in a category.

1 call to panels_renderer_editor::render_category()
panels_renderer_editor::ajax_select_content in plugins/display_renderers/panels_renderer_editor.class.php
AJAX command to present a dialog with a list of available content.

File

plugins/display_renderers/panels_renderer_editor.class.php, line 659
Class file to control the main Panels editor.

Class

panels_renderer_editor
@file Class file to control the main Panels editor.

Code

function render_category($content, $category, $region) {
  if (empty($category) || empty($content) || $category == 'root') {
    $output = '<div class="panels-categories-description">';
    $output .= t('Content options are divided by category. Please select a category from the left to proceed.');
    $output .= '</div>';
  }
  else {
    $titles = array_keys($content);
    natcasesort($titles);

    // Fill out the info for our current category.
    $columns = 2;
    $col[1] = '';
    $col[2] = '';
    $col_size = count($titles) / $columns;
    $count = 0;
    foreach ($titles as $title) {
      $which = floor($count++ / $col_size) + 1;

      // we leave 0 for the categories.
      $col[$which] .= $this
        ->render_add_content_link($region, $content[$title]);
    }
    $output = '<div class="panels-section-columns">';
    foreach ($col as $id => $column) {
      $output .= '<div class="panels-section-column panels-section-column-' . $id . '">' . '<div class="inside">' . $column . '</div></div>';
    }
    $output .= '</div>';

    // columns
  }
  if ($messages = theme('status_messages')) {
    $output = '<div class="messages">' . $messages . '</div>' . $output;
  }
  return $output;
}