You are here

function modr8_block in modr8 5

Same name and namespace in other branches
  1. 6 modr8.module \modr8_block()

Implementation of hook_block().

File

./modr8.module, line 315
Easy dedicated content moderation

Code

function modr8_block($op = 'list', $delta = 0) {
  if ($op == 'list') {
    $blocks[0]['info'] = t("Modr8 moderator's block");
    return $blocks;
  }
  elseif ($op == 'view') {
    if (user_access('moderate content')) {
      $block['subject'] = t('Moderation queue');
      $is_published = '';
      if (!user_access('administer nodes')) {

        // Users who don't have the 'administer nodes' permission can only see published nodes.
        $is_published = 'n.status = 1 AND ';
      }
      $count = db_result(db_query(db_rewrite_sql('SELECT COUNT(*) FROM {node} n WHERE ' . $is_published . ' n.moderate = 1')));
      $content = '<p>' . l(t('@items in moderation', array(
        '@items' => format_plural($count, '1 post', '@count posts'),
      )), 'admin/content/modr8') . '</p>';
      if ($count) {
        $sql = db_rewrite_sql('SELECT n.nid, n.title FROM {node} n WHERE ' . $is_published . ' n.moderate = 1 ORDER BY n.changed DESC');
        $result = db_query_range($sql, 0, 6);
        $content .= node_title_list($result, t('Recent additions:'));
      }
      $block['content'] = $content;
      return $block;
    }
  }
}