.. _important-ace-250-academic-projects: ======================================================= Important: Extended `ProjectDemand` and demand handling ======================================================= Description =========== To support the new "Show hidden records" plugin option, the project demand pipeline gained a new transport flag: * :php:`\FGTCLB\AcademicProjects\Domain\Model\Dto\ProjectDemand` has a new :php:`bool $showHiddenRecords` property with :php:`setShowHiddenRecords(bool): void` and :php:`getShowHiddenRecords(): bool` accessors (default :php:`false`). * :php:`\FGTCLB\AcademicProjects\Factory\DemandFactory::createDemandObject()` now reads :php:`$settings['showHiddenRecords']` and sets the flag on the demand object. * :php:`\FGTCLB\AcademicProjects\Domain\Repository\ProjectRepository::findByDemand()` honours the flag: when it is :php:`true`, the query ignores only the `disabled` (`hidden`) enable field via the Extbase query settings. The public method signatures of :php:`DemandFactory::createDemandObject()` and :php:`ProjectRepository::findByDemand()` are unchanged. Impact ====== The change is non-breaking: the new flag defaults to :php:`false` and no existing method signature changed. Projects that build a :php:`ProjectDemand` themselves can opt in by calling :php:`setShowHiddenRecords(true)`. Affected Installations ====================== Only installations that extend or replace the :php:`ProjectDemand` DTO, the :php:`DemandFactory` or the :php:`ProjectRepository` need to take the added flag into account. All other installations are unaffected. .. index:: PHP, ext:academic_projects