public function QueryTrait::prepare in Multiversion 8
Same name and namespace in other branches
- 8.2 src/Entity/Query/QueryTrait.php \Drupal\multiversion\Entity\Query\QueryTrait::prepare()
File
- src/Entity/Query/QueryTrait.php, line 50
Class
- QueryTrait
- @property $entityTypeId
@property $entityTypeManager
@property $condition
Namespace
Drupal\multiversion\Entity\Query
Code
public function prepare() {
parent::prepare();
$entity_type = $this->entityTypeManager
->getDefinition($this->entityTypeId);
$enabled = \Drupal::state()
->get('multiversion.migration_done.' . $this
->getEntityTypeId(), FALSE);
if (is_subclass_of($entity_type
->getStorageClass(), ContentEntityStorageInterface::class) && $enabled) {
$revision_key = $entity_type
->getKey('revision');
$revision_query = FALSE;
foreach ($this->condition
->conditions() as $condition) {
if ($condition['field'] == $revision_key) {
$revision_query = TRUE;
}
}
if ($workspace_id = $this
->getWorkspaceId()) {
$this
->condition('workspace', $workspace_id);
}
if (!$revision_query) {
$this
->condition('_deleted', (int) $this->isDeleted);
}
}
return $this;
}