You are here

class field_collection_views_handler_field_host_entity_path in Field Collection Views 8

Same name and namespace in other branches
  1. 7 views/field_collection_views_handler_field_host_entity_path.inc \field_collection_views_handler_field_host_entity_path

Field handler to display the host_entity_path

Hierarchy

Expanded class hierarchy of field_collection_views_handler_field_host_entity_path

1 string reference to 'field_collection_views_handler_field_host_entity_path'
field_collection_views_views_data in views/field_collection_views.views.inc
Implements hook_views_data()

File

views/field_collection_views_handler_field_host_entity_path.inc, line 10
Contains the host_entity_path field handler.

View source
class field_collection_views_handler_field_host_entity_path extends views_handler_field {
  function query() {

    // Do nothing, as this handler does not need to do anything to the query itself.
  }
  function option_definition() {
    $options = parent::option_definition();
    return $options;
  }
  function options_form(&$form, &$form_state) {
    parent::options_form($form, $form_state);
  }

  /**
   * Work out the host_entity_path
   */
  function render($values) {
    $host_entity_path = "";
    $item_id = $values->item_id;

    //debug($values);
    $field_collection_item = field_collection_item_load($item_id);
    $host_entity_id = $field_collection_item
      ->hostEntityId();
    if (!empty($host_entity_id)) {
      $host_entity_type = $field_collection_item
        ->hostEntityType();
      if (!empty($host_entity_type)) {
        $host_entitys = entity_load($host_entity_type, array(
          $host_entity_id,
        ));
        if (isset($host_entitys[$host_entity_id])) {
          $host_entity = $host_entitys[$host_entity_id];

          //debug($host_entity);

          //$host_entity = profile2_load($host_entity_id);
          $host_entity_uri = entity_uri($host_entity_type, $host_entity);
          $host_entity_path = isset($host_entity_uri['path']) ? $host_entity_uri['path'] : "";
        }
      }
    }
    return $host_entity_path;
  }

}

Members