Skip to content

#29438 feat(confluence): Show content included from other pages - #14

Open
marcreichel wants to merge 1 commit into
mainfrom
feat/#29438-include-macro
Open

marcreichel wants to merge 1 commit into
mainfrom
feat/#29438-include-macro

Conversation

@marcreichel

Copy link
Copy Markdown
Member

Summary

  • Content embedded with Confluence's "Include Page" macro (include) was dropped by OtherMacroRemover, so pages that include other pages showed up incomplete in AGP.
  • New IncludeMacroReplacer replaces each include with the included page's storage content. It looks the page up by title in the pages passed to its constructor (usually the result of findPagesInSpace()), so it makes no extra API calls. Register it first, so the other replacers also convert the included content (images, panels, …).
  • findIncludedPageIds() returns the IDs of the included pages. ConfluencePageContentDownloader::downloadPageContent() takes them as the new $additionalAttachmentPageIds argument and downloads their attachments into the including page's folder. Images in the included content then resolve like the page's own.
  • Only one level is resolved. Includes inside included content are still removed, so cycles can't happen. ri:space-key is ignored, since only same-space includes are in use today.

Part of artemeon/core-ng#29438

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants