Skip to content

Fix info window content rendering on TYPO3 14 - #378

Closed
morja wants to merge 1 commit into
jweiland-net:mainfrom
morja:bugfix/info-window-content-typo3-14
Closed

morja wants to merge 1 commit into
jweiland-net:mainfrom
morja:bugfix/info-window-content-typo3-14

Conversation

@morja

@morja morja commented Sep 10, 2026

Copy link
Copy Markdown

Problem

On TYPO3 14 with maps2 13.1.0, clicking a marker does not render the info window.

  1. The site setting maps2.infoWindowContent.templatePath defaults to
    EXT:maps2/Resources/Private/Templates/InfoWindowContent.html. Since the
    templates were renamed, only InfoWindowContent.fluid.html exists, so the view
    cannot find its template unless a site overrides the setting.
  2. Partials/InfoWindowContent.fluid.html renders the editorial content with
    f:transform.html. Resolving t3:// links there goes through LinkFactory,
    which reads $GLOBALS['TYPO3_REQUEST']. That global is not set while
    GetInfoWindowContentMiddleware renders the view, so POIs whose content contains
    a link fail.

Fix

  • Point the default template setting to InfoWindowContent.fluid.html.
  • Render the content with f:format.html. It takes the request from the Fluid
    rendering context, which InfoWindowContentService::createView() already passes,
    and parses the content with lib.parseFunc_RTE like other RTE output.
  • Update the documented default path and add a ChangeLog entry.
  • Add a unit test that the default template in the Site Set exists. It fails
    without the path fix.

Testing

  • The new unit test passes with the fix and fails without it.
  • The same change is applied as a Composer patch in a TYPO3 14.3 project that
    uses maps2 13.1.0.

🤖 Generated with Claude Code

The site setting maps2.infoWindowContent.templatePath defaulted to
Templates/InfoWindowContent.html, which no longer exists since the
templates were renamed to *.fluid.html. Info windows failed to render
unless a site overrode the path.

The partial rendered editorial content with f:transform.html. Its link
resolution reads $GLOBALS['TYPO3_REQUEST'], which is not set while
GetInfoWindowContentMiddleware renders the view. f:format.html takes
the request from the rendering context instead.
@morja
morja force-pushed the bugfix/info-window-content-typo3-14 branch from a13e051 to fed3d06 Compare September 10, 2026 09:54
@sfroemkenjw

Copy link
Copy Markdown
Contributor

Hi @morja

thank you for providing a PR for this. Using f:format.html will parse content through lib.parseFunc_RTE which results into a complete different rendering and may break the rendering of a lot of sites out there. I temporary set TYPO3_REQUEST now and left a comment in middleware to check for f:format.html in future (next major release).

Stefan

@sfroemkenjw sfroemkenjw closed this Oct 2, 2026
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