Overrides Link::render_link
function render_link($data, $values) {
$uid = $values->{$this->aliases['uid']};
// Build a pseudo account object to be able to check the access.
$account = entity_create('user', array());
$account->uid = $uid;
if ($uid && user_cancel_access($account)) {
$this->options['alter']['make_link'] = TRUE;
$text = !empty($this->options['text']) ? $this->options['text'] : t('cancel');
$this->options['alter']['path'] = "user/{$uid}/cancel";
$this->options['alter']['query'] = drupal_get_destination();
return $text;
}
}