Packages/TYPO3.CMS.git
2 months agoRevert "[TASK] No reference index for workspace delete placeholders" 13/67413/5
Christian Kuhn [Wed, 13 Jan 2021 17:56:47 +0000 (18:56 +0100)]
Revert "[TASK] No reference index for workspace delete placeholders"

This reverts commit 84948b2c4d8740f1dcec352eb357337c23cc28f4.

The strategy to not have reference index entries for
workspace delete placeholders does not work out (for now):

* Workspace ElementEntity class relies on it and is
  used by DataHandler during workspace operations.

* Patch was incomplete: While rows 'from' affected
  records were dropped in refindex, rows 'to' affected
  records were left.

We may later pick this up again, but need more refactoring.

Change-Id: I19b36d011b3cae2c3c17763ace8e5ff22f8dfe9b
Resolves: #93285
Reverts: #93274
Releases: master
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67413
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
2 months ago[TASK] Migrate backend scaffolding to flexbox 02/67502/9
Benjamin Franzke [Wed, 20 Jan 2021 15:45:01 +0000 (16:45 +0100)]
[TASK] Migrate backend scaffolding to flexbox

Use flexbox for layouting to avoid transform/position
based shifting of the content module.
Also use `position: sticky` instead of `position: fixed`,
as it allows to avoid padding hacks.

Also remove manual Viewport.doLayout() hacks, as we can
now use `width: auto` as replacement for a static
snapped-module menu width.

Resolves: #93353
Releases: master
Change-Id: I7d56a3b3b405e36d65c9a87a03360074354c3d9d
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67502
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
2 months ago[TASK] Fix color contrast for label-success 74/66874/5
Mylene Kreiger [Wed, 21 Oct 2020 14:58:15 +0000 (16:58 +0200)]
[TASK] Fix color contrast for label-success

Add bootstrap class label-success to _element_label.scss.

Font color set to black and background color to a 20% lighter
$brand-success color.

Resolves: #92650
Releases: master
Change-Id: I1e37e742b13f534c13dc601159898f49aa6e2a75
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66874
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Michael Telgkamp <michael.telgkamp@mindscreen.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Michael Telgkamp <michael.telgkamp@mindscreen.de>
Reviewed-by: Benni Mack <benni@typo3.org>
2 months ago[TASK] Simplify usage of SimplePagination 00/67500/3
Georg Ringer [Thu, 21 Jan 2021 21:01:51 +0000 (22:01 +0100)]
[TASK] Simplify usage of SimplePagination

Providing the pages of a pagination directly in the `SimplePagination`
reduced the work of extension developers.
In Fluid it is now possible to iterate over all pages without the need
of providing this for every usage.

Resolves: #93340
Releases: master, 10.4
Change-Id: Idefcc16c30f55b88b8c03a418fc7ef6a37380a5f
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67500
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
2 months ago[BUGFIX] Add missing class in extension manager pagination 07/67507/2
Oliver Bartsch [Fri, 22 Jan 2021 13:49:50 +0000 (14:49 +0100)]
[BUGFIX] Add missing class in extension manager pagination

Resolves: #93349
Releases: master
Change-Id: I72b5a590db6f1dbad3ca6279ef3d02029cf4549f
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67507
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
2 months ago[TASK] Migrate topbar scaffolding to flexbox 65/67465/11
Benni Mack [Tue, 19 Jan 2021 16:10:48 +0000 (17:10 +0100)]
[TASK] Migrate topbar scaffolding to flexbox

This change migrates the responsive
topbar to flexbox, getting rid of some ugly
"position: fixed" functionality as well
as manual calculation of width / padding
via JS, making the scaffolding better to understand
and to use.

On top, this change fixes bugs related to styling
when using the topbar in non-desktop clients

Resolves: #93318
Releases: master
Change-Id: I510fd15cfce3243c0a8e6d5dcfcbd438476bb630
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67465
Tested-by: Benjamin Franzke <bfr@qbus.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
2 months ago[BUGFIX] Fix typo in documentation 01/67501/2
Benni Mack [Thu, 21 Jan 2021 21:52:31 +0000 (22:52 +0100)]
[BUGFIX] Fix typo in documentation

The documentation for the deprecated
constants is missing a word in a sentence.

In addition, the documentation clarifies
that the constant will be kept until
TYPO3 v12, to ease the migration.

Resolves: #93341
Releases: master, 10.4
Change-Id: I51dc044670bba678684781a2c90e59c06b87d671
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67501
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Xavier Perseguers <xavier@typo3.org>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Xavier Perseguers <xavier@typo3.org>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
2 months ago[TASK] Remove Chrome Repainting CSS hack 99/67499/2
Benni Mack [Thu, 21 Jan 2021 20:32:31 +0000 (21:32 +0100)]
[TASK] Remove Chrome Repainting CSS hack

