namespace Drupal\diff\Form;
use Drupal\Component\Utility\Xss;
-use Drupal\Core\Entity\Query\QueryFactory;
use Drupal\Core\Entity\ContentEntityInterface;
use Drupal\Core\Entity\EntityTypeManagerInterface;
use Drupal\Core\Language\LanguageManagerInterface;
*/
protected $entityComparison;
- /**
- * The entity query factory service.
- *
- * @var \Drupal\Core\Entity\Query\QueryFactory
- */
- protected $entityQuery;
-
/**
* Constructs a RevisionOverviewForm object.
*
* The diff layout service.
* @param \Drupal\diff\DiffEntityComparison $entity_comparison
* The diff entity comparison service.
- * @param \Drupal\Core\Entity\Query\QueryFactory $entity_query
- * The entity query factory.
*/
- public function __construct(EntityTypeManagerInterface $entity_type_manager, AccountInterface $current_user, DateFormatter $date, RendererInterface $renderer, LanguageManagerInterface $language_manager, DiffLayoutManager $diff_layout_manager, DiffEntityComparison $entity_comparison, QueryFactory $entity_query) {
+ public function __construct(EntityTypeManagerInterface $entity_type_manager, AccountInterface $current_user, DateFormatter $date, RendererInterface $renderer, LanguageManagerInterface $language_manager, DiffLayoutManager $diff_layout_manager, DiffEntityComparison $entity_comparison) {
$this->entityTypeManager = $entity_type_manager;
$this->currentUser = $current_user;
$this->date = $date;
$this->config = $this->config('diff.settings');
$this->diffLayoutManager = $diff_layout_manager;
$this->entityComparison = $entity_comparison;
- $this->entityQuery = $entity_query;
}
/**
$container->get('renderer'),
$container->get('language_manager'),
$container->get('plugin.manager.diff.layout'),
- $container->get('diff.entity_comparison'),
- $container->get('entity.query')
+ $container->get('diff.entity_comparison')
);
}
$pagerLimit = $this->config->get('general_settings.revision_pager_limit');
- $query = $this->entityQuery->get('node')
+ $query = $this->entityTypeManager->getStorage('node')->getQuery()
->condition($node->getEntityType()->getKey('id'), $node->id())
->pager($pagerLimit)
->allRevisions()
->sort($node->getEntityType()->getKey('revision'), 'DESC')
+ // Access to the content has already been verified. Disable query-level
+ // access checking so that revisions for unpublished content still
+ //appear.
+ ->accessCheck(FALSE)
->execute();
$vids = array_keys($query);