diff --git a/core/modules/aggregator/lib/Drupal/aggregator/Plugin/views/field/Category.php b/core/modules/aggregator/lib/Drupal/aggregator/Plugin/views/field/Category.php index 8291422..9df7f10 100644 --- a/core/modules/aggregator/lib/Drupal/aggregator/Plugin/views/field/Category.php +++ b/core/modules/aggregator/lib/Drupal/aggregator/Plugin/views/field/Category.php @@ -9,6 +9,7 @@ use Drupal\views\Plugin\views\display\DisplayPluginBase; use Drupal\views\Plugin\views\field\FieldPluginBase; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Drupal\Component\Annotation\PluginID; @@ -64,7 +65,7 @@ public function buildOptionsForm(&$form, &$form_state) { * @return data * Returns string for the link text. */ - protected function render_link($data, $values) { + protected function render_link($data, ResultRow $values) { $cid = $this->getValue($values, 'cid'); if (!empty($this->options['link_to_category']) && !empty($cid) && $data !== NULL && $data !== '') { $this->options['alter']['make_link'] = TRUE; diff --git a/core/modules/aggregator/lib/Drupal/aggregator/Plugin/views/field/TitleLink.php b/core/modules/aggregator/lib/Drupal/aggregator/Plugin/views/field/TitleLink.php index 0a8d2ac..dbcf781 100644 --- a/core/modules/aggregator/lib/Drupal/aggregator/Plugin/views/field/TitleLink.php +++ b/core/modules/aggregator/lib/Drupal/aggregator/Plugin/views/field/TitleLink.php @@ -9,6 +9,7 @@ use Drupal\views\Plugin\views\display\DisplayPluginBase; use Drupal\views\Plugin\views\field\FieldPluginBase; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Drupal\Component\Annotation\PluginID; @@ -73,7 +74,7 @@ public function render($values) { * @return data * Returns string for the link text. */ - protected function render_link($data, $values) { + protected function render_link($data, ResultRow $values) { $link = $this->getValue($values, 'link'); if (!empty($this->options['display_as_link'])) { $this->options['alter']['make_link'] = TRUE; diff --git a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Comment.php b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Comment.php index 4f2275e..45e47c4 100644 --- a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Comment.php +++ b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Comment.php @@ -7,6 +7,7 @@ namespace Drupal\comment\Plugin\views\field; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Drupal\views\Plugin\views\display\DisplayPluginBase; use Drupal\views\Plugin\views\field\FieldPluginBase; @@ -61,7 +62,7 @@ public function buildOptionsForm(&$form, &$form_state) { parent::buildOptionsForm($form, $form_state); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { if (!empty($this->options['link_to_comment'])) { $this->options['alter']['make_link'] = TRUE; $nid = $this->getValue($values, 'nid'); diff --git a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Link.php b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Link.php index 202a224..2eb4db5 100644 --- a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Link.php +++ b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Link.php @@ -9,6 +9,7 @@ use Drupal\views\Plugin\views\field\FieldPluginBase; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Base field handler to present a link. @@ -47,7 +48,7 @@ public function render($values) { return $this->render_link($comment, $values); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { $text = !empty($this->options['text']) ? $this->options['text'] : t('view'); $comment = $data; $nid = $comment->nid; diff --git a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkApprove.php b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkApprove.php index 49bcb58..118d502 100644 --- a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkApprove.php +++ b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkApprove.php @@ -7,6 +7,7 @@ namespace Drupal\comment\Plugin\views\field; +use Drupal\views\ResultRow; use Drupal\Component\Annotation\PluginID; /** @@ -23,7 +24,7 @@ public function access() { return user_access('administer comments'); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { $status = $this->getValue($values, 'status'); // Don't show an approve link on published nodes. diff --git a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkDelete.php b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkDelete.php index 23c96de..7c6fa92 100644 --- a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkDelete.php +++ b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkDelete.php @@ -8,6 +8,7 @@ namespace Drupal\comment\Plugin\views\field; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Field handler to present a link to delete a comment. @@ -23,7 +24,7 @@ public function access() { return user_access('administer comments'); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { $text = !empty($this->options['text']) ? $this->options['text'] : t('delete'); $cid = $this->getValue($values, 'cid'); diff --git a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkEdit.php b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkEdit.php index 7f1a507..6e87c1d 100644 --- a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkEdit.php +++ b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkEdit.php @@ -8,6 +8,7 @@ namespace Drupal\comment\Plugin\views\field; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Field handler to present a link to edit a comment. @@ -36,7 +37,7 @@ public function buildOptionsForm(&$form, &$form_state) { ); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { parent::render_link($data, $values); // Ensure user has access to edit this comment. $comment = $this->getValue($values); diff --git a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkReply.php b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkReply.php index 112462f..fa57277 100644 --- a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkReply.php +++ b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/LinkReply.php @@ -8,6 +8,7 @@ namespace Drupal\comment\Plugin\views\field; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Field handler to present a link to reply to a comment. @@ -23,7 +24,7 @@ public function access() { return user_access('post comments'); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { $text = !empty($this->options['text']) ? $this->options['text'] : t('reply'); $nid = $this->getValue($values, 'nid'); $cid = $this->getValue($values, 'cid'); diff --git a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/NodeNewComments.php b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/NodeNewComments.php index 8f0e0ec..07b7b00 100644 --- a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/NodeNewComments.php +++ b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/NodeNewComments.php @@ -11,6 +11,7 @@ use Drupal\Core\Database\Connection; use Drupal\views\Plugin\views\field\Numeric; use Drupal\views\Plugin\views\display\DisplayPluginBase; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Symfony\Component\DependencyInjection\ContainerInterface; @@ -127,7 +128,7 @@ public function preRender(&$values) { } } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { if (!empty($this->options['link_to_comment']) && $data !== NULL && $data !== '') { $node = entity_create('node', array( 'nid' => $this->getValue($values, 'nid'), diff --git a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Username.php b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Username.php index 43c3171..4bad129 100644 --- a/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Username.php +++ b/core/modules/comment/lib/Drupal/comment/Plugin/views/field/Username.php @@ -7,6 +7,7 @@ namespace Drupal\comment\Plugin\views\field; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Drupal\views\Plugin\views\display\DisplayPluginBase; use Drupal\views\Plugin\views\field\FieldPluginBase; @@ -48,7 +49,7 @@ public function buildOptionsForm(&$form, &$form_state) { parent::buildOptionsForm($form, $form_state); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { if (!empty($this->options['link_to_user'])) { $account = entity_create('user', array()); $account->uid = $this->getValue($values, 'uid'); diff --git a/core/modules/contact/lib/Drupal/contact/Plugin/views/field/ContactLink.php b/core/modules/contact/lib/Drupal/contact/Plugin/views/field/ContactLink.php index 475a72a..c8a3fb5 100644 --- a/core/modules/contact/lib/Drupal/contact/Plugin/views/field/ContactLink.php +++ b/core/modules/contact/lib/Drupal/contact/Plugin/views/field/ContactLink.php @@ -10,6 +10,7 @@ use Drupal\Core\Entity\EntityInterface; use Drupal\Component\Annotation\PluginID; use Drupal\user\Plugin\views\field\Link; +use Drupal\views\ResultRow; /** * Defines a field that links to the user contact page, if access is permitted. @@ -42,7 +43,7 @@ public function access() { /** * {@inheritdoc} */ - public function render_link(EntityInterface $entity, \stdClass $values) { + public function render_link(EntityInterface $entity, ResultRow $values) { if (empty($entity)) { return; diff --git a/core/modules/content_translation/lib/Drupal/content_translation/Plugin/views/field/TranslationLink.php b/core/modules/content_translation/lib/Drupal/content_translation/Plugin/views/field/TranslationLink.php index 6a9d5a7..b80916e 100644 --- a/core/modules/content_translation/lib/Drupal/content_translation/Plugin/views/field/TranslationLink.php +++ b/core/modules/content_translation/lib/Drupal/content_translation/Plugin/views/field/TranslationLink.php @@ -10,6 +10,7 @@ use Drupal\views\Plugin\views\field\FieldPluginBase; use Drupal\Component\Annotation\PluginID; use Drupal\Core\Entity\EntityInterface; +use Drupal\views\ResultRow; /** * Provides a translation link for an entity. @@ -59,7 +60,7 @@ public function render($values) { * @return string * The acutal rendered text (without the link) of this field. */ - public function render_link(EntityInterface $entity, \stdClass $values) { + public function render_link(EntityInterface $entity, ResultRow $values) { if (content_translation_translate_access($entity)) { $text = !empty($this->options['text']) ? $this->options['text'] : t('translate'); diff --git a/core/modules/file/lib/Drupal/file/Plugin/views/field/File.php b/core/modules/file/lib/Drupal/file/Plugin/views/field/File.php index 232fa71..c1d2493 100644 --- a/core/modules/file/lib/Drupal/file/Plugin/views/field/File.php +++ b/core/modules/file/lib/Drupal/file/Plugin/views/field/File.php @@ -7,6 +7,7 @@ namespace Drupal\file\Plugin\views\field; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Drupal\views\Plugin\views\display\DisplayPluginBase; use Drupal\Component\Annotation\PluginID; @@ -56,7 +57,7 @@ public function buildOptionsForm(&$form, &$form_state) { * * Data should be made XSS safe prior to calling this function. */ - function render_link($data, $values) { + function render_link($data, ResultRow $values) { if (!empty($this->options['link_to_file']) && $data !== NULL && $data !== '') { $this->options['alter']['make_link'] = TRUE; $this->options['alter']['path'] = file_create_url($this->getValue($values, 'uri')); diff --git a/core/modules/node/lib/Drupal/node/Plugin/views/field/Link.php b/core/modules/node/lib/Drupal/node/Plugin/views/field/Link.php index a5ad276..ad3a428 100644 --- a/core/modules/node/lib/Drupal/node/Plugin/views/field/Link.php +++ b/core/modules/node/lib/Drupal/node/Plugin/views/field/Link.php @@ -9,6 +9,7 @@ use Drupal\views\Plugin\views\field\FieldPluginBase; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Field handler to present a link to the node. @@ -51,7 +52,7 @@ public function render($values) { } } - function render_link($node, $values) { + function render_link($node, ResultRow $values) { if (node_access('view', $node)) { $this->options['alter']['make_link'] = TRUE; $this->options['alter']['path'] = "node/$node->nid"; diff --git a/core/modules/node/lib/Drupal/node/Plugin/views/field/LinkDelete.php b/core/modules/node/lib/Drupal/node/Plugin/views/field/LinkDelete.php index 51cc3fe..2ad8cf9 100644 --- a/core/modules/node/lib/Drupal/node/Plugin/views/field/LinkDelete.php +++ b/core/modules/node/lib/Drupal/node/Plugin/views/field/LinkDelete.php @@ -9,6 +9,7 @@ use Drupal\node\Plugin\views\field\Link; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Field handler to present a link to delete a node. @@ -22,7 +23,7 @@ class LinkDelete extends Link { /** * Renders the link. */ - function render_link($node, $values) { + function render_link($node, ResultRow $values) { // Ensure user has access to delete this node. if (!node_access('delete', $node)) { return; diff --git a/core/modules/node/lib/Drupal/node/Plugin/views/field/LinkEdit.php b/core/modules/node/lib/Drupal/node/Plugin/views/field/LinkEdit.php index 2a69d13..631eeb3 100644 --- a/core/modules/node/lib/Drupal/node/Plugin/views/field/LinkEdit.php +++ b/core/modules/node/lib/Drupal/node/Plugin/views/field/LinkEdit.php @@ -9,6 +9,7 @@ use Drupal\node\Plugin\views\field\Link; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Field handler to present a link node edit. @@ -22,7 +23,7 @@ class LinkEdit extends Link { /** * Renders the link. */ - function render_link($node, $values) { + function render_link($node, ResultRow $values) { // Ensure user has access to edit this node. if (!node_access('update', $node)) { return; diff --git a/core/modules/node/lib/Drupal/node/Plugin/views/field/Node.php b/core/modules/node/lib/Drupal/node/Plugin/views/field/Node.php index 0851b25..9419999 100644 --- a/core/modules/node/lib/Drupal/node/Plugin/views/field/Node.php +++ b/core/modules/node/lib/Drupal/node/Plugin/views/field/Node.php @@ -7,6 +7,7 @@ namespace Drupal\node\Plugin\views\field; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Drupal\views\Plugin\views\display\DisplayPluginBase; use Drupal\views\Plugin\views\field\FieldPluginBase; @@ -63,7 +64,7 @@ public function buildOptionsForm(&$form, &$form_state) { * * Data should be made XSS safe prior to calling this function. */ - function render_link($data, $values) { + function render_link($data, ResultRow $values) { if (!empty($this->options['link_to_node']) && !empty($this->additional_fields['nid'])) { if ($data !== NULL && $data !== '') { $this->options['alter']['make_link'] = TRUE; diff --git a/core/modules/node/lib/Drupal/node/Plugin/views/field/Revision.php b/core/modules/node/lib/Drupal/node/Plugin/views/field/Revision.php index 410b2e0..d1a574a 100644 --- a/core/modules/node/lib/Drupal/node/Plugin/views/field/Revision.php +++ b/core/modules/node/lib/Drupal/node/Plugin/views/field/Revision.php @@ -7,6 +7,7 @@ namespace Drupal\node\Plugin\views\field; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Drupal\views\Plugin\views\display\DisplayPluginBase; use Drupal\node\Plugin\views\field\Node; @@ -59,7 +60,7 @@ public function buildOptionsForm(&$form, &$form_state) { * * Data should be made XSS safe prior to calling this function. */ - function render_link($data, $values) { + function render_link($data, ResultRow $values) { if (!empty($this->options['link_to_node_revision']) && $data !== NULL && $data !== '') { $this->options['alter']['make_link'] = TRUE; $nid = $this->getValue($values, 'nid'); diff --git a/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLink.php b/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLink.php index 5df4452..8076861 100644 --- a/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLink.php +++ b/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLink.php @@ -9,6 +9,7 @@ use Drupal\node\Plugin\views\field\Link; use Drupal\views\Plugin\views\display\DisplayPluginBase; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Drupal\Component\Annotation\PluginID; @@ -34,7 +35,7 @@ public function access() { return user_access('view revisions') || user_access('administer nodes'); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { list($node, $vid) = $this->get_revision_entity($values, 'view'); if (!isset($vid)) { return; diff --git a/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLinkDelete.php b/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLinkDelete.php index 2ffb49c..f46345e 100644 --- a/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLinkDelete.php +++ b/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLinkDelete.php @@ -9,6 +9,7 @@ use Drupal\node\Plugin\views\field\RevisionLink; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Field handler to present link to delete a node revision. @@ -23,7 +24,7 @@ public function access() { return user_access('delete revisions') || user_access('administer nodes'); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { list($node, $vid) = $this->get_revision_entity($values, 'delete'); if (!isset($vid)) { return; diff --git a/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLinkRevert.php b/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLinkRevert.php index 8f9671c..19451b6 100644 --- a/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLinkRevert.php +++ b/core/modules/node/lib/Drupal/node/Plugin/views/field/RevisionLinkRevert.php @@ -9,6 +9,7 @@ use Drupal\node\Plugin\views\field\RevisionLink; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Field handler to present a link to revert a node to a revision. @@ -23,7 +24,7 @@ public function access() { return user_access('revert revisions') || user_access('administer nodes'); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { list($node, $vid) = $this->get_revision_entity($values, 'update'); if (!isset($vid)) { return; diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/field/Taxonomy.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/field/Taxonomy.php index 65106d0..bcf2127 100644 --- a/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/field/Taxonomy.php +++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Plugin/views/field/Taxonomy.php @@ -9,6 +9,7 @@ use Drupal\views\Plugin\views\field\FieldPluginBase; use Drupal\views\Plugin\views\display\DisplayPluginBase; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Drupal\Component\Annotation\PluginID; @@ -68,7 +69,7 @@ public function buildOptionsForm(&$form, &$form_state) { * * Data should be made XSS safe prior to calling this function. */ - function render_link($data, $values) { + function render_link($data, ResultRow $values) { $tid = $this->getValue($values, 'tid'); if (!empty($this->options['link_to_taxonomy']) && !empty($tid) && $data !== NULL && $data !== '') { $term = entity_create('taxonomy_term', array( diff --git a/core/modules/user/lib/Drupal/user/Plugin/views/field/Language.php b/core/modules/user/lib/Drupal/user/Plugin/views/field/Language.php index 1059263..c7cfb0a 100644 --- a/core/modules/user/lib/Drupal/user/Plugin/views/field/Language.php +++ b/core/modules/user/lib/Drupal/user/Plugin/views/field/Language.php @@ -8,6 +8,7 @@ namespace Drupal\user\Plugin\views\field; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Views field handler for user language. @@ -18,7 +19,7 @@ */ class Language extends User { - function render_link($data, $values) { + function render_link($data, ResultRow $values) { $uid = $this->getValue($values, 'uid'); if (!empty($this->options['link_to_user'])) { $uid = $this->getValue($values, 'uid'); diff --git a/core/modules/user/lib/Drupal/user/Plugin/views/field/Link.php b/core/modules/user/lib/Drupal/user/Plugin/views/field/Link.php index a7bdb24..1a0d89e 100644 --- a/core/modules/user/lib/Drupal/user/Plugin/views/field/Link.php +++ b/core/modules/user/lib/Drupal/user/Plugin/views/field/Link.php @@ -9,6 +9,7 @@ use Drupal\views\Plugin\views\field\FieldPluginBase; use Drupal\views\Plugin\views\display\DisplayPluginBase; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; use Drupal\Core\Entity\EntityInterface; use Drupal\Component\Annotation\PluginID; @@ -73,7 +74,7 @@ public function render($values) { * @return string * The acutal rendered text (without the link) of this field. */ - public function render_link(EntityInterface $entity, \stdClass $values) { + public function render_link(EntityInterface $entity, ResultRow $values) { $text = !empty($this->options['text']) ? $this->options['text'] : t('View'); $this->options['alter']['make_link'] = TRUE; diff --git a/core/modules/user/lib/Drupal/user/Plugin/views/field/LinkCancel.php b/core/modules/user/lib/Drupal/user/Plugin/views/field/LinkCancel.php index e2420a1..64a216e 100644 --- a/core/modules/user/lib/Drupal/user/Plugin/views/field/LinkCancel.php +++ b/core/modules/user/lib/Drupal/user/Plugin/views/field/LinkCancel.php @@ -9,6 +9,7 @@ use Drupal\Core\Entity\EntityInterface; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Field handler to present a link to user cancel. @@ -22,7 +23,7 @@ class LinkCancel extends Link { /** * Overrides \Drupal\user\Plugin\views\field\Link::render_link(). */ - public function render_link(EntityInterface $entity, \stdClass $values) { + public function render_link(EntityInterface $entity, ResultRow $values) { if ($entity && $entity->access('delete')) { $this->options['alter']['make_link'] = TRUE; diff --git a/core/modules/user/lib/Drupal/user/Plugin/views/field/LinkEdit.php b/core/modules/user/lib/Drupal/user/Plugin/views/field/LinkEdit.php index 8954610..2177d95 100644 --- a/core/modules/user/lib/Drupal/user/Plugin/views/field/LinkEdit.php +++ b/core/modules/user/lib/Drupal/user/Plugin/views/field/LinkEdit.php @@ -9,6 +9,7 @@ use Drupal\Core\Entity\EntityInterface; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** * Field handler to present a link to user edit. @@ -22,7 +23,7 @@ class LinkEdit extends Link { /** * Overrides \Drupal\user\Plugin\views\field\Link::render_link(). */ - public function render_link(EntityInterface $entity, \stdClass $values) { + public function render_link(EntityInterface $entity, ResultRow $values) { if ($entity && $entity->access('update')) { $this->options['alter']['make_link'] = TRUE; diff --git a/core/modules/user/lib/Drupal/user/Plugin/views/field/Mail.php b/core/modules/user/lib/Drupal/user/Plugin/views/field/Mail.php index 5598b18..f053592 100644 --- a/core/modules/user/lib/Drupal/user/Plugin/views/field/Mail.php +++ b/core/modules/user/lib/Drupal/user/Plugin/views/field/Mail.php @@ -8,6 +8,7 @@ namespace Drupal\user\Plugin\views\field; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; /** /** @@ -39,7 +40,7 @@ public function buildOptionsForm(&$form, &$form_state) { ); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { parent::render_link($data, $values); if ($this->options['link_to_user'] == 'mailto') { diff --git a/core/modules/user/lib/Drupal/user/Plugin/views/field/Name.php b/core/modules/user/lib/Drupal/user/Plugin/views/field/Name.php index 564127a..f754edc 100644 --- a/core/modules/user/lib/Drupal/user/Plugin/views/field/Name.php +++ b/core/modules/user/lib/Drupal/user/Plugin/views/field/Name.php @@ -10,6 +10,7 @@ use Drupal\user\Plugin\views\field\User; use Drupal\views\Plugin\views\display\DisplayPluginBase; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; /** @@ -74,7 +75,7 @@ public function buildOptionsForm(&$form, &$form_state) { ); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { $account = entity_create('user', array()); $account->uid = $this->getValue($values, 'uid'); $account->name = $this->getValue($values); diff --git a/core/modules/user/lib/Drupal/user/Plugin/views/field/User.php b/core/modules/user/lib/Drupal/user/Plugin/views/field/User.php index e6515a6..60fdf91 100644 --- a/core/modules/user/lib/Drupal/user/Plugin/views/field/User.php +++ b/core/modules/user/lib/Drupal/user/Plugin/views/field/User.php @@ -10,6 +10,7 @@ use Drupal\views\Plugin\views\field\FieldPluginBase; use Drupal\views\Plugin\views\display\DisplayPluginBase; use Drupal\Component\Annotation\PluginID; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; /** @@ -51,7 +52,7 @@ public function buildOptionsForm(&$form, &$form_state) { parent::buildOptionsForm($form, $form_state); } - function render_link($data, $values) { + function render_link($data, ResultRow $values) { if (!empty($this->options['link_to_user']) && user_access('access user profiles') && ($entity = $this->getEntity($values)) && $data !== NULL && $data !== '') { $this->options['alter']['make_link'] = TRUE; $uri = $entity->uri(); diff --git a/core/modules/views/lib/Drupal/views/Plugin/views/field/FieldPluginBase.php b/core/modules/views/lib/Drupal/views/Plugin/views/field/FieldPluginBase.php index 19d2d2b..30f7167 100644 --- a/core/modules/views/lib/Drupal/views/Plugin/views/field/FieldPluginBase.php +++ b/core/modules/views/lib/Drupal/views/Plugin/views/field/FieldPluginBase.php @@ -9,6 +9,7 @@ use Drupal\views\Plugin\views\HandlerBase; use Drupal\views\Plugin\views\display\DisplayPluginBase; +use Drupal\views\ResultRow; use Drupal\views\ViewExecutable; /** @@ -361,13 +362,13 @@ public function elementWrapperClasses($row_index = NULL) { /** * Gets the entity matching the current row and relationship. * - * @param \stdClass $values + * @param \Drupal\views\ResultRow $values * An object containing all retrieved values. * * @return \Drupal\Core\Entity\EntityInterface * Returns the entity matching the values. */ - public function getEntity(\stdClass $values) { + public function getEntity(ResultRow $values) { $relationship_id = $this->options['relationship']; if ($relationship_id == 'none') { return $values->_entity; diff --git a/core/modules/views/lib/Drupal/views/Plugin/views/query/Sql.php b/core/modules/views/lib/Drupal/views/Plugin/views/query/Sql.php index 8162b2c..4a6dcf3 100644 --- a/core/modules/views/lib/Drupal/views/Plugin/views/query/Sql.php +++ b/core/modules/views/lib/Drupal/views/Plugin/views/query/Sql.php @@ -1424,11 +1424,9 @@ function execute(ViewExecutable $view) { } $result = $query->execute(); + $result->setFetchMode(\PDO::FETCH_CLASS, 'Drupal\views\ResultRow'); - $view->result = array(); - foreach ($result as $item) { - $view->result[] = $item; - } + $view->result = iterator_to_array($result); $view->pager->postExecute($view->result); $view->pager->updatePageInfo(); @@ -1519,12 +1517,6 @@ function loadEntities(&$results) { return; } - // Initialize the entity placeholders in $results. - foreach ($results as $index => $result) { - $results[$index]->_entity = FALSE; - $results[$index]->_relationship_entities = array(); - } - // Assemble a list of entities to load. $ids_by_table = array(); foreach ($entity_tables as $table_alias => $table) { @@ -1562,7 +1554,12 @@ function loadEntities(&$results) { } foreach ($ids as $index => $id) { - $entity = isset($entities[$id]) ? $entities[$id] : FALSE; + if (isset($entities[$id])) { + $entity = $entities[$id]; + } + else { + $entity = NULL; + } if ($relationship_id == 'none') { $results[$index]->_entity = $entity; diff --git a/core/modules/views/lib/Drupal/views/ResultRow.php b/core/modules/views/lib/Drupal/views/ResultRow.php new file mode 100644 index 0000000..b704d17 --- /dev/null +++ b/core/modules/views/lib/Drupal/views/ResultRow.php @@ -0,0 +1,29 @@ +views_test_data_name = 'John'; $expected['Job: Singer']['rows']['Age: 25']['rows'][0]->views_test_data_job = 'Singer'; $expected['Job: Singer']['rows']['Age: 25']['rows'][0]->views_test_data_age = '25'; $expected['Job: Singer']['rows']['Age: 25']['rows'][0]->views_test_data_id = '1'; $expected['Job: Singer']['rows']['Age: 27'] = array(); $expected['Job: Singer']['rows']['Age: 27']['group'] = 'Age: 27'; - $expected['Job: Singer']['rows']['Age: 27']['rows'][1] = new \stdClass(); + $expected['Job: Singer']['rows']['Age: 27']['rows'][1] = new ResultRow(); $expected['Job: Singer']['rows']['Age: 27']['rows'][1]->views_test_data_name = 'George'; $expected['Job: Singer']['rows']['Age: 27']['rows'][1]->views_test_data_job = 'Singer'; $expected['Job: Singer']['rows']['Age: 27']['rows'][1]->views_test_data_age = '27'; @@ -165,7 +166,7 @@ function _testGrouping($stripped = FALSE) { $expected['Job: Drummer']['group'] = 'Job: Drummer'; $expected['Job: Drummer']['rows']['Age: 28'] = array(); $expected['Job: Drummer']['rows']['Age: 28']['group'] = 'Age: 28'; - $expected['Job: Drummer']['rows']['Age: 28']['rows'][2] = new \stdClass(); + $expected['Job: Drummer']['rows']['Age: 28']['rows'][2] = new ResultRow(); $expected['Job: Drummer']['rows']['Age: 28']['rows'][2]->views_test_data_name = 'Ringo'; $expected['Job: Drummer']['rows']['Age: 28']['rows'][2]->views_test_data_job = 'Drummer'; $expected['Job: Drummer']['rows']['Age: 28']['rows'][2]->views_test_data_age = '28';