A CSS hack was introduced with #f191477a1c958b178241f47f91d5b2937feb558a
see (https://forge.typo3.org/issues/66742)
for a workaround with Chrome < 40
back in 2015, which is not needed anymore.

https://bugs.chromium.org/p/chromium/issues/detail?id=412414
https://bugs.chromium.org/p/chromium/issues/detail?id=383261

Resolves: #93339
Releases: master
Change-Id: I0c333f90d1dca019b45ff7b9f97e0c76d57a03b5
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67499
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
2 months ago[BUGFIX] Fix SysLogErrors widget link to belog module 96/67496/3
Oliver Bartsch [Thu, 21 Jan 2021 13:15:47 +0000 (14:15 +0100)]
[BUGFIX] Fix SysLogErrors widget link to belog module

The SysLogErrors widget now links to the belog module
using `top.goToModule` to also change the state in the
module menu.

Resolves: #93333
Releases: master, 10.4
Change-Id: Icc19570585fdf785b296db21311f14955d6e91ae
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67496
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Peter Kraume <peter.kraume@gmx.de>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Peter Kraume <peter.kraume@gmx.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
2 months ago[TASK] Organize file / link selector output 67/67467/6
Benni Mack [Tue, 19 Jan 2021 16:51:23 +0000 (17:51 +0100)]
[TASK] Organize file / link selector output

This change sorts out the link selector fields and
additional fields, as well as the file selector to streamline
the padding/margin between all boxes, cleans up the search box
and adds some UX improvements to make the modal less cluttered.

Some labels still need to be moved to a XLF file.

In addition, some minor PHP cleanups are made to make
the dependencies more visible.

Resolves: #93322
Releases: master
Change-Id: I5f191cefbf1e1fd8dae9e398d3001faf72193cb5
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67467
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
2 months ago[BUGFIX] Fix CSH popover styling 70/67470/3
Benni Mack [Wed, 20 Jan 2021 08:38:29 +0000 (09:38 +0100)]
[BUGFIX] Fix CSH popover styling

The popover (when clicking on a "?" icon)
now properly sets the styling of the popover-header
class.

Resolves: #93323
Releases: master
Change-Id: I1e89ed15e3823a362c9244187283821ffa8aed0e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67470
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
2 months ago[TASK] Use buttons in Permissions module 60/67460/3
Oliver Bartsch [Mon, 18 Jan 2021 09:40:30 +0000 (10:40 +0100)]
[TASK] Use buttons in Permissions module

The permissions module previously used a lot of
anchor elements without a target defined.

To improve accessibility and semantic correctness
these selectors are now changed to button tags.

Resolves: #93306
Releases: master, 10.4
Change-Id: I181264307294bd84e0896d1602ddd8c9dc313167
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67460
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Benni Mack <benni@typo3.org>
2 months ago[BUGFIX] Respect date aspect in PageRepository runtime cache 34/66934/2
Patrick Schriner [Fri, 27 Nov 2020 14:32:25 +0000 (15:32 +0100)]
[BUGFIX] Respect date aspect in PageRepository runtime cache

Pages with a date visibility outside the current date had their preview
link generated incorrectly as the runtime cache was already filled with
the data of the current date.

If the date aspect is taken into account proper preview links can be generated
for future or past pages as well.

Resolves: #92944
Releases: master, 10.4, 9.5
Change-Id: Icd5c1f8e1f0ddea07780d1ca1d1d050660443927
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66934
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Guido Schmechel <guido.schmechel@brandung.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
2 months ago[FEATURE] Improve keyboard navigation for module menus 83/66283/25
Martin Kutschker [Fri, 23 Oct 2020 09:46:07 +0000 (11:46 +0200)]
[FEATURE] Improve keyboard navigation for module menus

The module menu implements the keyboard navigation suggested
by the ARIA Best Practices 1.1 for roles "menubar" and "menu".
The first level menu has a "menubar" role, the second level
submenus have a "menu" role. The buttons have the "menuitem"
role. Both the "menubar" and the "menu" are oriented
vertically for assistive technology matching the visual
representation which affects the keyboard navigation.

Space/Enter show the module unless the item has a submenu.
Space/Enter and Right Arrow open a submenu and move focus to
the first item.

Up/Down Arrow and Home/End navigate within the current
level of the menu.
Ctrl + Home/End navigate within the first level of the menu
(extension of the ARIA pattern).

Left/Right Arrow moves to the parent item's predecessor/successor
when on a submodule item. The submenu will not be closed
(deviation from the ARIA pattern).

Escape moves to the parent item of a submodule item.
The submenu will not be closed (deviation from the ARIA pattern).

Tab and Shift + Tab move to the next item outside of the
module menu.

The help menu implements the keyboard navigation suggested
by the ARIA Best Practices 1.1 for the role "menu". This
is the same as the module menu but limited to a single level.

The change detaches again the module menu's event listener
from the document as in #91642, but reinitializes
the event listeners to handle situations as described in #93008
properly.

Resolves: #92704
Resolves: #92634
Resolves: #92613
Releases: master
Change-Id: I58ae5caa81882ccebd4e2ae2d944eb99e15a4b18
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66283
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Michael Telgkamp <michael.telgkamp@mindscreen.de>
Tested-by: Guido Schmechel <guido.schmechel@brandung.de>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Michael Telgkamp <michael.telgkamp@mindscreen.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
2 months ago[BUGFIX] Don't render hreflang tag for pages with canonical set 28/67328/6
Richard Haeser [Sat, 2 Jan 2021 09:45:35 +0000 (10:45 +0100)]
[BUGFIX] Don't render hreflang tag for pages with canonical set

When a canonical link is set in the page properties, this page
or translation should not get a hreflang link in frontend as this
might send conflicting signals to search engines.

Resolves: #89878
Releases: master, 10.4
Change-Id: I4a2fb81b474bf155ba0beca5dfa3948f36edf840
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67328
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Guido Schmechel <guido.schmechel@brandung.de>
Tested-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Guido Schmechel <guido.schmechel@brandung.de>
Reviewed-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
2 months ago[BUGFIX] Use correct data attribute in constant editor 68/67468/2
Oliver Bartsch [Tue, 19 Jan 2021 21:39:46 +0000 (22:39 +0100)]
[BUGFIX] Use correct data attribute in constant editor

In the bootstrap v5 migration the data attribute key which is used
in JavaScript to perform actions depending on the toggle state,
has changed. Now the correct data attribute key is used again.

Resolves: #93320
Releases: master
Change-Id: Icd80dc210dfa55176db1b7f1be30ad015783f6be
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67468
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[BUGFIX] Streamline checkbox rendering in TYPO3 Backend 61/67461/7
Benni Mack [Mon, 18 Jan 2021 13:28:17 +0000 (14:28 +0100)]
[BUGFIX] Streamline checkbox rendering in TYPO3 Backend

This change uses Twitter Bootstrap 5 usages across TYPO3 Backend,
and fixes the toggle / icon toggle switch.

Now the bootstrap-5 based toggle (form-switch) is used,
and can be modified easily with a custom SVG later-on, but is
kept as is for now, in order to make sure it is used consistently
everywhere.

Resolves: #93310
Releases: master
Change-Id: If52d06932e1ee087d9c7d76cfb7d0f0c0e92276a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67461
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
3 months ago[TASK] Add link to open original file from the edit view 54/67454/3
Kevin Appelt [Fri, 15 Jan 2021 16:36:44 +0000 (17:36 +0100)]
[TASK] Add link to open original file from the edit view

Resolves: #93298
Releases: master
Change-Id: Ic93d7e837fc3a19e78211bbe3b7562ac3cd51213
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67454
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[TASK] Remove jQuery from Permissions module 57/67457/6
Andreas Fernandez [Sat, 16 Jan 2021 16:54:05 +0000 (17:54 +0100)]
[TASK] Remove jQuery from Permissions module

The Permissions backend module and its JavaScript module now ditch jQuery
in favor of native browser API and TYPO3 API.

The JavaScript has been refactored a little bit; initially checking the
permission checkboxes or writing back the calculcated permission value
is now decoupled and executed in the Permission module only.

To support for..of with NodeList collections, TypeScript now loads the
internal "dom.iterable" library.

Additionally, the interim solution to add `editform` to Document has
been removed which made another change in LinkPopup necessary.

Furthermore, a bug has been fixed, where the value of the first
visible select element was used when saving any other select element
with a completely different value.

Resolves: #93301
Releases: master
Change-Id: Iffede862a0eb36e805a5f127d7b19f32c899ce31
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67457
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Fix extension listing 62/67462/4
Benni Mack [Mon, 18 Jan 2021 14:04:31 +0000 (15:04 +0100)]
[BUGFIX] Fix extension listing

The listing of extensions in the Extension Manager module
now properly shows the inactive extensions again.

Previous CSS changes didn't apply the inactive extensions
again.

In addition, if an extension does not have an Extension Icon
in the Extension Manager list, it created an <img> tag
with a path to the extension folder typo3conf/ext/my_ext/
resulting in an error in the browsers. This is now
replaced with an empty icon.

Resolves: #93311
Releases: master
Change-Id: I723a0d603b36ad799c0c02869829742f19a69b37
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67462
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[FEATURE] Synchronize folder relations after rename 41/67441/8
Oliver Bartsch [Tue, 12 Jan 2021 23:05:19 +0000 (00:05 +0100)]
[FEATURE] Synchronize folder relations after rename

To prevent broken records which reference a renamed
folder, the AfterFolderRenamedEvent is now used to
synchronize the corresponding relations as soon as
such action took place.

Furthermore does the AfterFolderRenamedEvent now
contain the source folder, which is necessary to
find those relations.

A flash message informs the user about the
synchronization when the action was performed
in the backend, e.g. in the file module.

Resolves: #78036
Resolves: #83054
Releases: master
Change-Id: I9cc8bfbb5c8506c22dc4377fd3041b1113864182
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67441
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[BUGFIX] Properly show unchanged workspace records in workspace module 95/64295/7
Uwe Trotzek [Wed, 13 Feb 2019 15:20:08 +0000 (16:20 +0100)]
[BUGFIX] Properly show unchanged workspace records in workspace module

When a user is editing a complex data structure with IRRE and
if he just changes one entry of a structure then
all the items will be shown as changed in the workspace module.
Most users will wonder why an element is shown as changed even
if the user didn't touch this particular entry.

This change will hide the "show differences" button in the module
for entries where no data was changed except for internal properties.

Those items will also have a different color in the list. Now the user
can easily identify the records where something was really
changed and open the diff to see what has changed.

Resolves: #91157
Releases: master
Change-Id: Ib5ca5bb50360091813855bd8aef0b9e627e1e826
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/64295
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[FEATURE] Add textWrap argument to f:link.typolink viewhelper 58/65758/9
Johannes Rebhan [Fri, 18 Sep 2020 10:50:34 +0000 (12:50 +0200)]
[FEATURE] Add textWrap argument to f:link.typolink viewhelper

This adds the ability to wrap the content of an automatically
generated typolink link text, e.g. when linking to internal pages,
with markup using the typolink options `wrap` and `ATagBeforeWrap`.

Resolves: #92338
Releases: master
Change-Id: I1ecac8fe52384acef249177850662ebc90497b1a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/65758
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Guido Schmechel <guido.schmechel@brandung.de>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
3 months ago[TASK] Display user and group names completely 63/67363/4
Guido Schmechel [Fri, 8 Jan 2021 11:46:19 +0000 (12:46 +0100)]
[TASK] Display user and group names completely

User and group names in the access module are no longer shortened
after 20 characters. It is now possible to see the full 50 characters.

In addition, a title attribute has been added.

Resolves: #93089
Releases: master
Change-Id: If37d24235ff445297548a2830e5745cb889d5a32
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67363
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Re-add proper badges for toolbar items 59/67459/2
Benni Mack [Sun, 17 Jan 2021 11:24:57 +0000 (12:24 +0100)]
[BUGFIX] Re-add proper badges for toolbar items

The opendocs toolbar item does not have a badge background anymore,
this changes re-adds the background and also unifies
the badge from the system information toolbar to use
the rounded-pill class.

Resolves: #93303
Releases: master
Change-Id: Ie2ecc99fd5ad4ad8845923af018c051665ac6118
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67459
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Riccardo De Contardi <erredeco@gmail.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] Restore layout of clipboard buttons in filelist and recordlist 49/67449/3
Jochen Roth [Thu, 14 Jan 2021 16:25:21 +0000 (17:25 +0100)]
[BUGFIX] Restore layout of clipboard buttons in filelist and recordlist

