Provides specific access control for the node entity type.
@Plugin(
id = "node_default",
module = "node",
label = @Translation("Node selection"),
entity_types = {"node"},
group = "default",
weight = 1
)
Expanded class hierarchy of NodeSelection
class NodeSelection extends SelectionBase {
/**
* Overrides SelectionBase::buildEntityQuery().
*/
public function buildEntityQuery($match = NULL, $match_operator = 'CONTAINS') {
$query = parent::buildEntityQuery($match, $match_operator);
// Adding the 'node_access' tag is sadly insufficient for nodes: core
// requires us to also know about the concept of 'published' and
// 'unpublished'. We need to do that as long as there are no access control
// modules in use on the site. As long as one access control module is there,
// it is supposed to handle this check.
if (!user_access('bypass node access') && !count(module_implements('node_grants'))) {
$query
->condition('status', NODE_PUBLISHED);
}
return $query;
}
}
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
NodeSelection:: |
public | function |
Overrides SelectionBase::buildEntityQuery(). Overrides SelectionBase:: |
|
SelectionBase:: |
protected | property | The entity object, or NULL | |
SelectionBase:: |
protected | property | The field array. | |
SelectionBase:: |
protected | property | The instance array. | |
SelectionBase:: |
public | function |
Implements SelectionInterface::countReferencableEntities(). Overrides SelectionInterface:: |
|
SelectionBase:: |
public | function |
Implements SelectionInterface::entityQueryAlter(). Overrides SelectionInterface:: |
3 |
SelectionBase:: |
public | function |
Implements SelectionInterface::getReferencableEntities(). Overrides SelectionInterface:: |
1 |
SelectionBase:: |
protected | function | Helper method: Passes a query to the alteration system again. | |
SelectionBase:: |
public static | function |
Implements SelectionInterface::settingsForm(). Overrides SelectionInterface:: |
2 |
SelectionBase:: |
public | function |
Implements SelectionInterface::validateAutocompleteInput(). Overrides SelectionInterface:: |
|
SelectionBase:: |
public | function |
Implements SelectionInterface::validateReferencableEntities(). Overrides SelectionInterface:: |
|
SelectionBase:: |
public | function | Constructs a SelectionBase object. |