Breaking: The partials of the detail view change 

Description 

The public profile detail view is assembled from configuration instead of a fixed template (Feature: Configurable public profile), and Resources/Private/Templates/Profile/Detail.html is rewritten for it. It dispatches every configured element to one partial below Resources/Private/Partials/Profile/PublicProfile/ and renders nothing by itself:

Contact.html, Element.html, Headline.html, Links.html, MenuSections.html, MenuSectionsDatas.html, Position.html, ProfileEntries.html, ProfileImage.html, Subline.html and TimelineItem.html.

Those eleven files are the override surface of the detail view from 3.0 on.

Three partials the previous Detail.html rendered are no longer part of it:

  • Partials/Profile/DataHeader.html is deleted. The detail view was its only caller. It rendered the heading of a data block through {header -> f:format.raw()} and a f:switch on a layout value; the configurable view gives every element its own heading, in its own partial, escaped.
  • Partials/Profile/Header.html and Partials/Profile/SectionHeader.html are kept, and the detail view no longer renders them. They still render the headings of the list and card views of this extension and of the contact plugins of EXT:academic_contacts4pages, so an override of either keeps working there and stops having any effect on a profile detail page.

Impact 

A project that overrode one of the three partials to style the detail view loses that styling: the deleted one is not read any more, and the two that stay are not reached from the detail view. Neither shows an error - the page renders, without the override.

A project that overrides Templates/Profile/Detail.html itself keeps rendering its own template and is affected differently: see Feature: Configurable public profile.

Affected Installations 

Every installation with a project override of Partials/Profile/DataHeader.html, Partials/Profile/Header.html or Partials/Profile/SectionHeader.html, and every project whose own template renders Profile/DataHeader.

Migration 

  1. Remove an override of Partials/Profile/DataHeader.html, and any <f:render partial="Profile/DataHeader" /> in project templates. A partial that no longer exists is a render time error, not a silent empty string.
  2. Move detail view styling out of Partials/Profile/Header.html and Partials/Profile/SectionHeader.html into the PublicProfile/ partial of the element it belongs to. Keep the override for the list and card views if it is still wanted there.
  3. Flush the TYPO3 caches, so the Fluid template cache is rebuilt.