Will set equal height for checked checkbox and the empty button.
The first button will now get a border-radius to streamline the
buttons according to the action buttons

Resolves: #93292
Releases: master
Change-Id: I6479c968f77df41ed00d23d68c5ec23363ac64a3
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67449
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Guido Schmechel <guido.schmechel@brandung.de>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Use the correct PreviewRenderer as fallback 13/66413/7
Thomas Löffler [Wed, 4 Nov 2020 07:22:52 +0000 (08:22 +0100)]
[BUGFIX] Use the correct PreviewRenderer as fallback

When there is no specific preview renderer defined for
a given subtype, the type-specific renderer can only
be used if it's not an array. Otherwise, the default
preview renderer defined in TCA crtl should be used.

Releases: master, 10.4
Resolves: #92758
Change-Id: Ia88d262f52ddac174cbe6750c591898c84872a89
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66413
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Assure page title editing when creating new pages 16/67316/4
Elias Häußler [Wed, 30 Dec 2020 18:23:17 +0000 (19:23 +0100)]
[BUGFIX] Assure page title editing when creating new pages

Using drag and drop, one can create new pages within the
page tree. New pages can be created before, after or
within existing pages. Currently, one could not provide
a page title if the page was created within a page
without subpages due to issues with unintended focus
change after drag and drop.

It is now ensured that a page title can be edited
directly after dragging a page into the page tree. Some
cases are also covered by acceptance tests now.

Resolves: #92380
Releases: master, 10.4
Change-Id: I95391631f11552fc59e9252e904052d8288c5d91
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67316
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Guido Schmechel <guido.schmechel@brandung.de>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[BUGFIX] Preserve order of link handlers 55/67455/4
Markus Klein [Fri, 15 Jan 2021 21:05:17 +0000 (22:05 +0100)]
[BUGFIX] Preserve order of link handlers

If some link handlers are hidden with "blindLinkOptions" then we still
want to preserve the well-known order of the other tabs.
This is solved by defining more dependencies on the link handlers, so
that the ordering service still has a clue about the order.

Releases: master, 10.4
Resolves: #86312
Change-Id: I60c3c7b1cbcb57b7774663732d7bd3aca9ef15c7
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67455
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[BUGFIX] Avoid fatal errors with empty bodytext content 43/67443/3
Benni Mack [Wed, 13 Jan 2021 11:32:44 +0000 (12:32 +0100)]
[BUGFIX] Avoid fatal errors with empty bodytext content

The page module does not throw a fatal error
anymore if a content type "text" has a bodytext
of value "null" instead of "text".

Resolves: #93283
Releases: master
Change-Id: I23b5c508d1886dc2277e5d4a2010f8a57fd8bb85
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67443
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Daniel Goerz <daniel.goerz@posteo.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de>
3 months ago[BUGFIX] Use absolute path for clipboard thumbnails 39/67439/2
Oliver Bartsch [Tue, 12 Jan 2021 18:19:37 +0000 (19:19 +0100)]
[BUGFIX] Use absolute path for clipboard thumbnails

Resolves: #93278
Releases: master
Change-Id: Ie4b0e533fda887b92fdbd5c4e870435c12b091ca
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67439
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Fix RenameFile and FileDelete in EXT:filelist 38/67438/2
Oliver Bartsch [Tue, 12 Jan 2021 18:16:41 +0000 (19:16 +0100)]
[BUGFIX] Fix RenameFile and FileDelete in EXT:filelist

The RenameFile JavaScript handles renaming of files
and folders. If renaming a folder, some input fields are
not available in the form and must therefore be checked
for existence, before accessing their value.

Furthermore does the file delete modal now display the
modal content again. The corresponding data attribute
was renamed in the bootstrap v5 migration.

Resolves: #93277
Releases: master
Change-Id: I4ba6bc625a152d7e97ba6c44612a17b782799d31
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67438
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Fix TypeError when loginLogoAlt is unset 37/67437/3
Benjamin Franzke [Tue, 12 Jan 2021 14:06:55 +0000 (15:06 +0100)]
[BUGFIX] Fix TypeError when loginLogoAlt is unset

As of #92628, 'loginLogoAlt' is evaluated when a custom backend
loginLogo has been set, but it is not taken into account if has
not been set at all. Use null coalesce operator to avoid notices
and to avoid throwing TypeErrors because trim() cannot handle null
values.

Resolves: #93275
Related: #92628
Releases: master
Change-Id: I1cd2875f9b92b9d1a86e3817e1623acb45922b85
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67437
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Michael Telgkamp <michael.telgkamp@mindscreen.de>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Michael Telgkamp <michael.telgkamp@mindscreen.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[BUGFIX] Show system news navigation buttons 02/67402/3
Martin Kutschker [Mon, 11 Jan 2021 20:13:24 +0000 (21:13 +0100)]
[BUGFIX] Show system news navigation buttons

Due to CSS changes in Boostrap 5 the navigation buttons
on the login screen were invisible.

This patch makes them visible again.

Resolves: #93258
Releases: master
Change-Id: Ifdd9dcb88504428303ac7680106c721038181505
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67402
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[TASK] No reference index for workspace delete placeholders 96/67396/8
Christian Kuhn [Sun, 10 Jan 2021 17:28:50 +0000 (18:28 +0100)]
[TASK] No reference index for workspace delete placeholders

The reference index can be seen as a 'cache' for
consuming application parts other than the
DataHandler, which does not rely on it's state but
keeps it updated.

From this point of view, workspace delete placeholders
(t3ver_state=2 records) should not have reference
index entries: The delete placeholder is just a
marker that a specific live record is slated for
deletion upon publish. It does not carry relation
information on it's own.

The patch changes reference index code to not
consider relations for workspace delete placeholder
records.

Change-Id: I0a1fd490c4133e7ce92a53ebd4413cc7b43b1d58
Resolves: #93274
Releases: master
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67396
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[BUGFIX] Do not turn workspace delete records into move records 00/67400/4
Christian Kuhn [Mon, 11 Jan 2021 15:58:14 +0000 (16:58 +0100)]
[BUGFIX] Do not turn workspace delete records into move records

Scenario: A live page has a page localization. In workspaces,
the page localization is deleted, creating a delete placeholder.
After that, the page is moved to a different parent page in
workspaces. The delete placeholder of the localization is then
turned into a move placeholder.
This is wrong since the delete information is lost.
The patch suppresses the change of delete placeholders to move
placeholders when moving records.
This issue is much harder to solve in v10 since v10 has to deal
with two move overlay records and v11 with one. The patch is
thus slated for v11 only.

Change-Id: I233b944b030bba0de6c22d4ec1b6cb862184ddb6
Resolves: #93268
Releases: master
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67400
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[BUGFIX] Add workspace restriction to RecordsXmlSitemapDataProvider 92/67392/5
Richard Haeser [Sun, 10 Jan 2021 02:15:41 +0000 (03:15 +0100)]
[BUGFIX] Add workspace restriction to RecordsXmlSitemapDataProvider

By adding the workspace restriction to the RecordsXmlSitemapDataProvider,
only records in the live workspace are shown in the XML sitemap.

Resolves: #93010
Releases: master, 10.4
Change-Id: Ib46c3ebc925405de81afefda83100ccddb761fad
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67392
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[TASK] Reduce RelationHandler state 01/67401/5
Oliver Bartsch [Mon, 11 Jan 2021 18:03:53 +0000 (19:03 +0100)]
[TASK] Reduce RelationHandler state

Some protected properties with single usage are replaced
with local variables to reduce complexity.

Resolves: #93269
Releases: master
Change-Id: I9f34e5a2746988e11f97d923837f49b0435fc6a0
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67401
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[FEATURE] Allow icon overlay in newContentElementWizard 09/66909/3
Sebastian Iffland [Thu, 26 Nov 2020 13:38:48 +0000 (13:38 +0000)]
[FEATURE] Allow icon overlay in newContentElementWizard

A new TSconfig option `iconOverlay` is introduced,
which allows to define an icon overlay for each
element within the newContentElementWizard.

Releases: master
Resolves: #92942
Change-Id: Ib6aa02424e5a1d6411ef8fc9830364c8b2c19a31
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66909
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[TASK] Separate restore from delete in DataHandler 68/67368/4
Christian Kuhn [Sat, 9 Jan 2021 15:56:34 +0000 (16:56 +0100)]
[TASK] Separate restore from delete in DataHandler

