Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BUGFIX: Add content element wrapping to restricted nodes #3888

Merged

Conversation

mhsdesign
Copy link
Member

Previously opening a document where some nodes were not permitted to be edited was hard to navigate, as the content element wrapping was not rendered. Clicking into the elements showed no outline and navigation via the content tree was not possible. But more importantly inserting nodes into the content collection were likely misplaced until reloading as the Neos Ui does not understand the structure of the site.

Instead - as reading the nodes and its information is permitted and needed for rendering - we will always wrap content elements if editable or not.

To avoid having to boot the ckeditor for inline elements we instead evaluate the edit permission there and decide to hide the inline element wrapping. (Previously they would be rendered but not booted because the neos ui didnt had the outer content element wrapping)

What I did

How I did it

How to verify it

Previously opening a document where some nodes were not permitted to be edited was hard to navigate, as the content element wrapping was not rendered. Clicking into the elements showed no outline and navigation via the content tree was not possible.
But more importantly inserting nodes into the content collection were likely misplaced until reloading as the Neos Ui does not understand the structure of the site.

Instead - as reading the nodes and its information is permitted and needed for rendering - we will always wrap content elements if editable or not.

To avoid having to boot the ckeditor for inline elements we instead evaluate the edit permission there and decide to hide the inline element wrapping. (Previously they would be rendered but not booted because the neos ui didnt had the outer content element wrapping)
@github-actions github-actions bot added Bug Label to mark the change as bugfix 8.3 labels Nov 20, 2024
@@ -166,6 +170,6 @@ protected function needsMetadata(NodeInterface $node, $renderCurrentDocumentMeta
/** @var $contentContext ContentContext */
$contentContext = $node->getContext();

return ($contentContext->isInBackend() === true && ($renderCurrentDocumentMetadata === true || $this->nodeAuthorizationService->isGrantedToEditNode($node) === true));
return $contentContext->isInBackend() === true || $renderCurrentDocumentMetadata === true;
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

note that we removed this $renderCurrentDocumentMetadata thingy in Neos 9.0 already, it is very much a code smell but i left it untouched :)

Copy link
Member

@Sebobo Sebobo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks fine

@markusguenther markusguenther merged commit 0e6c71c into 8.3 Dec 6, 2024
9 checks passed
@markusguenther markusguenther deleted the bugfix/add-content-element-wrapping-to-restricted-nodes branch December 6, 2024 10:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
8.3 Bug Label to mark the change as bugfix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants