You are here

public function fasttoggle_field_views_handler_field_node_link::render_link in Fasttoggle 7

Overrides views_handler_field_node_link::render_link

1 call to fasttoggle_field_views_handler_field_node_link::render_link()
fasttoggle_field_views_handler_field_node_link::render in module/fasttoggle_field/views/fasttoggle_field_views_handler_field_node_link.inc
Render the field.

File

module/fasttoggle_field/views/fasttoggle_field_views_handler_field_node_link.inc, line 52

Class

fasttoggle_field_views_handler_field_node_link
Fasttoggle field views handler field node link.

Code

public function render_link($node, $values) {
  drupal_load('module', 'fasttoggle');
  if (!node_access('update', $node)) {
    return '';
  }

  // Now we set the status to the actual value so that we get the
  // correct labels.
  $options = fasttoggle_get_allowed_links('node', $node);
  $key = $this->fasttoggleKey;
  if (!empty($options['status'][$key])) {
    $link_info = fasttoggle($options['status'][$key]['label'][intval($node->{$key})], 'node/' . $node->nid . '/toggle/status/' . $key, FASTTOGGLE_FORMAT_LINK_ARRAY, 'status_' . $key . '_' . $node->nid, 'fasttoggle-status-node-' . $node->nid . '-status-' . $key, 'fasttoggle-status-node-status-' . $key . '-' . $node->{$key});
    $this->options['alter']['make_link'] = TRUE;
    $this->options['alter']['path'] = $link_info['href'];
    $this->options['alter']['text'] = $link_info['title'];
    $this->options['alter']['query'] = $link_info['query'];
    $this->options['alter']['link_class'] = implode(' ', $link_info['attributes']['class']);
    $this->options['alter']['title'] = $link_info['attributes']['title'];
    $text = $options['status'][$key]['label'][intval($node->{$key})];
    return $text;
  }
}