The DataHandler delete related methods still handle
too many things.
This is yet another divide & conquer patch: Move
the 'undelete' functionality to dedicated methods,
drop handling from 'delete' methods and refactor
'undelete'.
The result is a quite straight forward 'undelete'
implementation, plus reduced complexity in 'delete'.

Change-Id: I6ea2326fa2ad6de03c8cd3bd37184fff116fda06
Resolves: #93253
Releases: master
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67368
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Hide deleted flexform section in DOM 69/67369/4
Andreas Fernandez [Sat, 9 Jan 2021 16:39:08 +0000 (17:39 +0100)]
[BUGFIX] Hide deleted flexform section in DOM

If a Flexform section gets deleted, the container must be hidden in DOM
and not deleted, as the underlying DataHandler code relies on getting
the field submitted.

This patch is less intrusive as possible to allow a backport to stable
releases. Flexforms needs a major refactoring and should act similar to
IRRE, but this can go into the master branch only.

Resolves: #93061
Releases: master, 10.4
Change-Id: I69dfdd6f2029547d600939f23e21b03abd45042d
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67369
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[BUGFIX] Fix edit page title input group 99/67399/2
Oliver Bartsch [Mon, 11 Jan 2021 11:31:20 +0000 (12:31 +0100)]
[BUGFIX] Fix edit page title input group

The correct height of the input group is restored by
removing unnecessary wrappers around the buttons.

See: https://getbootstrap.com/docs/5.0/forms/input-group/#button-addons

Resolves: #93262
Releases: master
Change-Id: I3e8276f66efbb593480371d3ee26d0ec08ba35d8
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67399
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Jochen <rothjochen@gmail.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Jochen <rothjochen@gmail.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] Remove duplicate error message in AjaxDataHandler 31/67331/4
Simon Schaufelberger [Sat, 2 Jan 2021 22:45:21 +0000 (23:45 +0100)]
[BUGFIX] Remove duplicate error message in AjaxDataHandler

When an error occurs in a DataHandler AJAX call, the error message
should only be shown once.

Resolves: #93207
Releases: master, 10.4
Change-Id: I8f341d08bfe051af5a485f21628907c74a812490
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67331
Tested-by: Benjamin Franzke <bfr@qbus.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
3 months ago[BUGFIX] Small issues on the backend login screen 70/67370/3
Martin Kutschker [Sat, 9 Jan 2021 19:07:30 +0000 (20:07 +0100)]
[BUGFIX] Small issues on the backend login screen

The translation key login.error.capslock is duplicated.
The second instance is now named login.error.capslockStatus
as in the referring Fluid template.

When there are no loginProviders to be chosen from then
the nav region would only be comprised of an empty <ul>.
Do not render the tags for this condition.

Resolves: #93255
Resolves: #93256
Releases: master
Change-Id: I4527eb8863a92366787827b50b82b441512df744
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67370
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Hide impossible actions for pid 0 67/67367/2
Andreas Fernandez [Sat, 9 Jan 2021 13:50:24 +0000 (14:50 +0100)]
[BUGFIX] Hide impossible actions for pid 0

This patch removes some actions that don't make any sense with pid 0:

- toggle visibility in menu via context menu
- "View webpage" action in Record List

Resolves: #93252
Releases: master, 10.4
Change-Id: I444270a49642240e9a38d3664b05923da16f36e0
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67367
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[FEATURE] Add alt-text to login logo 22/66222/16
Georg Ringer [Wed, 21 Oct 2020 11:36:46 +0000 (13:36 +0200)]
[FEATURE] Add alt-text to login logo

The login logo for the default logo is set to "TYPO3 logo".
For custom logos an alt-attribute for the image tag can
be configured.

In v12 it will be required to configure the alt-text to
ensure accessibility.

Resolves: #92628
Releases: master
Change-Id: Ib35b8fbdbff08e7c9a1e778fc62d8135214d1af0
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66222
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[TASK] Blind more configuration options per default 66/67366/2
Oliver Bartsch [Fri, 8 Jan 2021 18:06:09 +0000 (19:06 +0100)]
[TASK] Blind more configuration options per default

TYPO3 should blind sensitive configurations options, such
as credentials or keys, by default, since the configuration
module can usually be accessed by all admins.

Integrators always have the possibility to adjust these
settings using the modifyBlindedConfigurationOptions
hook.

Resolves: #93250
Releases: master, 10.4
Change-Id: I8eaefa7b166de54190cee2b4eac5e2dfc1513cc5
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67366
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Guido Schmechel <guido.schmechel@brandung.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Guido Schmechel <guido.schmechel@brandung.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Fix several issues with collapse elements 62/67362/2
Oliver Bartsch [Fri, 8 Jan 2021 10:26:56 +0000 (11:26 +0100)]
[BUGFIX] Fix several issues with collapse elements

Since bootstrap v5 the collapse JavaScript plugin
is using `collapse.show` instead of `collapse.in`
as the expanded state class.

Since TYPO3 added custom styles based on the
`.in` class, several modules did not longer work.
This is now fixed by using the correct class.

Additionally the workspace record collapse state
identifier icon now reflects the current state again.

Resolves: #93243
Releases: master
Change-Id: I471402250520c9c3366d1885b664a8f5fd79e338
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67362
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Guido Schmechel <guido.schmechel@brandung.de>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Use absolute path for media files in backend 57/67357/4
Oliver Bartsch [Thu, 7 Jan 2021 12:50:04 +0000 (13:50 +0100)]
[BUGFIX] Use absolute path for media files in backend

Since #93048 using relative paths in backend does not
longer work in most cases. Therefore the MediaRenderers
should always use absoulte paths when in backend context.

Resolves: #93226
Releases: master
Change-Id: Iad08c8a4b8e255c67b6bb6fe168ecc4915620d35
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67357
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Guido Schmechel <guido.schmechel@brandung.de>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Guido Schmechel <guido.schmechel@brandung.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Discard workspace records when deleting live records 64/67364/9
Christian Kuhn [Fri, 8 Jan 2021 12:42:35 +0000 (13:42 +0100)]
[BUGFIX] Discard workspace records when deleting live records

Since #93121 workspace records have no soft-delete
behavior anymore. This is now respected when live
records are deleted: Workspace overlays of these
records are now properly discarded.

Change-Id: I9c0ea6871ec28c944e16eda26e360629429c8dd0
Resolves: #93248
Related: #93121
Releases: master
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67364
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Fix rendering issues in changelog rst 60/67360/2
Georg Ringer [Fri, 8 Jan 2021 07:27:49 +0000 (08:27 +0100)]
[BUGFIX] Fix rendering issues in changelog rst

Fix rendering issues in
`Deprecation-92386-DeprecatedExtbasePropertyInjection`.

Resolves: #93241
Related: #92386
Releases: master
Change-Id: I2a11061d3c86c2a3cd96cdfafbe9ae3313b4995c
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67360
Tested-by: Martin Bless <martin.bless@mbless.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Martin Bless <martin.bless@mbless.de>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
3 months ago[TASK] Fetch route from request instead of GET parameter 55/67355/7
Oliver Bartsch [Wed, 6 Jan 2021 19:17:21 +0000 (20:17 +0100)]
[TASK] Fetch route from request instead of GET parameter

The "route" GET parameter is deprecated since #93048.
Therefore the route path has now to be fetched from the
request object instead.

This patch replaces all places in core where the route
is still fetched via GET. It's currently often necessary
to access $GLOBALS['TYPO3_REQUEST'] therefore, since the
request object is not always present at those places. This
will be tackeled in upcoming patches.

Resolves: #93158
Releases: master
Change-Id: I6e163919b19484171b6ebf8087fdc650cf977c9c
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67355
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[TASK] Propagate "immediate" responses through the middleware stack 42/67042/15
Benjamin Franzke [Sun, 6 Dec 2020 18:42:07 +0000 (19:42 +0100)]
[TASK] Propagate "immediate" responses through the middleware stack

When a controller finds some pre-requisites of the called
action are not fulfilled, it can create an 'early' response
and throw it as ImmediateResponseException. This exception
bypasses the middleware stack, and is caught in the Application
to emit the response. This is a big win in contrast to
die/exit calls.

Some middlewares however expect to be always called when the
response bubbles up. Good examples are 'locking' middlewares:
They set up a lock when called, dispatch to inner middlewares,
and tear town the lock when a response is retrieved.

The tear down code of those middlewares is bypassed when
a controller throws an ImmediateResponseException.

