You are here

function _jquerymobile_node_view in jQuery Mobile module 7.2

Private callback for hook_node_view().

1 call to _jquerymobile_node_view()
_jquerymobile_view_multiple in modules/node.inc
Construct a drupal_render() style array from an array of loaded nodes.

File

modules/node.inc, line 55
Alterations required to the node module.

Code

function _jquerymobile_node_view($node, $view_mode = 'full', $langcode = NULL) {
  global $theme_key;
  $prefix = '';
  $suffix = '';
  if (!isset($langcode)) {
    $langcode = $GLOBALS['language_content']->language;
  }
  if (_jquerymobile_get_setting($theme_key, 'front')) {
    $prefix = '<li>';
    $suffix = '</li>';
  }

  // Populate $node->content with a render() array.
  node_build_content($node, $view_mode, $langcode);
  $build = $node->content;

  // We don't need duplicate rendering info in node->content.
  unset($node->content);
  $build += array(
    '#theme' => 'node',
    '#node' => $node,
    '#view_mode' => $view_mode,
    '#language' => $langcode,
    '#prefix' => $prefix,
    '#suffix' => $suffix,
  );

  // Add contextual links for this node, except when the node is already being
  // displayed on its own page. Modules may alter this behavior (for example,
  // to restrict contextual links to certain view modes) by implementing
  // hook_node_view_alter().
  if (!empty($node->nid) && !($view_mode == 'full' && node_is_page($node))) {
    $build['#contextual_links']['node'] = array(
      'node',
      array(
        $node->nid,
      ),
    );
  }

  // Allow modules to modify the structured node.
  $type = 'node';
  drupal_alter(array(
    '_jquerymobile_node_view',
    'entity_view',
  ), $build, $type);
  return $build;
}