Project

General

Profile

Actions

Feature #89582

open

Introduce translated page tree

Added by Oliver Bartsch over 4 years ago. Updated about 2 years ago.

Status:
New
Priority:
Should have
Assignee:
-
Category:
Pagetree
Target version:
-
Start date:
2019-11-05
Due date:
% Done:

0%

Estimated time:
PHP Version:
Tags:
page tree, accessibility, localization
Complexity:
Sprint Focus:

Description

Motivation
Currently there is being some work for improving the accessibility of page tree done.
See e.g.: https://forge.typo3.org/issues/86818. This is therefore a great opportunity to jump on this train and continue this process.

There are already several issues in the board, which partially are almost six or more years old.
All these issues describe more or less the possibility to have a translated page tree.

This issue aims to summarize this requests and bundles them to have a good basis for further discussions and considerations.

All this requests are based on several drawbacks, the page tree is facing currently:
  • A TYPO3 editor isn’t always fluent in the default language which is used for the page tree and therefore the page tree is just useless for him.
    Expect the general page structure.
  • The page tree live search only considers the default page records (this applies for either searching for title and also for uid).
    So it’s currently not possible to filter for localized page records.
  • To get the position of a localized page record in the page tree, one has to find it through the top bar navigation,
    switch to the default record in e.g. the edit view, copy the uid and afterwards search in the page tree search for the default one.
    Only after these steps he is able to edit the localized page record.

Site note: To improve the readability I’ll always use the term „language“. But keep in mind that it can actually also be a localization,
because one can add `sys_language` for DE_CH as well as DE_AT.

Solution (general)
Introduction of a selection (select box) at the top of the page tree (next to the search / filter) buttons to enable each backend user to select his preferred language.
Obviously in which he is fluent.

This selection should certainly be saved to backend users UC settings. He shouldn’t need to select it again after each login.

The select box will only be displayed if there is at least one `sys_language` record defined.
Furthermore only languages the backend user has proper access rights are displayed in the select box.

Additional
  • Really obvious but it needs to be defined: Default will be always the default language till a backend user adjusts it by selecting another one.
    Or another default is set via UserTSConfig.
  • The context menu in the page tree refers to the page record in the selected language.
    This means, if a backend user has selected “German” and afterwards hides the page record in the context menu, the “German” record gets hidden.
  • Searching / Filtering the page tree will always consider the currently selected language + default records which are not yet translated (See „necessary consideration“ for the reasons).
  • Changing the page tree language while searching / filtering is active, the page tree will reload with the „new“ page tree in the selected language and after that also applies the filtering to it.
  • A UserTSConfig option will be introduced which allows disabling the language selector for user (groups).
  • A UserTSConfig option will be introduced which allows setting a default page tree language for user (groups).

Necessary considerations
What happens if the page is not fully translated/localized in the selected language?

More specific: What happens when just a parent page is not translated/localized but the child pages are?

A possible solution would be to show the default ones in this case. Furthermore the page title should be in brackets
to give the backend user directly information about this record is yet not translated.
By editing the page title (returning the default title including the brackets) a new localized record will be created.
This possibility should be made public to the backend user via e.g. a tooltip by hovering over the default record.

Step 2 features (TBD)
If the page tree language was switched, hovering over a record should display a tooltip containing the uid and title of the default record.


Related issues 3 (3 open0 closed)

Related to TYPO3 Core - Feature #89524: Allow searching for localized pages in the page tree live searchNew2019-10-28

Actions
Related to TYPO3 Core - Feature #73665: Backend page tree: show localized page titleNew2016-02-25

Actions
Related to TYPO3 Core - Feature #46017: Language switcher for pagetree in BackendNew2013-03-04

Actions
Actions

Also available in: Atom PDF