The patch introduces a second exception: PropagateResponseException.
This one is caught by a new very inner middleware positioned at the
end of the middleware stack, just before the request is dispatched
to some controller. It then sends the response up the outer
middlewares. This allows middlewares like a 'locking' middleware
to do it's job without being bypassed, and at the same time
allows a controller to bypass any further local processing by
throwing such a response exception.

ImmediateResponseException exists as before and can still be used
to directly bypass the middleware stack and is kept as safety net
in case a PropagateResponseException is thrown within a middleware.
PropagateResponseException therefore extends ImmediateResponseException.

It's however discouraged to throw ImmediateResponseException from
within controllers - they require knowledge on what middlewares
do in their 'tear down' part and there shouldn't be a reason to
bypass them.

Middleware/BackendUserAuthenticator is adapted to properly
handle ImmediateResponseException that would have been thrown
BackendUserAuthentication::backendCheckLogin(). BackendUserAuthentication
is therefore refactored to allow to call the backend login
initialization without (duplicate) login check.
This allows to propagate redirect/maintenance responses.

Releases: master
Resolves: #93007
Change-Id: I291d9d532e7fa289b803e5eef38b23402e57e8ba
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67042
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Working preview links in workspace mails 42/67342/3
Christian Kuhn [Tue, 5 Jan 2021 13:55:12 +0000 (14:55 +0100)]
[BUGFIX] Working preview links in workspace mails

Fix a couple of issues with state change emails in
workspaces:

* We still can't deep link to the backend. The generated
  comparisonLink to the side-by-side preview module is a
  workspace backend functionality. The generated links
  don't work and show the login form. The fix is to
  generate "preview links" instead which call a frontend.
  We may be able to improve this later, when core v11
  allows deep linking.

* When changing the stage of a page delete placeholder
  - when a page is for deletion in live - preview link
  generation to these pages does not make sense, trying
  to generate such a link throws an exception "no
  connection to page tree", the ajax request fails and
  no mails are send. Fix is to catch the exception and
  leave out the link in the emails.

* Preview links did not carry the language id when
  sending notifications for state changes of non default
  language records. This is added to properly link to
  non-default language previews.

* A missing closing p-tag in the HTML mail.

* As a better default, preview links are now always added
  to the mails if possible. In rare cases where this is
  not wanted, the mail templates should be adapted.

Change-Id: I84f0e4e5131d52ecbc5e7424137ae7e2ebdb2031
Resolves: #91515
Resolves: #81708
Related: #90411
Releases: master, 10.4
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67342
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[TASK] Replace GeneralUtility::getIndpEnv('REQUEST_URI') 55/67255/19
Anja Leichsenring [Mon, 28 Dec 2020 16:55:52 +0000 (17:55 +0100)]
[TASK] Replace GeneralUtility::getIndpEnv('REQUEST_URI')

If a reqest object already is around,
$request->getAttribute('normalizedParams')->getRequestUri()
can be used as a drop in replacement.
As a fallback $GLOBALS['TYPO3_REQUEST'] is almost always
available and contains the request object.

Resolves: #93178
Releases: master
Change-Id: I2bb13a54e6b8705be5783042a4f67f9735c627a3
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67255
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[TASK] Simplify FileBackend->remove() 59/67359/3
Christian Kuhn [Thu, 7 Jan 2021 14:45:36 +0000 (15:45 +0100)]
[TASK] Simplify FileBackend->remove()

Throw if frozen, then call ->remove() of SimpleFileBackend

Resolves: #93239
Related: #92847
Releases: master
Change-Id: I01fe5d79b9adc48491ece5ed360be4e94c0e53af
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67359
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[BUGFIX] Suppress warning in SimpleFileBackend unlink() 58/67358/2
Christian Kuhn [Thu, 7 Jan 2021 14:20:42 +0000 (15:20 +0100)]
[BUGFIX] Suppress warning in SimpleFileBackend unlink()

Calling $cache->remove() on a simple file backend when
the file does not exist leads to a PHP warning.
Checking with file_exists() before could lead to race
conditions if some other process unlinks in between.
Solution is to simply suppress the unlink warning.

Resolves: #92847
Releases: master, 10.4
Change-Id: I3f3f44f73b89ff76939b891e8ca78c4d79369997
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67358
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[BUGFIX] Use PSR-17 interfaces in Extbase 53/67353/5
Benjamin Franzke [Wed, 6 Jan 2021 16:50:30 +0000 (17:50 +0100)]
[BUGFIX] Use PSR-17 interfaces in Extbase

In order to strengthen TYPO3's focus on PSR standards, this change
uses PSR-17 interfaces instead of the custom ResponseFactoryInterface
which was added solely for extbase in #92784.

The interface was added as part of the #92784 deprecation, but it
actually contradicts with the ideas of interchangable PSR interfaces
and therefore we strive for native PSR-17 usage, instead of wrapping
PSR interfaces, now.
The Extbase ActionController::htmlResponse() method – which was
suggested to be used by #92784 – is kept as is (functionality wise [1]),
and since the interface was injected into the ActionController using a
final method, the impact of this switch is very low.

Concrete implementations of PSR interfaces are always internal api,
threfore also TYPO3\CMS\Core\Http\Response is switched back to be
marked as internal API.

Furthermore TYPO3\CMS\Core\Http\JsonResponse properties do not need to
be marked internal, as the entire class is internal.

[1] ActionController::htmlResponse() is adapted to avoid rewinding()
    the response body, as every usage/respond is actually expected
    to rewind or use toString(), and therefore rewind() would be
    called twice. Only functional tests where buggy in not calling
    rewind() during test assertion.

Releases: master
Resolves: #93237
Related: #92784
Change-Id: I59e5a190eaa1f0dd62f08db34987c6d4a72b73c1
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67353
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[TASK] Replace missing jquery import in SelectTreeElement 23/67323/4
Benjamin Franzke [Thu, 17 Dec 2020 09:36:09 +0000 (10:36 +0100)]
[TASK] Replace missing jquery import in SelectTreeElement

SelectTreeElement makes use of $.param() without importing
jquery via requireJS. Instead of adding the missing jquery
import, we simply migrate to the native URLSearchParams,
as it is available in all supported browsers.

Furthermore we avoid decoding the datastructureidentifier
json, as it is encoded to json server side. We do this,
because URLSearchParams does not url encode nested objects.

Resolves: #93200
Releases: master
Change-Id: I0da98092da6e09d6576bbdb59112d738086be238
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67323
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[TASK] Improve accessibility of login 18/66818/11
Martin Kutschker [Sun, 22 Nov 2020 20:28:48 +0000 (21:28 +0100)]
[TASK] Improve accessibility of login

Colour contrast for footnote text meets WCAG 2.1 requirements.
Role status for the caps-lock notice belongs to the div
wrapping the image.
The HTML document has a heading structure (h1 to h3).
The content is placed in ARIA regions.
The first form field has the autofocus (interface selector comes
after password).
All password fields have a caps lock status notification.
The copyright notice implements the WAI-ARIA 1.1 disclosure pattern.
The message after successful changing the password contains
an accessible link.

Resolves: #92904
Releases: master
Change-Id: I67a2e61644711d20a20432b3eed4dca808ec591b
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66818
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] FormEngine: Fix several validation issues in complex field types 17/67317/6
Andreas Fernandez [Thu, 31 Dec 2020 08:39:08 +0000 (09:39 +0100)]
[BUGFIX] FormEngine: Fix several validation issues in complex field types

The FormEngine field type `selectMutlipleSideBySide` is very special, as
it's a combination of four input and select fields. With the refactoring
done in #87324 an issue in the validation has been introduced which
caused the validation of the wrong field which contains no validation
rules. This patch uses the correct field to obtain the validation rules
from, now.

Another issue is that values of `selectCheckBox` never have been
validated as the necessary validation rules were missing. The rules are
now appended to the outermost div container. In the same run, minor
styling and markup changes were necessary.

Resolves: #93191
Related: #87324
Releases: master, 10.4
Change-Id: I7195213a768fa4814eb3ecd81953a500c77ede5d
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67317
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[TASK] Migrate backend notifications to lit-html 79/67179/4
Benjamin Franzke [Thu, 17 Dec 2020 23:00:41 +0000 (00:00 +0100)]
[TASK] Migrate backend notifications to lit-html

Migrates backend UI component `Notification` to be based on `lit-html`.

