Clarify comments mentioning fallback and default saving behavior for langcodes

Created on 27 March 2013, almost 12 years ago
Updated 23 January 2025, 4 days ago

Follow up for confusing comments in #1658846-187: Add language support to node access grants and records β†’

Problem/Motivation

Comments are unclear.

Proposed resolution

Improve comments. Maybe by adding a general sentence explaining fallback and defaults that deal with langcodes. Maybe by adding a @see to link to the api documentation that explains the fallback behavior.

Remaining tasks

  • Discuss why those tests/statements/assertions are there.
  • Propose what the comments should say.
  • Implement resolution. See contributor task document for creating a patch: http://drupal.org/node/1424598

User interface changes

No UI changes.

API changes

No API changes.

Original report by @xjm

in #1658846-187: Add language support to node access grants and records β†’

+++ b/core/modules/node/lib/Drupal/node/Tests/NodeAccessLanguageTest.phpundefined
@@ -61,31 +47,196 @@ function testNodeAccess() {
+    // Creating a public node with langcode Hungarian, will be saved as
+    // the fallback in node access table.
...
+    // Creating a private node with langcode Hungarian, will be saved as
+    // the fallback in node access table.
...
+    // Creating a private node with no special langcode, like when no language
+    // module enabled.
...
+    // Creating a private node with langcode Hungarian, will be saved as
+    // the fallback in node access table.
...
+    // Creating a public node with langcode Hungarian, will be saved as
+    // the fallback in node access table.
...
+    // Creating a public node with no special langcode, like when no language
+    // module enabled.

These three comments are a little unclear (same for the similar comments in the other tests).

--
Also:

--- a/core/modules/node/lib/Drupal/node/NodeAccessController.php
+++ b/core/modules/node/lib/Drupal/node/NodeAccessController.phpundefined
@@ -109,11 +109,19 @@ protected function accessGrants(EntityInterface $node, $operation, $langcode = L
     // Check the database for potential access grants.
     $query = db_select('node_access');
     $query->addExpression('1');
+    // Only interested for granting in the current operation.
     $query->condition('grant_' . $operation, 1, '>=');

I don't quite understand this comment.

πŸ“Œ Task
Status

Postponed: needs info

Version

11.0 πŸ”₯

Component

node system

Created by

πŸ‡ΊπŸ‡ΈUnited States yesct

Live updates comments and jobs are added and updated live.
  • Needs tests

    The change is currently missing an automated test that fails when run with the original code, and succeeds when the bug has been fixed.

  • D8MI

    (Drupal 8 Multilingual Initiative) is the tag used by the multilingual initiative to mark core issues (and some contributed module issues). For versions other than Drupal 8, use the i18n (Internationalization) tag on issues which involve or affect multilingual / multinational support. That is preferred over Translation.

Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • πŸ‡ΊπŸ‡ΈUnited States smustgrave

    Thank you for creating this issue to improve Drupal.

    We are working to decide if this task is still relevant to a currently supported version of Drupal. There hasn't been any discussion here for over 8 years which suggests that this has either been implemented or is no longer relevant. Your thoughts on this will allow a decision to be made.

    Since we need more information to move forward with this issue, the status is now Postponed (maintainer needs more info). If we don't receive additional information to help with the issue, it may be closed after three months.

Production build 0.71.5 2024