diff --git a/content_access.module b/content_access.module index 2301d6b..a414200 100644 --- a/content_access.module +++ b/content_access.module @@ -757,7 +757,8 @@ function content_access_mass_update($types) { foreach ($records as $node) { $node = Node::load($node->nid); - \Drupal::entityTypeManager()->getAccessControlHandler('node')->writeGrants($node); + $grants = \Drupal::entityTypeManager()->getAccessControlHandler('node')->acquireGrants($node); + \Drupal::service('node.grant_storage')->write($node, $grants); } foreach (Cache::getBins() as $service_id => $cache_backend) { diff --git a/src/Form/ContentAccessPageForm.php b/src/Form/ContentAccessPageForm.php index bb13c6d..9b51fbc 100644 --- a/src/Form/ContentAccessPageForm.php +++ b/src/Form/ContentAccessPageForm.php @@ -126,7 +126,8 @@ class ContentAccessPageForm extends FormBase { } // Apply new settings. - \Drupal::entityTypeManager()->getAccessControlHandler('node')->writeGrants($node); + $grants = \Drupal::entityTypeManager()->getAccessControlHandler('node')->acquireGrants($node); + \Drupal::service('node.grant_storage')->write($node, $grants); \Drupal::moduleHandler()->invokeAll('per_node', $settings); foreach (Cache::getBins() as $service_id => $cache_backend) { @@ -145,7 +146,9 @@ class ContentAccessPageForm extends FormBase { function pageResetSubmit(array &$form, FormStateInterface $form_state) { $storage = $form_state->getStorage(); content_access_delete_per_node_settings($storage['node']); - \Drupal::entityTypeManager()->getAccessControlHandler('node')->writeGrants($storage['node']); + $node = $storage['node']; + $grants = \Drupal::entityTypeManager()->getAccessControlHandler('node')->acquireGrants($node); + \Drupal::service('node.grant_storage')->write($node, $grants); $this->messenger()->addMessage(t('The permissions have been reset to the content type defaults.')); }