Resolves: #93102
Releases: master
Change-Id: Ic79ff0261c75fa5e7654ff44c213784302dc1b59
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67179
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[BUGFIX] Never show deleted users in compare view 54/67354/3
Christian Kuhn [Wed, 6 Jan 2021 17:38:25 +0000 (18:38 +0100)]
[BUGFIX] Never show deleted users in compare view

Adding a user to the ext:beuser 'compare' list and
deleting the user afterwards, still allows to compare
that user with others.
Fix the repository query settings to never handle
deleted users.

Resolves: #93235
Releases: master, 10.4
Change-Id: I18d3eacfd6b0d19f7dca6f57d51dbc33aa2c8273
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67354
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Add default workspace for dummy user 52/67352/3
Oliver Bartsch [Wed, 6 Jan 2021 17:03:44 +0000 (18:03 +0100)]
[BUGFIX] Add default workspace for dummy user

The backend usergroup compare view requires to fetch the
group data of the groups to compare. Since this operation
depends on a user array, UserInformationService creates
such dummy user.

The dummy user array now also contains the default workspace
id `-99` to prevent triggering a database update which would
result in creating a sys log entry. This would fail since the user,
the database update should be performed on, is the dummy
user which is not fully set up.

Resolves: #93233
Releases: master, 10.4
Change-Id: I61870acbab133d9f3f1b80899b50662dca2bc9bf
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67352
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
3 months ago[TASK] Render nonExcludeFields in backend user comparison 51/67351/2
Elias Häußler [Wed, 6 Jan 2021 16:13:11 +0000 (17:13 +0100)]
[TASK] Render nonExcludeFields in backend user comparison

Adds nonExcludeFields to backend user comparison view
since it was not added to this view yet.

Resolves: #93234
Releases: master
Change-Id: I5a5bb072c10571e70a04bc1c7df25df1b81fefdf
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67351
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] Fix collapsible elements in Backend User info 49/67349/2
Elias Häußler [Wed, 6 Jan 2021 14:30:43 +0000 (15:30 +0100)]
[BUGFIX] Fix collapsible elements in Backend User info

All collapsible elements in Backend User info (TSconfig,
exclude fields) can now be collapsed at first click. For
this, `aria-expanded="false"` has been set.

Resolves: #93232
Releases: master
Change-Id: I38fb2d0054a8164be1a0514683ff89b077e15e1d
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67349
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[TASK] Remove deprecated "route" argument from shortcut buttons 43/67343/2
Oliver Bartsch [Tue, 5 Jan 2021 20:47:16 +0000 (21:47 +0100)]
[TASK] Remove deprecated "route" argument from shortcut buttons

With #93093 the shortcut PHP API was reworked.
Since then, providing the route path as "route"
argument is deprecated.

This patch removes all places in the core where
the argument was still being set.

Resolves: #93224
Releases: master
Change-Id: I4496e88f67f7e821653af31b647b1825b6cc3371
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67343
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Simon Gilli <typo3@gilbertsoft.org>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Simon Gilli <typo3@gilbertsoft.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] Fix requirejs-loader config and error handling 46/67346/3
Benjamin Franzke [Thu, 17 Dec 2020 09:40:28 +0000 (10:40 +0100)]
[BUGFIX] Fix requirejs-loader config and error handling

Adapt the fetch-configuration URL query string, to account for the
backend url change in #93048, in order to use a questionmark
to concatenate the query string instead of an ampersand.
But allow for both, base URLs with and without question mark,
as frontend context via eID would still require an ampersand
for concatenation.

Also fix a error callback name clash and properly propagate
fetchConfiguration errors through the requirejs error handling,
for requirejs errbacks to be invoked.

Resolves: #93227
Related: #93048
Releases: master, 10.4
Change-Id: If843db529e19e6af2681871a2d6307d67acbea56
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67346
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[TASK] Streamline generated links to switch Backend user 47/67347/4
Elias Häußler [Wed, 6 Jan 2021 09:12:45 +0000 (10:12 +0100)]
[TASK] Streamline generated links to switch Backend user

Both links to switch Backend user (Backend toolbar item
and SwitchUser view helper) are now streamlined.

Resolves: #93228
Releases: master
Change-Id: I5225bff74ebdd8cfcda698d43f4b7823524bf0a9
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67347
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] Streamline frontend 5xx error handling 80/67080/6
Benjamin Franzke [Thu, 10 Dec 2020 07:40:03 +0000 (08:40 +0100)]
[BUGFIX] Streamline frontend 5xx error handling

 * Fix 500 vs 503 error for configuration vs maintenance errors
 * Fix maintenance mode middleware ordering to get access to site
   related error handlers
 * Fix ErrorController unit tests to actually test
   for 503 and 500 error responses (contained duplicate
   code that didn't actually test for the non-configured
   state, but the devIPMask state)

For 5xx status code we have two different cases right now:
 * configuration errors, which need to respond with 500
 * maintenance mode, which is a 503 response

Therefore TSFE now uses internalErrorAction()
to respond with "500 Internal Server Error" when
the page configuration is broken.

Resolves: #93045
Related: #93032
Releases: master, 10.4
Change-Id: I60de9f7ba06d17f2e6e5c8f20c9fc10e90b4175b
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67080
Tested-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] Handle sorting of nested IRRE containers properly 33/66933/5
Andreas Fernandez [Fri, 27 Nov 2020 11:49:15 +0000 (12:49 +0100)]
[BUGFIX] Handle sorting of nested IRRE containers properly

When sorting elements in an IRRE container, the sorting took
grandchildren into account as well, which broke the sorting in the
database.

With this patch, a new data attribute is added to be able to identify
direct ancestors and limit sorting to these records only.

Resolves: #92804
Releases: master, 10.4
Change-Id: I09876c3a8be45b060c133d758807e4df25fee0d2
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66933
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Guido Schmechel <guido.schmechel@brandung.de>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
3 months ago[BUGFIX] Use custom image file extensions for image processing tests 44/67344/6
Guido Schmechel [Tue, 5 Jan 2021 20:53:07 +0000 (21:53 +0100)]
[BUGFIX] Use custom image file extensions for image processing tests

If an integrator removes image file extensions, e.g. "gif", from
$GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext'] the whole image
processing test in the install tool fails.

That's because some tests need to run independent of the global
configuration. Therefore the GraphicalFunctions class, which is
used as the image processor, now features a setter. This allows
EXT:install to manually define required image extensions for the
tests, which should not consider the global configuration.

Note: The `convertImageFormatsToJpg` test, which tries to
convert every defined image file extension (based on the
global configuration) to JPG, is not affected by this change.

Resolves: #92958
Releases: master, 10.4
Change-Id: Ic84be73c897f497fedd6b442965edf6fb3ef88c3
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67344
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] Remove link from login logo 52/67252/4
Martin Kutschker [Sun, 27 Dec 2020 13:37:50 +0000 (14:37 +0100)]
[BUGFIX] Remove link from login logo

The login logo is linked only for technical reasons of a security check.
It is not meant to be used by humans but is placed prominently enough
to be an accessibility issue.

Remove the link around the logo and create a new one hidden from the
user interface.

Resolves: #93172
Releases: master, 10.4
Change-Id: Id1edc5dd0e059a8700e4bb6c0e09e3f443b6f9fb
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67252
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Jörg Bösche <typo3@joergboesche.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[DOCS] Add examples how to create fallbacks for meta tags 21/66621/4
Remo Schneider [Fri, 13 Nov 2020 09:45:41 +0000 (09:45 +0000)]
[DOCS] Add examples how to create fallbacks for meta tags

Added some more examples how to add fallbacks for specific metatags
when they are not rendered by EXT:seo.

Releases: master
Resolves: #92831
Change-Id: I59fe786b7825663ab6bad77b94a2669dca6bc24b
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66621
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Jörg Bösche <typo3@joergboesche.de>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Jörg Bösche <typo3@joergboesche.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] Build correct redirect url when switching BE user 45/67345/4
Elias Häußler [Tue, 5 Jan 2021 21:27:18 +0000 (22:27 +0100)]
[BUGFIX] Build correct redirect url when switching BE user

With the introduction of Backend url rewrites with #93048,
the generated redirect url to switch backend users was
broken. The redirect url is now created from the "main"
route using the UriBuilder.

Resolves: #93225
Related: #93048
Releases: master
Change-Id: I8ab0f9540c8b3a15789aabd947580d817d386b07
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67345
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[FEATURE] Add DataProcessor to resolve FlexForm data 08/62108/20
Jo Hasenau [Fri, 25 Oct 2019 09:57:25 +0000 (11:57 +0200)]
[FEATURE] Add DataProcessor to resolve FlexForm data

This adds a new data processor which converts the
XML structure of a given FlexForm field into a PHP
array to be used in Fluid templates.

