function views_handler_field_term_link_edit::render

3.x views_handler_field_term_link_edit.inc views_handler_field_term_link_edit::render($values)

Render the field.

Parameters

$values: The values retrieved from the database.

Overrides views_handler_field::render

File

modules/taxonomy/views_handler_field_term_link_edit.inc, line 46
Definition of views_handler_field_term_link_edit.

Class

views_handler_field_term_link_edit
Field handler to present a term edit link.

Code

function render($values) {
  // Check there is an actual value, as on a relationship there may not be.
  if ($tid = $this->get_value($values, 'tid')) {
    // Mock a term object for taxonomy_term_edit_access(). Use machine name and
    // vid to ensure compatibility with vid based and machine name based
    // access checks. See http://drupal.org/node/995156
    $term = new stdClass();
    $term->vid = $values->{$this->aliases['vid']};
    $term->vocabulary_machine_name = $values->{$this->aliases['vocabulary_machine_name']};
    if (taxonomy_term_edit_access($term)) {
      $text = !empty($this->options['text']) ? $this->options['text'] : t('edit');
      $tid = $this->get_value($values, 'tid');
      return l($text, 'taxonomy/term/' . $tid . '/edit', array('query' => drupal_get_destination()));
    }
  }
}