---
title: "Important: Contract rows render the location, the unit and dialable phones"
manual: "Academic Profiles"
version: "main"
permalink: "https://docs.typo3.org/permalink/fgtclb/academic-persons:important-contract-fields-render-the-unit-and-tel-targets@main"
source: "Changelog/2.4/Important-ContractFieldsRenderTheUnitAndTelTargets.rst"
rendered: "2026-10-15T10:24:29+00:00"
---

# Important: Contract rows render the location, the unit and dialable phones {#important-contract-fields-render-the-unit-and-tel-targets}

## Description {#description}

[`Resources/Private/Partials/Profile/Contract/Field.html`](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ExtensionArchitecture/FileStructure/Resources/Private/Index.html#file-extension-resources-private-partials-somepartials-fluid-html) renders one
contract field per call, for the fields an editor ticks in
**Show only selected Fields** of a list, list and detail, card,
selected profiles or selected contracts element. Three of those fields were
rendered wrong, and all three are corrected.

**The organisational unit renders its name.** The field is offered in
**Show only selected Fields**, but the partial had no branch for it and
`locallang.xlf` had no label for it either. A contract that belongs to a
unit therefore rendered a row with an empty label and no value at all. The row
now carries the label **Organisational Unit** (German
**Organisationseinheit**) followed by the unit's display text, falling
back to its unit name where the display text is empty. A contract without a
unit renders no row, as before.

**The location renders its title.** The partial grouped the location with the
plain text fields position, room and office hours and printed the value as it
was. A location is a relation to a location record, so a contract with a
location rendered the class name and uid of that record, for example
`FGTCLB\AcademicPersons\Domain\Model\Location:1`, instead of its title.
The row now shows the title of the location.

**A phone link target carries no spaces.** The stored number was written into
`href="tel:…"` unchanged, so a number stored as `+49 6241 509 123`
produced a target with spaces in it. The spaces are now removed from the
target, both in the contract field partial and in
[`Resources/Private/Templates/Profile/Detail.html`](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ExtensionArchitecture/FileStructure/Resources/Private/Index.html#file-extension-resources-private-templates-controllername-actionname-fluid-html), which builds a target
of its own. The visible link text keeps the stored spelling.

## Impact {#impact}

A contract with a location shows the title of the location instead of the
class name and uid of the record.

A contract with an organisational unit renders one row more than it visibly
did before. The empty row was in the markup before, only without content. An
installation that hid it with CSS sees the unit appear and can drop that
rule.

An installation that overrides
[`Resources/Private/Partials/Profile/Contract/Field.html`](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ExtensionArchitecture/FileStructure/Resources/Private/Index.html#file-extension-resources-private-partials-somepartials-fluid-html) or
[`Resources/Private/Templates/Profile/Detail.html`](https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ExtensionArchitecture/FileStructure/Resources/Private/Index.html#file-extension-resources-private-templates-controllername-actionname-fluid-html) keeps its own output
and profits from neither correction until it drops its copy. The arguments the
partial is called with are unchanged, so an override of
`Profile/Contract/Item.html` keeps working.

## Affected Installations {#affected-installations}

Installations that display the location, the organisational unit or phone
numbers in a profile list, card or selection element, or in the profile detail
view.