Resolves: #89509
Releases: master
Change-Id: I267defe0b26bca33f636c44edd53d695f1bcb572
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/62108
Tested-by: Jo Hasenau <info@cybercraft.de>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Jo Hasenau <info@cybercraft.de>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Respect mod.web_list.noViewWithDokTypes also in record list 97/66597/5
Eric Chavaillaz [Tue, 10 Nov 2020 09:51:56 +0000 (10:51 +0100)]
[BUGFIX] Respect mod.web_list.noViewWithDokTypes also in record list

The option noViewWithDokTypes is now also respected for
the control panel of a single record in the listing.

Resolves: #92813
Releases: master, 10.4
Change-Id: Ie6ba12bf5dd22039aee28e05585b3d3930b3faeb
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66597
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[TASK] Always handle linktypes in linkvalidator as list 19/66319/7
Sybille Peters [Tue, 27 Oct 2020 16:15:18 +0000 (17:15 +0100)]
[TASK] Always handle linktypes in linkvalidator as list

The TSconfig of linkvalidator contains 'linktypes' which is a
list of link types which should be checked
(e.g. 'external','db' ...).

This list of links can have 2 different formats inside internal code:

['external', 'db']
or

[
   'external' => 1,
   'db' => 1
]

Converting this in various places made the code hard to read and error
prone.

Only the first format is now used, which also makes it possible to
simplify the tests.

Resolves: #92715
Releases: master
Change-Id: I7451f707da15a20b21b5fefe5df50ed455a5b733
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66319
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[TASK] Don't try to create language switch for non-persisted records 62/66962/2
Sebastian Michaelsen [Wed, 2 Dec 2020 10:28:26 +0000 (11:28 +0100)]
[TASK] Don't try to create language switch for non-persisted records

The language switch is never rendered for non-persisted records,
so the method to create it should not be called in this sitation.

Resolves: #92971
Releases: master, 10.4
Change-Id: If6d85a7bbf44a841f08d0331da3e5e0943232953
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66962
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] Respect newContentElementWizard TSconfig in fluid based page module 71/66071/4
Christian Eßl [Wed, 7 Oct 2020 14:27:55 +0000 (16:27 +0200)]
[BUGFIX] Respect newContentElementWizard TSconfig in fluid based page module

The fluid based page module, introduced in v10 and the only
available variant since v11, does now correctly respect the
TSconfig options 'mod.web_layout.disableNewContentElementWizard'
and 'mod.newContentElementWizard.override' again.

Resolves: #92504
Releases: master, 10.4
Change-Id: I0a1f04e700ecaf131e735e05d6fc36c2bf313dc3
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66071
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Fix "view" option in context menu 37/67337/4
Oliver Bartsch [Mon, 4 Jan 2021 16:07:18 +0000 (17:07 +0100)]
[BUGFIX] Fix "view" option in context menu

The context menu no longer offers the "view" option
for excluded doktypes like "spacer".

Resolves: #93215
Releases: master, 10.4
Change-Id: If9bdcd447c340f052ee12f83f26e4c57c637ec32
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67337
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] FormEngine does not edit workspace delete placeholders 25/67325/3
Christian Kuhn [Fri, 1 Jan 2021 16:53:27 +0000 (17:53 +0100)]
[BUGFIX] FormEngine does not edit workspace delete placeholders

Workspace delete placeholders are just a marker that a
live record should be deleted in live when the delete
placeholder is published. Actual field data does not matter.
Those records should thus never be editable via FormEngine.

With patch, FormEngine throws an exception when a delete
placeholder is edited. Additionally, the module menu language
selector drop down when editing a record is adapted to not
link to delete placeholder workspace translations.

Change-Id: Iaf73777ffb1d01e6fde5bef1eaa4e281a1b46fe1
Resolves: #88153
Releases: master, 10.4
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67325
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
3 months ago[BUGFIX] Look at whole word checking for *Scanned 32/67332/3
Martin Kutschker [Sun, 3 Jan 2021 20:48:52 +0000 (21:48 +0100)]
[BUGFIX] Look at whole word checking for *Scanned

The words FullyScanned, PartiallyScanned and NotScanned
must not have any leading or trailing characters
when on the last line of an ReST file for
breaking changes or deprecations.

Resolves: #93208
Releases: master, 10.4
Change-Id: I4a8f0e7cf61cc885df3566e2fb4621c80d82f744
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67332
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
3 months ago[TASK] Drop non hashed session fallback 23/67223/5
Christian Kuhn [Mon, 21 Dec 2020 16:50:31 +0000 (17:50 +0100)]
[TASK] Drop non hashed session fallback

The security fix related to better hashed sessions
had fallbacks to deal with existing non hashed sessions.
This was for a smooth transition in security patch
level releases. The patch drops these fallbacks in master.

Resolves: #93140
Releases: master
Change-Id: I68172fd26619d93068fc6a2490134bfb9b8a204e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67223
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
3 months ago[BUGFIX] Reduce ses_id field length 36/67336/2
Christian Kuhn [Mon, 4 Jan 2021 15:14:12 +0000 (16:14 +0100)]
[BUGFIX] Reduce ses_id field length

The patch for #93131 increased the db size of field ses_id
in tables fe_sessions and be_sessions from 32 to 255 chars.
The field is the tables primary key.
With mysql/mariadb, if the table is created on an older db
engine version that creates innodb tables with COMPACT
row format using utf8_mb4 charset, the key length now
exceeds the COMPACT maximum index length restrition of 767
bytes: 4*255+1 = 1021 bytes
Since we don't strictly need a varchar(255), the patch
reduces the field to 190, which does not collide with
maximum key length restrictions: 4*190+1 = 761 bytes

Change-Id: Ifc344a68a49ce0b863109cbfe8a7d27c0179c0cf
Resolves: #93150
Related: #93131
Releases: master, 10.4
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67336
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[TASK] Implement t3editor as custom web component 85/67185/15
Benjamin Franzke [Mon, 14 Dec 2020 20:31:53 +0000 (21:31 +0100)]
[TASK] Implement t3editor as custom web component

Remove jQuery dependency, avoid inline javascript and
encapsulate initialization into a web component.

Also use "codemirror" as import name, as that's
what the npm package name is, and will eventually
allow to make use of TypeScript typings.

Releases: master
Resolves: #93149
Change-Id: Ia85784b21a90e1986ea6ba7a915e032aa7963d92
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67185
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
3 months ago[BUGFIX] Remove wrong data-formengine-input-name attribute 35/67335/3
Andreas Fernandez [Mon, 4 Jan 2021 14:34:54 +0000 (15:34 +0100)]
[BUGFIX] Remove wrong data-formengine-input-name attribute

With #93135, selectMultipleSideBySide fields broke and didn't accept new
values as both select fields share the same `data-formengine-input-name`
which confuses the changed CSS selector.

This patch removes the attribute from the "value provider" fields as
it's not required there at all and also adapt FormEngine to not
use the styling related form-select class.

Resolves: #93213
Resolves: #93214
Related: #93135
Releases: master
Change-Id: I2cf4ad6ff4d78072bf5474d7393ad4eb7f771070
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67335
Tested-by: Mathias Brodala <mbrodala@pagemachine.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Mathias Brodala <mbrodala@pagemachine.de>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[BUGFIX] Use `form-select` class for <select> fields 47/67247/9
Andreas Fernandez [Wed, 23 Dec 2020 09:34:08 +0000 (10:34 +0100)]
[BUGFIX] Use `form-select` class for <select> fields

With Bootstrap 5, <select> fields make use of the class `form-select`.
This patch aims to replace every occurrence of `form-control` used with
select fields. Since Bootstrap finally brings proper styling for select
boxes, the custom implementation rendering chevrons can be removed.

In the same run, the `input-$size` classes are migrated to its new class
names and some obsolete classes have been removed.

Resolves: #93135
Releases: master
Change-Id: I0044127cc380bddfbaec0b9f730123959f7288bd
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67247
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[BUGFIX] Fix image processing hint in install tool 85/66285/2
Torben Hansen [Mon, 26 Oct 2020 14:18:36 +0000 (15:18 +0100)]
[BUGFIX] Fix image processing hint in install tool

The setting $GLOBALS['TYPO3_CONF_VARS']['GFX']['colorspace'] is
deprecated since TYPO3 8.0 and is now replaced with
$GLOBALS['TYPO3_CONF_VARS']['GFX']['processor_colorspace']

Since the hint now is too long, a manual linebreak has been added
to avoid the automatic linebreak which adds a minus char to the
processor_colorspace text.

