- 13 Jan, 2022 2 commits
-
-
This introduces a new PSR-14 event, enabling extension authors to modify the header and footer content of the page module in a flexible way, since also reordering and overwriting is possible now. This replaces the previously available hooks - $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/db_layout.php']['drawHeaderHook'] - $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/db_layout.php']['drawFooterHook'] which are now removed. Resolves: #96526 Releases: main Change-Id: I5fb3f3098394b70ecc4e5cc11c804f7125ad2a4a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73003 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
Oliver Bartsch authored
To improve the workflow for editors while selecting records or folders in TCA type "group" fields, a new field configuration "entryPoints" is introduced. It can be used to define the default page / folder, which should be selected when opening the element browser. This can be configured for all or for each table individually. This configuration might be quite useful since TYPO3 systems usually use dedicated storage pages for record types nowadays. To further support site administrators, the new configuration also allows the usage of the known TCA markers and additionally is also added to FormEngine's "allowOverrideMatrix". Resolves: #91077 Releases: main Change-Id: Ie6e4e8675ff07288480bce69467805409defdc57 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72911 Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Jochen <rothjochen@gmail.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Jochen <rothjochen@gmail.com> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
- 12 Jan, 2022 4 commits
-
-
Global constants TYPO3_version and TYPO3_branch have been deprecated with introduction of class \TYPO3\CMS\Core\Information\Typo3Version in v9.5.15 and are removed together with some last usages. Resolves: #96523 Related: #96107 Releases: main Change-Id: I0fd90a9f913d83a555a9744117f76d63468a1048 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73000 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
Custom FormEngine components loading additional RequireJS modules must use corresponding JavaScriptModuleInstruction instances to declare modules and optional method invocations. Assigning scalar values to FormEngine node section 'requireJsModules' (e.g. used for arbitrary inline JavaScript callbacks) is not possible anymore and will throw a LogicException. Resolves: #96221 Related: #95200 Releases: main Change-Id: I8c487fa3914a46ae1ce2e75db0bf6a59756273d3 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72485 Tested-by:
core-ci <typo3@b13.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>
-
Christian Kuhn authored
This patch introduces a new EXT:fluid view class "BackendTemplateView" to be used as main view for backend-related non-Extbase views. This class is the base of a new non-Extbase and non-request dependent backend view. The class is for now marked @internal and experimental since we'll probably add a factory to configure backend template overrides for any backend view later-on. A few ViewHelpers are changed to work without accessing the request if enough VH arguments are provided. This is the first patch in a series of patches that will switch from StandaloneView usages in backend controllers to this new BackendTemplateView. Basic strategy: * $view->getRequest()->setControllerExtensionName('SysNote') is removed. This is Extbase-specific and not needed nor wanted for common non-Extbase controllers. * Instantiate the View (for now with makeInstance, will be replaced with a factory later-on) * Set the needed paths via ->setTemplateRootPaths() etc. For these, we *always* use the main extension's entry templating paths, for instance 'EXT:sys_note/Resources/Private/Templates' or 'EXT:sys_note/Resources/Private/Partials'. We do *not* use sub directories here to clear up path logic. * ->assign() / ->assignMultiple() whatever is needed. * ->render('SubDirectory/TemplateName') the actual action / template, no '.html' suffix. As a demo, EXT:sys_note is adapted accordingly which hands over arguments to the above mentioned VH's in a way so these don't access the request object anymore. The sys_note code gets a couple of additional changes so the hooks can prepare request dependent arguments and set them as template variables (here: returnUrl). This patch triggers a hidden gem: Since ViewHelpers no longer receive an Extbase request, they also don't trigger Extbase magic anymore. The casual victim here is f:translate, which has already been prepared to not trigger Extbase's frontend TypoScript parsing if there is no Extbase request. This often improves backend view performance by 25% or more, depending on the amount of frontend TypoScript to parse. Further patches will adapt other core backend routes and will relate to this patch for reference. Change-Id: I4fec3ad690452a00e731c9f6928273048397dd89 Resolves: #96513 Related: #96473 Releases: main Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72966 Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Oliver Bartsch authored
Instead of using multiple "fake" <option> elements with the same value `--div--`, the SelectMultipleSideBySideElement does now use proper HTML <optgroup> elements for grouping of the available options. This is in line with other select elements, e.g. the SelectSingleElement. Besides the improved HTML markup, this also improves the UI, since the <optgroup> element is non-selectable. It is also no longer considered by the filter, which previously led to confusion, especially when filtering and having the "dividers" as only options left. Resolves: #95137 Releases: main, 11.5 Change-Id: Ia51e2623217eb0c7abd6c0cd2e9c4a742686641d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72992 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Jochen <rothjochen@gmail.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Jochen <rothjochen@gmail.com> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
- 11 Jan, 2022 3 commits
-
-
Oliver Bartsch authored
With #95387 the menu generation of the page module was moved to the end of the request handling method. However, the `makeActionMenu()` method does currently not only create the menu but does also make some sanity check, whether the currently selected `function` is actually available. If not, the `function` is reset to the default ("columns mode"). This e.g. happens when in languages mode and then switching to another domain / another site, which is single language only. This then led to the user being unable to work in "columns mode", since no action menu is generated for such sites. This is now fixed by executing the mentioned method before the content gets generated. Resolves: #96084 Related: #95387 Releases: main, 11.5 Change-Id: Iadb67ece1724b6d34a4724d7782bdd295cece642 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72971 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Jochen <rothjochen@gmail.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Jochen <rothjochen@gmail.com> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Benni Mack authored
This change keeps the anchor when clicking on a page in the link browser. Resolves: #93893 Related: #89033 Releases: main, 11.5 Change-Id: I65a876a4fecf508b810e08116810f3cd73e30c19 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72935 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Wouter Wolters <typo3@wouterwolters.nl> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org>
-
NewRecordController (+ icon in doc header of list module) renders "Create a new page" on top. This is not a link and looks misplaced. It is a 'section header' for optional content that can be enabled via pageTS. mod.wizards.newRecord.pages.show.pageSelectPosition = 1 mod.wizards.newRecord.pages.show.pageInside = 1 mod.wizards.newRecord.pages.show.pageAfter = 1 When at least one of these are enabled, the header makes sense, but should be avoided otherwise. Resolves: #96505 Releases: main, 11.5 Change-Id: I6468cda44e719f268f6b59d7e61f240737da6f33 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72962 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-
- 10 Jan, 2022 2 commits
-
-
Benjamin Franzke authored
This change is preparatory refactoring in order to support native JavaScript modules (ESM) where a module can't be used both as classic script-src and as ES6 module providing exports at the same time (this was/is possible for AMD as implemented in #95953): `export` is an invalid keyword in non-module scripts and cannot be specified conditionally, that is very different to AMD modules where `define()` can be called conditionally. JavaScriptHandler currently has three execution modes: * If used as script-scr: Call processItems from text content for: * RequireJS configuration * Generic JavaScriptItems processing * If used as AMD module: * Generic JavaScriptItems processing JavaScriptHandler is now separated into the following three concerns: JavaScriptItemProcessor ----------------------- The previous processor "mode" is now available as streamlined JavaScriptItemProcessor module, in order to drop type invariance (it requires parsed objects instead of allowing raw json data or objects) JavaScriptItemHandler --------------------- The previous JavaScriptHandler module that processes text content and calls arbitrary hooks has been simplified to the one usecase that was actually being used: Handling JavaScriptItems by parsing the text content. The extracted JavaScriptItemProcessor is used as backend for the actual work. RequireJSConfigHandler ---------------------- The RequireJS configurator is now available as separate module, as this logic is only needed once and not by other modules. There is no need to keep that functionality in JavaScriptItemProcessor, especially as it has been hidden from AMD modules, which complicated the JavaScriptHandler. This extraction also actually allows to make use of modules in JavaScriptHandler and therefore enables the possibility to share code using JavaScriptItemProcessor. Also the code has been migrated to TypeScript. JavaScriptItemHandler and RequireJSConfigHandler do not export or import code, therefore they are usable as plain targets for script-tags. In addition the JavaScriptItemHandler is now executed asynchronously, which allows the browser to parse DOM in parallel. (synchronous mode is required for RequireJS config, but not for loading of requirejs-modules/instructions, they are asynchronous anyway). FileClipboardCest is adapted to wait more than 1 second, since the rerendering of the clipboard (a new iframe request is made) takes longer than 1 second in some test runs (not locally, but on CI) (note: the default 1 second wait timeout is configured in typo3/sysext/core/Tests/Acceptance/Application.suite.yml, but that's too less in this case). Releases: main Resolves: #96476 Related: #95953 Related: #96323 Change-Id: I48a5751cea03537344e925beba365841e0855dde Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72892 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
Oliver Bartsch authored
Resolves: #96481 Releases: main, 11.5 Change-Id: I41eeb4ecf0b90e998875701131b2c8a35bfa3225 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72906 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
- 08 Jan, 2022 1 commit
-
-
The type can already be inferred from the source code. The cleanup was run automatically with a PHPStorm plugin. Resolves: #96482 Releases: main Change-Id: I669145adc66dc898f3016de1958cf0105c988243 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72907 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- 07 Jan, 2022 2 commits
-
-
In order to be able to influence the query of the LiveSearch, a new PSR-14 event ModifyQueryForLiveSearchEvent is added. This event can be used to e.g. adjust the query limit or to change the result order. Resolves: #93494 Releases: main Change-Id: I5990855d14e9de72adcba1449fb3f5336c004750 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/68528 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Sorting query results by text columns may require a filesort on harddisk which is slow. To boost up the search results of LiveSearch we have added an ORDER BY uid DESC to always show the newest created records first. Column "uid" exists in all TCA tables and as it is PRIMARY INDEX sorting will happen in memory. Resolves: #96365 Releases: main, 11.5 Change-Id: Icbf6e8c7717a495aaee995ff09cf2cd882173e65 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72669 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- 05 Jan, 2022 1 commit
-
-
We removed the SQL query on pages (column: pid) for TYPO3 administrators, because this group of people has access to all pages anyway. Especially in large TYPO3 instances the collection of all pages UIDs took a lot of time. Resolves: #96356 Releases: main, 11.5 Change-Id: I436e15e79ce590c4228b9a9034f83497fa1db92e Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72661 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- 04 Jan, 2022 1 commit
-
-
Benjamin Franzke authored
With the changes in #95854, database mounts are no longer sorted by the order they are defined in the group/user settings, but undefined by the order the database returns. DB mounts aren't sorted against each other, that means sorting values are not meaningful anyway, and results in uncontrolable orderings. Explicitly preserve the order using usort(). Also revert groupAndSortPages() to the state prior to #95854, as the forcePid parameter would now be unused. Releases: main, 11.5, 10.4 Resolves: #96359 Related: #95854 Change-Id: I64b8d90c68246cc0ac01abcbf3678aa1055189e3 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72813 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
- 03 Jan, 2022 3 commits
-
-
Benjamin Franzke authored
A human-readable diff of the applied changes can be inspected on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72768/1/Build/Sources/TypeScript/backend/Resources/Public/TypeScript/FormEngine.ts https://review.typo3.org/c/Packages/TYPO3.CMS/+/72768/1/Build/Sources/TypeScript/backend/Resources/Public/TypeScript/FormEngineValidation.ts Notes: * No major refactoring to keep the diff minimal and prepare behaviour as-is * Map imports to require-style * Added default sections in switch statements * Guard parseInt and Date.parse with typeof/instanceof * Use event.eventTarget instead of this in jQuery event callbacks * Use second method parameter in jQuery.each callbacks * Add @ts-ignore and eslint-disable-next-line where TypeScript adaptions aren't possible without possibly changing behaviour Releases: main Resolves: #82586 Resolves: #82590 Resolves: #96425 Related: #96323 Change-Id: I372c78ae581e2254f150000ad6b75ff4f005916f Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72768 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
Benni Mack authored
This change reduces the amount of @todos regarding method changes related to strict typing or interface changes for TYPO3 v12.0. Resolves: #96429 Releases: main Change-Id: I072a70e0126f358d188314389dce15e5011d0993 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72799 Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
Resolves: #96443 Releases: main, 11.5 Change-Id: I9f1c951628cf8872473ff20bbd59ffb769ffe279 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72819 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 30 Dec, 2021 2 commits
-
-
With the changes in #95854, implicit rootPid dbmounts caused duplicated pages in pagetree, because explicit page mounts have been considered multiple times for the pid=0 tree: * First time because of their relationship to pid = 0 * Second time because of their explicit mount (which was sorted into the pid = 0 tree) This happened because #95854 optimized to only use one call to the PageTree repository, which then had the side effect of merging "multiple" pages into one tree, instead of showing "two" separate trees. The patch ensures that multiple page trees are used when the rootPid (0) is included as a webmount. Releases: main, 11.5, 10.4 Resolves: #96367 Related: #95854 Change-Id: I7f421995f2d4aa88bb266fec684565102a4dc080 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72812 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-
This is a preparatory update to help migration to ES2020 modules ("ESM"). TypeScript >=4.1.1 fixes it's es2020 module target to allow import.meta, see https://github.com/microsoft/TypeScript/issues/41249 Also related eslint tools are updated and the configuration format is streamlined to json, while we are at it. (not really needed, just drive-by cleanups) Notes: * @types/chrome is removed because of a conflict. It has been added in #82595 but it has actually never been used. This package contains a dependency to @types/filesystem which is currently not TypeScript 4.5 compatible, therefore both packages are removed. * tsconfig.json is adapted to explicitly configure "useDefineForClassFields": false. With our current target ES2017 this defaults to false, but with TypeScript >=4.3 and target ES2020 the default changes to `true`. Lit requires this setting to be false for decorators to work, so we add explicit configuration as recommended by Lit: ...
-
- 29 Dec, 2021 2 commits
-
-
This option was removed in TYPO3 v9 and is since then always enabled. Also remove usage in Tests along with localizationMode, which does not exist either anymore. Resolves: #96440 Related: #82709 Releases: main Change-Id: Ie3f4c0b6f36b221324241c77496c089c13ac09c3 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72814 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benni Mack <benni@typo3.org>
-
Resolves: #96441 Releases: main, 11.5 Change-Id: Id3ae6ee43d1db5ef2ee46fedb336561bc8049a72 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72815 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Chris Müller <typo3@krue.ml> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Chris Müller <typo3@krue.ml> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 23 Dec, 2021 2 commits
-
-
Benjamin Franzke authored
A human-readable diff of the applied changes can be inspected on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72795/1/Build/Sources/TypeScript/backend/Resources/Public/TypeScript/FormEngineLinkBrowserAdapter.ts No functional change to keep the diff minimal and prepare behaviour as-is. Releases: main Resolves: #88435 Related: #96425 Related: #96323 Change-Id: I512739d5827e2951ac6a63312de380870bdebd8d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72795 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Jochen <rothjochen@gmail.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Jochen <rothjochen@gmail.com> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
This fixes several issues for the case that an editor only has access to translated pages and not to the default language (L=0). Resolves: #95795 Releases: main, 11.5, 10.4 Change-Id: Ied31c7aa5229d3b8686741dd97005f9b5f16ef16 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72616 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Jochen <rothjochen@gmail.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Jochen <rothjochen@gmail.com> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 21 Dec, 2021 4 commits
-
-
Christian Kuhn authored
To stick to best practice, the patch adapts all f:uri.resource ViewHelper usages to "EXT:" syntax. Resolves: #96423 Related: #96414 Releases: main Change-Id: Icba87d954f939a42ca59fbe78e7c932f0228f11e Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72766 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Simon Gilli <typo3@gilbertsoft.org> Tested-by:
Wouter Wolters <typo3@wouterwolters.nl> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Simon Gilli <typo3@gilbertsoft.org> Reviewed-by:
Wouter Wolters <typo3@wouterwolters.nl> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Benjamin Franzke authored
Helps to migrate to ES6 modules as that's just a tsconfig setting then. Releases: main Resolves: #96409 Related: #96323 Change-Id: Ib897c3c2cfdb6d7ff0a88ea70ed9213b33dd2138 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72753 Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
Andreas Fernandez authored
The category starting points introduced with #95037 were designed to allow comma-separated values in its configuration. Due to improper tests, this specific notation was not discovered as being broken right now. If the incoming configuration is a string, GeneralUtility::intExplode() is applied to remove any non-integer value. Afterwards, a new CSV string is generated. Resolves: #96397 Related: #95037 Releases: main, 11.5 Change-Id: I0759d8093bb4665b7709f4e20539307467f246df Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72738 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-
Benjamin Franzke authored
RecordExportButton.js has been introduced in #94622 by accident (probably a left-over from a previous patchset re-added due to grunt watch). The TypeScript source for Enum/Viewport/TopbarIdentifiers.js has been removed with #78760, it is unused since then and therefore removed. Releases: main, 11.5 Resolves: #96411 Resolves: #96412 Related: #94545 Related: #78760 Related: #96323 Change-Id: I226d51fc87ab8012e917e7d219688fca21eda364 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72755 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
- 20 Dec, 2021 6 commits
-
-
Benjamin Franzke authored
In ES6 mode Viewport.Topbar and ModuleMenu.App properties cannot be overwritten (in order to be substituted with a call spy), as they reference other JavaScript modules. The properties of ES6 models are readonly ("frozen") and can therefore not be overwritten in a test setup. Therefore the test is adapted to overwrite the references in Viewport and ModuleMenu instead. Also a timeout is added as await import('TYPO3/CMS/Backend/ModuleMenu') does not guarantee a loading order between modules in ES6, which causes test asserts to be executed too early. Releases: main Resolves: #96396 Related #96323 Change-Id: I5c213b70e43c5e1256e91ffe0d9f12f96dbb6615 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72736 Tested-by:
core-ci <typo3@b13.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>
-
Christian Kuhn authored
The patch makes the bulk of ViewHelper classes more strict and applies some general love. Some ViewHelpers have been left, those will see bigger refactorings soon. All affected classes are final, the changes are (hopefully) non-breaking. * declare(strict_types=1) if missing. * Use self:: instead of static:: since all VH's are final, so there is not point in using late static binding. * Return and argument type hints where possible and reduction of methods doc annotations which are covered by PHP method signatures. * Add types to some class properties. * Protect some detail methods that were apparently public by accident. This is not considered breaking. * Avoid extbase LocalizationUtility::translate() in favor of core LanguageService. * Avoid static class state, especially with TSFE. * Minor comment fixes. Change-Id: I4e3b9d01ea92802e47d05a10f4243196120b8510 Resolves: #96400 Related: #96368 Releases: main Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72741 Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Christian Kuhn authored
BackendController renders "Main.html" as central backend skeleton, plus "Topbar.html" and "MainModule.html". The patch moved the templates into one folder. Resolves: #96404 Releases: main Change-Id: I485d9ff03e457d78c8454e36ac893fbbc1ffe77c Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72746 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
Resolves: #96392 Related: #95320 Releases: main Change-Id: I6dfe1e5ea95c1e5ceb748e2b1c50eec8644f1ecf Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72732 Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-
theChar is not initialized and therefore pollutes global scope. (It is assigned to window.theChar in the FormEngine iframe). Currently not an error (we are not using strict mode in RequireJS), just bad style, but once we switch to strict mode (type="module"), this will fail without proper declaration. Releases: main, 11.5 Resolves: #96395 Related: #96323 Change-Id: Ie82da6a1b664e4010179cccaabb07e7d87b19038 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72735 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-
doctrine/dbal:^3.2 changed return type of result for QueryBuilder execute methods, no longer have used prepared statement accessible for further query execution with other placeholder values. To raise doctrine/dbal:^3.2 two places have been changed to reuse the QueryBuilder instance itself instead of prepared statement with the corresponding patch #96287, thus given up the performance gain through reusable query execution plan in corresponding dbms systems. This patch adds support for prepared statements to TYPO3's QueryBuilder facade as this was not publicly available yet for TYPO3 users to be forward-compatible with Doctrine DBAL 3. Resolves: #96393 Related: #96287 Releases: main Change-Id: I814670ebf9920ed3162a31f98ad9efd4031f47c9 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72610 Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- 17 Dec, 2021 1 commit
-
-
Christian Kuhn authored
As anticipated in v11 with #95298, this patch declares ViewHelper classes PHP final, third party extensions can no longer extend core ViewHelpers. There is one exception: The ext:fluid FormViewHelper, which is currently extended by ext:form. This can't be resolved easily since it's on one hand quite a bit of code that would have to be copied, and more importantly, the FormField* ViewHelpers refer to the "parent" FormViewHelper class name in various places. Declaring FormViewHelper final thus needs a different refactoring, which may be done in v12 with further patches. Resolves: #96368 Related: #95298 Releases: main Change-Id: I7e8a587dadef4e411390710dd47e309cd2414e65 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72671 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- 16 Dec, 2021 2 commits
-
-
Oliver Bartsch authored
The new `setContext` method is added to the ProviderInterface, making the API more robust. Resolves: #96333 Releases: main Change-Id: I1e2c2de893c247845a3640cac37fd76acead5595 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72670 Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Christian Kuhn authored
To prepare making all view helpers final as anticipated with #95298, ext:backend ThumbnailViewhelper must no longer extend ext:fluid ImageViewHelper. The patch is a simple transition, we may later have a look at the ThumbnailViewHelper again, since probably some of the possible arguments are not needed for thumbnails. Resolves: #96362 Related: #95298 Releases: main Change-Id: Ibf0f3ac108ab1849454769a947061a4604eb9fbf Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72666 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- 15 Dec, 2021 2 commits
-
-
Resolves: #96308 Releases: main, 11.5, 10.4 Change-Id: Ibcbda7fd97a338d721cf00b38026727e941c72ac Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72598 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Christian Kuhn authored
$command being either 'new' or 'edit' is tested in a previous if() a couple of lines above already. Resolves: #96357 Releases: main Change-Id: I8088d50df6c854127ebecb8038a648fdad9af172 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72662 Tested-by:
core-ci <typo3@b13.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>
-