You are here

function oa_related_oa_paragraph_snippet_render in Open Atrium Related Content 7.2

Render function for the paragraph_snippet bundle.

1 string reference to 'oa_related_oa_paragraph_snippet_render'
oa_related_oa_related_field_info in ./oa_related.paragraphs.info.inc
@file Used to define information for specific fields on paragraph entities. For now these fields are of the 'Widget type' => 'Select list'.

File

./oa_related.paragraphs.inc, line 138
Render various paragraph types.

Code

function oa_related_oa_paragraph_snippet_render(&$vars, $bundle, $field_name, $value) {
  $value = isset($value) ? $value : '_none';
  switch ($value) {
    case '2':
    case '3':
    case '4':
    case 'full':
    case 'left':
    case 'right':
    case '_none':

      // For snippets, pull the body field of the referenced entity
      if (!empty($vars['field_snippet_content'][0]['entity'])) {
        $wrapper = entity_metadata_wrapper('paragraphs_item', $vars['paragraphs_item']);
        $body = $wrapper->snippet_body
          ->value();
        $snippet_body = array(
          '#markup' => $body,
        );

        // Render the body.
        $vars['snippet_body'] = render($snippet_body);
        $vars['snippet_title'] = '';
        if ($value != '_none') {
          if (is_numeric($value)) {
            $vars['classes_array'][] = drupal_html_class('oa-columns-' . $value);
          }
          else {
            $vars['classes_array'][] = drupal_html_class('oa-callout-' . $value);
            $vars['classes_array'][] = drupal_html_class('oa-callout');
          }
        }
        if (isset($wrapper->field_snippet_showtitle)) {
          $show = $wrapper->field_snippet_showtitle
            ->value();
          if ($show) {
            $title = $wrapper->snippet_title
              ->value();
            $node = $wrapper->field_snippet_content
              ->value();
            $snippet_title = array(
              '#markup' => '<h3 class="oa_snippet_title">' . l($title, 'node/' . $node->nid) . '</h3>',
              '#weight' => -9,
            );

            // Rendered the title.
            $vars['snippet_title'] = render($snippet_title);
          }
        }
        $vars['theme_hook_suggestions'][] = 'oa_related_paragraphs_snippet_render';
      }
      break;
  }
}