Resolves: #92707
Releases: master, 10.4, 9.5
Change-Id: I5f55f01df8af47eca4d32ae8fa9c7262302bf32f
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66285
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[TASK] Get rid of "PHP Notice: Undefined index" notices 38/64238/9
Thomas Pronold [Sat, 18 Apr 2020 14:18:04 +0000 (16:18 +0200)]
[TASK] Get rid of "PHP Notice: Undefined index" notices

Running a clean installation minimal setup throws
a lot of "PHP Notice: Undefined index: " notices.
This commit removes the ones from the frontend.

Resolves: #91116
Releases: master, 10.4
Change-Id: I1f81150ed48ae170682d68d1169c1de2963e0021
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/64238
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Oliver Bartsch <bo@cedev.de>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Oliver Bartsch <bo@cedev.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[DOCS] Fix wrong reference to global REQUEST_TYPE 30/67330/3
Sebastian Schreiber [Sat, 2 Jan 2021 21:28:25 +0000 (21:28 +0000)]
[DOCS] Fix wrong reference to global REQUEST_TYPE

There is no global variable named REQUEST_TYPE,
it is called TYPO3_REQUEST.

Releases: master
Resolves: #93206
Related: #92947
Change-Id: I86d3c2f8306744f41cfa504f4a42490f4b8eaa6a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67330
Tested-by: Benjamin Franzke <bfr@qbus.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[TASK] Make first install compatible with PHP 8 27/67227/10
Jörn Wagner [Mon, 21 Dec 2020 19:54:08 +0000 (20:54 +0100)]
[TASK] Make first install compatible with PHP 8

Make all the necessary changes to classes used during the first installation to run on PHP 8

Resolves: #93205
Releases: master, 10.4
Change-Id: I93f64b2848e4cea76a4f36d11d394cb09fd8301c
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67227
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[BUGFIX] Do not call "libxml_disable_entity_loader" in PHP 8 29/67329/3
Benni Mack [Sat, 2 Jan 2021 20:53:41 +0000 (21:53 +0100)]
[BUGFIX] Do not call "libxml_disable_entity_loader" in PHP 8

Because the method (finally) is deprecated in PHP 8,
all calls in TYPO3 Core are wrapped in if statements
to avoid deprecation warnings.

PHP 8 effectively is more secure by default,
which is a good thing, but we need to consider this
in our code base, which still supports PHP 7
as well.

Resolves: #93204
Releases: master, 10.4
Change-Id: I18d7e76e3de5cf48cd4c3cab0d68dea4e518f674
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67329
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[BUGFIX] Set property hreflang of SiteLanguage to empty string 88/65888/7
Georg Ringer [Fri, 25 Sep 2020 19:01:51 +0000 (21:01 +0200)]
[BUGFIX] Set property hreflang of SiteLanguage to empty string

By defining `$hreflang` of SiteLanguage to an empty string instead of
'en-US' wrong hreflang tags are avoided in the frontend.

Even though the field is set to required there are usecases where this
field is not set, e.g. by changing the site configuration manually. This
would have lead to hreflang tags pointing to a valid site but with a
wrong hreflang information.

Resolves: #92418
Releases: master
Change-Id: I042c275a2b107cac48a877c7e4043f69e378347d
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/65888
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Tested-by: Georg Ringer <georg.ringer@gmail.com>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Guido Schmechel <guido.schmechel@brandung.de>
Reviewed-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Reviewed-by: Georg Ringer <georg.ringer@gmail.com>
3 months ago[DOCS] Add hint how to alter or remove hreflang tags 15/67315/4
Richard Haeser [Wed, 30 Dec 2020 10:18:49 +0000 (11:18 +0100)]
[DOCS] Add hint how to alter or remove hreflang tags

In some edge cases you may want to disable or change the rendering of
the hreflang tags. We added some hints how to deal with such cases.

Resolves: #91353
Releases: master, 10.4
Change-Id: Id9ea8a0206cd9df1522d790c2cad93e2ab41afbb
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67315
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
3 months ago[TASK] Update various dependencies to support PHP8 24/67324/4
Benni Mack [Fri, 1 Jan 2021 15:05:19 +0000 (16:05 +0100)]
[TASK] Update various dependencies to support PHP8

A few dependencies now have PHP8 support and PHP 7.2 support,
which we then update to the latest versions, also for v10.4.

Updated dev-dependencies:
* composer req "phpspec/prophecy:^1.12.2" --dev --with-all-dependencies
* composer req "friendsofphp/php-cs-fixer:^2.17.3" --dev --with-all-dependencies
* composer req "phpstan/phpstan:^0.12.64" --dev --with-all-dependencies
* composer req "phpunit/phpunit:^8.5.13" --dev --with-all-dependencies

Non-dev-dependency updates:
* composer req "nikic/php-parser:^4.10.4"

Also fix an undefined variable error that was introduced in #92497
and has now been discovered by the updated phpstan version.

Resolves: #93201
Releases: master, 10.4
Change-Id: Ic8839606ea05a0825a6e518dd644655ecc7c578e
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67324
Tested-by: Benjamin Franzke <bfr@qbus.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[DOCS] Remove reference to TYPO3 4.5 and 6.2 from felogin 22/67322/3
Ingo Schmitt [Fri, 1 Jan 2021 14:41:59 +0000 (14:41 +0000)]
[DOCS] Remove reference to TYPO3 4.5 and 6.2 from felogin

Releases: master, 10.4
Resolves: #93199
Change-Id: I774992a5aee0d51249853dee80f18ade99247ac9
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67322
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[TASK] Use core AjaxRequest instead d3.request 13/67313/4
Benjamin Franzke [Tue, 29 Dec 2020 23:03:53 +0000 (00:03 +0100)]
[TASK] Use core AjaxRequest instead d3.request

d3 is currently manually patched to avoid a
d3.request()/d3.json() bug in chome >= 64 – see #83741.
The patch has not been merged in two years, and d3.request
is deprecated, so it is now replaced.
This will also help to upgrade to D3.js v5/v6 at some
point.

This allows to use an unpatched, vanilla D3.js build again.
While at it, we also streamline the contrib path to avoid the
unecessary d3/ subdirectory.

Commands used:

  grunt build

Resolves: #93186
Related: #83741
Releases: master
Change-Id: I142462272b03edc53c33b2b7233d1902911fc837
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67313
Tested-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Andreas Fernandez <a.fernandez@scripting-base.de>
Reviewed-by: Benni Mack <benni@typo3.org>
3 months ago[BUGFIX] Initialize module menu only if present in HTML 54/67254/3
Martin Kutschker [Mon, 28 Dec 2020 09:08:59 +0000 (10:08 +0100)]
[BUGFIX] Initialize module menu only if present in HTML

Loading the module menu on any page caused a JavaScript error.
The fix prevents this by checking if the necessary HTML
for the module menu is found in the HTML.

Resolves: #91913
Releases: master
Change-Id: I7d52b82706a06215583794b7bb4f9ffe44e3711a
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/67254
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Riccardo De Contardi <erredeco@gmail.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>
3 months ago[BUGFIX] Load dependencies of ImmediateActionElement dynamically 95/65795/5
Andreas Fernandez [Sun, 20 Sep 2020 11:42:13 +0000 (13:42 +0200)]
[BUGFIX] Load dependencies of ImmediateActionElement dynamically

The module ImmediateActionElement is used to render a defined custom
HTML tag triggering certain actions once it's rendered, like reloading
the module menu or the backend's topbar. To achieve this, it needs
functionality from the modules TYPO3.ModuleMenu.App.refreshMenu and
TYPO3.Backend.Topbar.refresh.

This module is loaded at a very early stage where those dependencies
cannot do anything meaningful as there is nothing to do, namely the
backend login, which causes JavaScript warnings and increases loading
time.

To relax the situation, the modules are now loaded dynamically when
required by using async functions.

In a perfect world, there would be some kind of a hooking system and no
hardcoded list of actions, but we're not there, yet.

Resolves: #92350
Releases: master, 10.4
Change-Id: I50029789f564ce339b3204d51f61e4cc39bb3cf9
Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/65795
Tested-by: TYPO3com <noreply@typo3.com>
Tested-by: Richard Haeser <richard@richardhaeser.com>
Tested-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Tested-by: Benjamin Franzke <bfr@qbus.de>
Reviewed-by: Richard Haeser <richard@richardhaeser.com>
Reviewed-by: Martin Kutschker <mkutschker-typo3@yahoo.com>
Reviewed-by: Benjamin Franzke <bfr@qbus.de>