You are here

function headerimage_help in Header image 7

Same name and namespace in other branches
  1. 5 headerimage.module \headerimage_help()
  2. 6 headerimage.module \headerimage_help()

Implementation of hook_help

File

./headerimage.module, line 703
headerimage.module Conditionally display an node in a block.

Code

function headerimage_help($path, $arg) {
  $block_has_nodes = '';
  $block_in_region = '';
  switch ($path) {
    case 'admin/help#headerimage':

      // Determine the status of the installation
      $type_is_set = count(variable_get('headerimage_node_type', array())) ? t('(DONE)') : t('(TO DO)');
      $block_is_created = count(headerimage_get_blocks()) ? t('(DONE)') : t('(TO DO)');
      foreach (headerimage_get_blocks() as $delta => $name) {
        $block_has_nodes = db_select('headerimage', 'hi')
          ->fields('hi', array(
          'nid',
        ))
          ->condition('block', $delta)
          ->execute()
          ->fetchField();
        if ($block_has_nodes) {
          break;
        }
      }
      $block_has_nodes = $block_has_nodes ? t('(DONE)') : t('(TO DO)');
      foreach (headerimage_get_blocks() as $delta => $name) {
        $block_in_region = db_select('block', 'b')
          ->fields('b', array(
          'region',
        ))
          ->condition('module', 'headerimage')
          ->condition('theme', variable_get('theme_default', 'bartik'))
          ->condition('delta', $delta)
          ->execute()
          ->fetchField();
        if ($block_in_region) {
          break;
        }
      }
      $block_in_region = $block_in_region ? t('(DONE)') : t('(TO DO)');
      $output = "<p>" . t('Header Image allows you to to display an image on selected pages. It can display one image at the front page, a different one at FAQ pages and yet another at all other pages.') . "</p>\n";
      $output .= "<p>" . t('Visibility of each image, included in a node, can be determined by node ID, path, taxonomy, book, content type or custom PHP code. Header Image uses an arbitrary content type.') . "</p>\n";
      $output .= "<p>" . t('Multiple images (nodes) can be displayed in one block, with each image having its own conditions. Using a weight per node the order of selection can be controlled.') . "</p>\n";
      $output .= "<h2>" . t('Installation') . "</h2>\n";
      $output .= "<p>" . t('<ol>
<li>Set up <a href="!permissions">permissions</a>.</li>
<li>Optionally <a href="!create_content_type">create a content type</a> which will contain the header image.</li>
<li><a href="!set_node_type">Select a content type</a> to be used as Header Image. %status_type</li>
<li><a href="!create_header_image_block">Create a Header Image block</a>. %status_create</li>
<li>Create Header Image nodes. Select a Header Image block and set display conditions for each node. %status_assign</li>
<li><a href="!assign_header_image_block">Assign the Header Image block</a> to a region. %status_region</li>
</ol>', array(
        '!permissions' => url('admin/user/permissions'),
        '!create_content_type' => url('admin/content/types/add'),
        '!set_node_type' => url('admin/settings/headerimage/settings'),
        '%status_type' => $type_is_set,
        '!create_header_image_block' => url('admin/settings/headerimage'),
        '%status_create' => $block_is_created,
        '!assign_header_image_block' => url('admin/build/block'),
        '%status_assign' => $block_has_nodes,
        '%status_region' => $block_in_region,
      )) . "</p>\n";
      $output .= "<p>" . t('For more information please read the <a href="@handbook">configuration and customization handbook</a> on Header Image.', array(
        '@handbook' => 'http://drupal.org/node/201426/',
      )) . "</p>\n";
      return $output;
  }
}