You are here

function opening_hours_node_view in Opening hours 7

Implements hook_node_view().

Add opening hours as a field on node views.

File

./opening_hours.module, line 730
Opening hours module.

Code

function opening_hours_node_view($node, $view_mode, $langcode) {
  if (!variable_get('opening_hours_hide_on_empty_' . $node->type, TRUE) || opening_hours_present_on_node($node->nid)) {
    $extrafields = field_extra_fields_get_display('node', $node->type, $view_mode);
    if (isset($extrafields['opening_hours_week']) && isset($extrafields['opening_hours_week']['visible']) && $extrafields['opening_hours_week']['visible']) {

      // We can't control label position on extra fields in UI. We'll store our
      // choice in a variable instead.
      $label_position = variable_get('opening_hours_week_label_position__' . $node->type . '__' . $view_mode, 'above');
      $node->content['opening_hours_week'] = array(
        '#entity_type' => 'node',
        '#theme' => array(
          'field',
        ),
        '#label_display' => $label_position,
        '#items' => array(
          0,
        ),
        '#title' => t('Opening hours'),
        '#language' => $langcode,
        '#field_name' => 'opening_hours_week',
        '#field_type' => 'text',
        '#bundle' => $node->type,
        '#view_mode' => $view_mode,
        0 => array(
          '#theme' => 'opening_hours_week',
          '#node' => $node,
        ),
      );
    }
  }
}