---
title: "Important: Overrides of the program list templates"
manual: "Academic Programs"
version: "main"
permalink: "https://docs.typo3.org/permalink/fgtclb/academic-programs:important-1790982307@main"
source: "Changelog/3.0/Important-ProgramListTemplateOverrides.rst"
rendered: "2026-10-17T08:47:58+00:00"
---

# Important: Overrides of the program list templates {#important-1790982307}

## Description {#description}

The program list updates in place when a filter or the sorting changes, see
[Feature: The program list updates without a reload](https://docs.typo3.org/permalink/fgtclb/academic-programs:feature-1790982306@main). For that, the templates of the list changed:

-   `Templates/Program/List.html` wraps the list in an element with the
    uid of the content element, puts the form and the results into a region of
    their own, and renders an empty status element after it.
-   `Partials/Program/SortingAndFilters.html` marks the form and renders a
    submit button in a marked column.
-   `Partials/Program/DemandCategories.html` and
    `Partials/Program/DemandSorting.html` no longer render
    `onchange="this.form.submit()"` on their selects, and mark them
    instead.
-   All four load the module, so that it runs whichever of them a project
    overrides.

The attributes are listed in [Updating the list without a reload](https://docs.typo3.org/permalink/fgtclb/academic-programs:program-list-in-place@main).

## Impact {#impact}

An override from before keeps working, with a page reload where the list
cannot be updated in place:

-   An override of `DemandCategories.html` or `DemandSorting.html`
    that keeps the inline handlers reloads the page on a change of its selects,
    as before. The selects of the other partial are updated in place. Remove
    the handlers to get the update in place for all of them. With JavaScript,
    the submit button of the extension's `SortingAndFilters.html` stays
    hidden. Version 3.0 no longer allows the handler in the Content Security
    Policy, as 2.4 did, so under an enforced policy the override needs the
    hash of its handler in the `csp.yaml` of the site, see
    [Important: The filter form works under a security policy](https://docs.typo3.org/permalink/fgtclb/academic-programs:important-ace-924-academic-programs@main).
-   An override of `List.html` reloads the page on a change. Add the
    wrapper, the region and the status element to get the update in place.
-   An override of `SortingAndFilters.html` is updated in place, because
    `List.html` loads the module as well. Add the submit button inside an
    element with the attribute `data-academic-programs-list-submit`, so that a
    visitor without JavaScript can submit the form.
-   An override of both `List.html` and `SortingAndFilters.html`
    reloads the page on a change, through the attribute the selects of the
    filter partials carry. Add the parts of both to get the update in place.

A project that reloaded the list through a script of its own, a turbo frame for
example, can drop that script.
