You are here

function advanced_forum_forum_list_content_type_render in Advanced Forum 7.2

Same name and namespace in other branches
  1. 6.2 plugins/content_types/forum_list.inc \advanced_forum_forum_list_content_type_render()

Render the content.

File

plugins/content_types/forum_list.inc, line 24
Forum list.

Code

function advanced_forum_forum_list_content_type_render($subtype, $conf, $panel_args, $context) {
  if (!empty($context) && empty($context->data)) {
    return;
  }
  $tid = 0;
  if (!empty($context)) {
    $tid = $context->data->tid;
  }
  $block = new stdClass();
  $block->module = 'forum-list';
  $block->delta = $tid;
  _advanced_forum_add_files();
  $forum_term = advanced_forum_forum_load($tid);
  $forums = isset($forum_term->forums) ? $forum_term->forums : array();
  if (empty($forums)) {
    return $block;
  }

  // No parents on the main forum page.
  $block->content = theme('forum_list', array(
    'forums' => $forums,
    'parents' => empty($context->parents) ? array() : $context->parents,
    'tid' => $tid,
  ));
  if (user_access('administer forums')) {
    $block->admin_links['administer_forums'] = array(
      'title' => t('Administer forums'),
      'alt' => t("Add, delete or modify forums"),
      'href' => "admin/structure/forum",
    );
    if ($tid) {
      $block->admin_links['edit_forum'] = array(
        'title' => t('Edit forum'),
        'alt' => t("Modify this forum"),
        'href' => "admin/structure/forum/edit/" . ($context->data->container ? 'container/' : 'forum/') . $tid,
        'query' => drupal_get_destination(),
      );
    }
  }
  return $block;
}