Projet

Général

Profil

Paste
Télécharger (1019 octets) Statistiques
| Branche: | Révision:

root / drupal7 / sites / all / modules / views / modules / node / views_handler_field_node_revision_link_delete.inc @ 5d12d676

1
<?php
2

    
3
/**
4
 * @file
5
 * Definition of views_handler_field_node_revision_link_delete.
6
 */
7

    
8
/**
9
 * Field handler to present link to delete a node revision.
10
 *
11
 * @ingroup views_field_handlers
12
 */
13
class views_handler_field_node_revision_link_delete extends views_handler_field_node_revision_link {
14

    
15
  /**
16
   * {@inheritdoc}
17
   */
18
  public function access() {
19
    return user_access('delete revisions') || user_access('administer nodes');
20
  }
21

    
22
  /**
23
   * {@inheritdoc}
24
   */
25
  public function render_link($data, $values) {
26
    list($node, $vid) = $this->get_revision_entity($values, 'delete');
27
    if (!isset($vid)) {
28
      return;
29
    }
30

    
31
    // Current revision cannot be deleted.
32
    if ($node->vid == $vid) {
33
      return;
34
    }
35

    
36
    $this->options['alter']['make_link'] = TRUE;
37
    $this->options['alter']['path'] = 'node/' . $node->nid . "/revisions/$vid/delete";
38
    $this->options['alter']['query'] = drupal_get_destination();
39

    
40
    return !empty($this->options['text']) ? $this->options['text'] : t('delete');
41
  }
42

    
43
}