You are here

public function entity_views_handler_field_entity::render_entity_link in Entity API 7

Render a value as a link to the entity if applicable.

Parameters

$value: The value to render.

$values: The values for the current row retrieved from the Views query, as an object.

File

views/handlers/entity_views_handler_field_entity.inc, line 160
Contains the entity_views_handler_field_entity class.

Class

entity_views_handler_field_entity
A handler to provide proper displays for entities retrieved via data selection.

Code

public function render_entity_link($entity, $values) {
  $type = $this->field_entity_type;
  if (!is_object($entity) && isset($entity) && $entity !== FALSE) {
    $entity = entity_load_single($type, $entity);
  }
  if (!$entity) {
    return '';
  }
  $render = $this
    ->render_single_value($entity, $values);
  if (!$this->options['link_to_entity'] || $this->options['display'] == 'view') {
    return $render;
  }
  if (is_object($entity) && ($url = entity_uri($type, $entity))) {
    return l($render, $url['path'], array(
      'html' => TRUE,
    ) + $url['options']);
  }
  return $render;
}