function node_access_needs_rebuild

Toggles or reads the value of a flag for rebuilding the node access grants.

When the flag is set, a message is displayed to users with 'access administration pages' permission, pointing to the 'rebuild' confirm form. This can be used as an alternative to direct node_access_rebuild calls, allowing administrators to decide when they want to perform the actual (possibly time consuming) rebuild.

When unsure if the current user is an administrator, node_access_rebuild() should be used instead.

Parameters

$rebuild: (optional) The boolean value to be written.

Return value

The current value of the flag if no value was provided for $rebuild.

See also

node_access_rebuild()

Related topics

5 calls to node_access_needs_rebuild()
node_access_rebuild in drupal/core/modules/node/node.module
Rebuilds the node access database.
node_help in drupal/core/modules/node/node.module
Implements hook_help().
node_modules_disabled in drupal/core/modules/node/node.module
Implements hook_modules_disabled().
node_modules_enabled in drupal/core/modules/node/node.module
Implements hook_modules_enabled().
_node_access_rebuild_batch_finished in drupal/core/modules/node/node.module
Performs post-processing for node_access_rebuild().
1 string reference to 'node_access_needs_rebuild'
StateSystemUpgradePathTest::testSystemVariableUpgrade in drupal/core/modules/system/lib/Drupal/system/Tests/Upgrade/StateSystemUpgradePathTest.php
Tests upgrade of system variables to state system.

File

drupal/core/modules/node/node.module, line 2967
The core module that allows content to be submitted to the site.

Code

function node_access_needs_rebuild($rebuild = NULL) {
  if (!isset($rebuild)) {
    return Drupal::state()
      ->get('node.node_access_needs_rebuild') ?: FALSE;
  }
  elseif ($rebuild) {
    Drupal::state()
      ->set('node.node_access_needs_rebuild', TRUE);
  }
  else {
    Drupal::state()
      ->delete('node.node_access_needs_rebuild');
  }
}