- Apr 08, 2024
-
-
Christian Kuhn authored
There is an ancient, hidden and not documented hook in ext:lowlevel since "ever": $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['t3lib_fullsearch'] used with "beforeResultTable" and "additionalButtons". Both calls are useless: "beforeResultTable" does not receive any useful information except $this->MOD_SETTINGS (which changed multiple times already without further notice), and "additionalButtons" only receives the current row. There is no further code to act on anything "additionalButtons" may have added. Considering this is within ext:lowlevel "only", only in the complex "DB check" module, and a TER search reveals not a single use ever, it seems to be fair to remove this code without further notice since it very most likely has zero impact to anyone. Resolves: #103549 Releases: main Change-Id: I751ce3b830dbef0b9faa389bbc61353939ccf9f6 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83686 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Christian Kuhn authored
Did you know about $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['indexed_search']['addRootLineFields']? No? Well, that's probably because *nobody* does! According to a TER search, it has never been used. Why? Well, it's an undocumented feature in a detail functionality of indexed_search, and last traces at more obvious places have been removed in v6.0. To use it, a developer not only needs to understand the details of 'rootline_uids' in indexed_search, it also needs to find that "hook", grasp it, add a database field in table index_section, and add FE rendering to deal with it. The patch removes this code without substitution: It has never been used in the wild, is not documented, is most likely broken if anyone actually tries to use it, there has never been a single issue in forge related to it, it is embedded in an area that is hard to understand in the first place, it could be resolved using an XCLASS more easily, and its naming collides with the well-known FE addRootLineFields, which is of course a totally different thing. Resolves: #103553 Releases: main Change-Id: I311e85e207cecc6457f66d0e3f26b7f4e256ddd3 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83691 Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Christian Kuhn authored
Argument $pageId is mandatory in saveStopwordsKeywordsAction() since #102914. The link to that action is created in a fluid section three times: Once with a proper pages uid, twice without. This leads to crashes when trying to "Save stopwords" in the indexed_search BE "detail" module in sections "Words by top count" and "Words by frequency". The patch adds the pages-uid argument for these two sections and simplifies the fluid template a bit along the way. Change-Id: I3819733be4937b56325e8871dde47b0d00a27742 Resolves: #103543 Related: #102914 Related: #103541 Releases: main Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83677 Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Georg Ringer authored
The check for content_from_pid is wrong as it is not the raw database record and therefore the relation is an array. Resolves: #103405 Releases: main, 12.4 Change-Id: I31cfc584d9d1164ef96e1c3bec5ec75cc1619bd7 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83494 Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de>
-
Christian Kuhn authored
The indexed_search class Lexer is used to split strings into words using some weird multibyte magic. It has a "debug" mode, enabled during indexing when ext_conf_template.txt debugMode is true. It then creates a HTML string in its main split2Words() method, which is later written to index_debug along with other debug information. That debug string is then output in the BE module when looking at indexing details, if given. The fun part is, this debug string is reset in-between multiple split2Words() calls, and any indexing always calls the method four times, with the last one being 'description', which is usually empty. This means there is in practice almost never any debug output to show in BE, and even if shown, it is only a fraction of the processed content. The patch removes this lexer debug handling. Resolves: #103550 Releases: main Change-Id: I406a621bc88fc320f348f2e4ba2cf7bc0882e421 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83687 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Christian Kuhn authored
The config label: "Deprecated! Max TTL (hours) for indexed page: The time in hours that is the maximum age of an indexed page before it will get indexed again. Usually the index is kept consistent, therefore you won't need this feature." This message is there since ... *doing some git archaeology* ... SVN id 2006 in year 2007! That's the Changelog entry: "Turn off maxAge setting as this "feature" seems to make no sense at all." Agreed: When content is changed in BE, an IS hook removes the page index, and it will be re-indexed with next call (or via crawler). It seems it's finally time to remove the option plus the attached code without further notice ;) Change-Id: Ia8031ca4bf58d7c8293c1b8eb3f672a1fac2266b Resolves: #103548 Releases: main Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83683 Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Christian Kuhn <lolli@schwar...>
-
Christian Kuhn authored
The indexed_search BE module links to word details. This link is broken in main and v12: * In main, the wordHash argument is a string, but the extbase target action expects an int. * In v12, the wordHash is an int, but is misinterpreted as pages-uid. The patch fixes this by switching from the argument name 'id' to 'wordHash' to suppress the pages-uid "convention" to kick in. In main, the target action argument is declared as string and both arguments are set non-optional. Resolves: #103547 Related: #102975 Related: #96797 Related: #103540 Releases: main, 12.4 Change-Id: Ibd4732d086f1af264ee317c7e7d4fe0f15a15aa4 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83679 Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de>
-
Benjamin Franzke authored
The site sets example referenced TYPO3-provided sets that are not yet available, since the respective implementations (#103034, #103556) have not be merged yet. Use generic examples to avoid confusion. Resolves: #103557 Related: #103437 Releases: main Change-Id: I008d60167a692ec601b89683bf582233b228ab12 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83697 Tested-by:
Benjamin Kott <benjamin.kott@outlook.com> Reviewed-by:
Benjamin Kott <benjamin.kott@outlook.com> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de>
-
- Apr 07, 2024
-
-
Stefan Bürk authored
Issue with the `RedirectService` has been reported wiht #103395 related to non-matching SiteConfig in cases no TypoScript template records exists, like when `b13/bolt` is used in instances. Changes #103437, #103439 and #103554 fixed the mentioned issue #103395 for TYPO3 v13, leaving the issue open for TYPO3 v12. Note: For v12 the regression test dataset needs to be disabled for now, and will be enabled with the upcoming fix. This change adds now some tests for non matching SiteConfiguration for `source_hosts`. Resolves: #103555 Related: #103395 Related: #103554 Related: #103439 Related: #103437 Releases: main, 12.4 Change-Id: I2c72de3fa5f8d8aae5e6d2ca702ea4685cd367b3 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83694 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
Stefan Bürk authored
`\TYPO3\CMS\Core\Site\Entity\Site::isTypoScriptRoot()` has been added with #103437 without adding it to the `\TYPO3\CMS\Core\Site\Entity\NullSite` class and the `\TYPO3\CMS\Core\Site\Entity\SiteInterface` and used in `PageInformationFactory::setSysTemplateRows()`. Calling this method requires that the concrete Site implementation needs to be guaranteed, which is not done with introduced usage with #103439 in method `PageInformationFactory::setSysTemplateRows()`. This change adds now a interface check to call the method only on concrete `Site` entity objects. Resolves: #103554 Related: #103437 Related: #103439 Releases: main Change-Id: I8f1201d7c3e7990a3d7464de2d6d921c7b5de605 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83693 Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com>
-
Oliver Bartsch authored
In order to prevent a TypeError, the rendered view is now casted to string. This is done, since the result might be `NULL`, e.g. in case of using an empty template file. Resolves: #103537 Releases: main Change-Id: I59272fec4b9514f38bb97bc4aff17e86d67ec1ae Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83651 Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de>
-
Christian Kuhn authored
Lexer->lexerConf['removeChars'] is always empty since #93401. Remove it. Resolves: #103551 Related: #93401 Releases: main Change-Id: Ia5fab84836237e5c06e6c045ce5e4d34f085dc9b Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83689 Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de>
-
Lukas Maxheim authored
This change introduces the use of the DataHandler instead of the QueryBuilder when creating backend users via CLI command `backend:user:create`. This ensures that the user is initialized with TCA default options and the creation and history of the new user is logged to the TYPO3 log. Resolves: #102062 Releases: main, 12.4 Change-Id: I78f7093108d1df3c6d37ab7545911365d3c846bb Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82822 Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com>
-
Andreas Kienast authored
When t3editor got streamlined in the past, configuration for flex was defined that conflicts with CodeMirror's internal style definition, leading to UI glitches like "cut out" content, see screenshot attached to the ticket.. This commit removes the conflicting CSS. Resolves: #101442 Releases: main, 12.4 Change-Id: Ie5b9f8d498cdaef0b3455e05e247cb5fd64b0617 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83681 Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Torben Hansen <derhansen@gmail.com> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Torben Hansen <derhansen@gmail.com>
-
Markus Klein authored
As documented by PHP, `\DateTime` or `\DateTimeImmutable` objects created with a timestamp only ('@12345678') as the first constructor argument will use UTC as TimeZone. Creating an object instance without any constructor arguments will use the `date_default_timezone_get()` timezone for the object - and setting the timestamp using `setTimestamp()` will not change the object's timezone. That means, that formatting the value will be done using the object Timezone and **NOT** the default PHP Timezone (`date_default_timezone_get()`). Consequently, this may lead to wrong interpretation of the displayed formatted value in the context of another timezone - if no timezone information (+0000/-0100) is included. This change streamlines this for a couple of places were it is expected to format date, datetime or time values for the current context timezone by ensuring objects get the current timezone set instead of `UTC`. Note: Changing the date default timezone on the fly after an object has been created will show a similar effect like using constructor values, even if the object has been created by using the `setTimestamp()` method. [1] https://3v4l.org/sGEe2 Resolves: #98045 Resolves: #99627 Releases: main, 12.4, 11.5 Change-Id: I095a0b0b376361e25396647d02727ac08f35cae0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/81915 Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Andreas Wolf <andreas.wolf@typo3.org> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de>
-
Benjamin Franzke authored
TYPO3 sites have been enhanced to be able to provide Page TSconfig on a per site basis. Releases: main Resolves: #103522 Change-Id: I1558ca9265fcd0fd9bef83cb47ec9c54a7a0d59c Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83586 Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Benjamin Franzke <ben@bnf.dev> Tested-by:
Benjamin Kott <benjamin.kott@outlook.com> Reviewed-by:
Benjamin Kott <benjamin.kott@outlook.com> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Franzke <ben@bnf.dev>
-
Benjamin Franzke authored
TYPO3 sites are enhanced to be able to operate as TypoScript templates. They act similar to sys_template records with "clear" and "root" flags set. By design a site TypoScript provider always defines a new scope (root-flag) and does not inherit from parent sites (in the rootline). That means it behaves as if the clear-flag is set in a sys_template record. This behavior is not configurable by design, as TypoScript code sharing is intended to be implemented via sharable sets (introduced in #103437). TypoScript dependencies can be included via sets dependencies. This mechanism supersedes the previous static_file_include's or manual `@import` statements (they are still fine for local includes, but should be avoided for cross-set/extensions dependencies), as sets are automatically ordered and deduplicated. Resolves: #103439 Releases: main Change-Id: I971743fc551e51d945f45335dc6ad76404c6edba Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83119 Tested-by:
Benjamin Kott <benjamin.kott@outlook.com> Reviewed-by:
Benjamin Franzke <ben@bnf.dev> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benjamin Franzke <ben@bnf.dev> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Kott <benjamin.kott@outlook.com>
-
Benjamin Franzke authored
Site sets ship parts of site configuration as composable pieces. They are intended to deliver settings, TypoScript, TSConfig and reference enabled content blocks for the scope of a site. Extensions can provide multiple sets in order to ship presets for different sites or subsets (think of frameworks) where selected features are exposed as a subset (example: `typo3/seo-xml-sitemap`). A set is defined in an extensions subfolder in :file:`Configuration/Sets/`, for example :file:`EXT:my_extension/Configuration/Sets/MySet/config.yaml`. The folder name in :file:`Configuration/Sets/` is arbitrary, significant is the `name` defined in :file:`config.yaml`. The `name` uses a `vendor/name` scheme by convention, and *should* use the same vendor as the containing extension. It may differ if needed for compatibility reasons (e.g. when sets are moved to other extensions). TypoScript and PageTS providers will be added in subsequent changes (#103439, #103522). Te...
-
Christian Kuhn authored
The backend uses request GET/POST parameter 'id' as convention for "pages uid" at various places: Especially the BackendModuleValidator checks for this parameter early, to deny access to pages a BE user has no access to. This convention is a broken misuse: There is no such convention, and for instance the filelist module uses 'id' to transfer a selected "storage-uid:path". The BackendModuleValidator mitigates this by calling MU::canBeInterpretedAsInteger() before interpreting that parameter as a pages-uid. The extbase BackendConfigurationManager also uses 'id' to retrieve the FE TypoScript configuration for this "pages-uid", it however does not check with MU::canBeInterpretedAsInteger(), first. The patch adds a MU::canBeInterpretedAsInteger() check to extbase BackendConfigurationManager to be in-line with BackendModuleValidator, and adds `@todo` comments outlining the general misuse of the argument. Change-Id: I9b53a521bde4d3c145bfda2994d81dc4abf9c103 Resolves: #103540 Related: #96797 Releases: main, 12.4 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83674 Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
Christian Kuhn authored
'phash' has been changed from an int to a string with #102975. This leads to a BE crash when selecting details of an indexed page. Make argument 'pageHash' a string instead of an int within the extbase based BE module controller statisticDetailsAction() to enable proper extbase mapping of that argument. Also make this argument non-optional and deal with the value as string in the queries. Resolves: #103541 Related: #102975 Releases: main Change-Id: I14632eab767fcbe861db9e3bafa520b0d16b56a5 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83675 Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech>
-
Christian Kuhn authored
The BE may crash when adding a 'keyword' to a page record using the indexed_search BE module: Field 'keywords' of table 'pages' may be null, the call to GU::trimExplode() has to be sanitized for this case since #101453. Resolves: #103542 Related: #101453 Related: #103541 Releases: main Change-Id: If8bdabd629f35a131b19de1bdd3ac5057c1d4c61 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83676 Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Garvin Hicking <gh@faktor-e.de>
-
- Apr 05, 2024
-
-
Stefan Bürk authored
New core-testing-* images has been build and published in the TYPO3 testing-infrastructure repository and pulled to the core ci gitlab runner instances. [1][2] This change modifies `Build/Scripts/runTests.sh` to set new image version to ensure the usage for all changes based on this change. For information what changed in the image see the patches in the testing-infrastrucure repository linked below. * core-testing-nodejs18 => 1.4 * core-testing-nodejs18-chrome => 1.4 [1] https://nodejs.org/en/blog/vulnerability/april-2024-security-releases/ [2] https://git.typo3.org/typo3/CI/testing-infrastructure/-/commit/712e35c72cd7788d1d6311714b5a0dfe46e743a7 Resolves: #103518 Releases: main, 12.4 Change-Id: Ibaafbd465a21d631f6726064255241aa4b42e726 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83636 Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com>
-
Sybille Peters authored
Doctrine dbal function fetchAssociative() was used in combination with accessing an array element without null colesce. Resolves: #103423 Releases: main, 12.4, 11.5 Change-Id: I6f5842f28722dc8b2716533e818fc40ed2fc25ef Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83582 Reviewed-by:
Jörg Bösche <typo3@joergboesche.de> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
Andreas Kienast authored
The JavaScript module `@typo3/backend/document-save-actions` was introduced in TYPO3 v7 to add some interactivity in FormEngine context. At first it was only used to disable the submit button and render a spinner icon instead. Over the course of some years, the module got more functionality. After some refactorings within FormEngine, the module became rather a burden. This became visible with the introduction of the Hotkeys API, as the `@typo3/backend/document-save-actions` module reacts on explicit `click` events on the save icon, that is not triggered when FormEngine invokes a save action via keyboard shortcuts. Adjusting `document-save-actions`'s behavior is necessary here, but would become a breaking change, which is unacceptable after the 13.0 release. For this reason, said module has been marked as deprecated and its usages are replaced by its successor `@typo3/backend/form/submit-interceptor`. Resolves: #103528 Releases: main Change-Id: Ic4...
-
- Apr 04, 2024
-
-
Andreas Kienast authored
TCA for usage of `sys_file` may configure their allowed extensions by an array (e.g. EXT:bootstrap_package, "Media" content element) which failed as the Element Browser took only strings into account. The class `TcaPreparation` now takes `columnsOverrides` and their respective `overrideChildTca` configuration into account. Resolves: #103316 Releases: main, 12.4 Change-Id: Ie173a0e007ab44bcb9f090a5b7ae8b7eedd9d45a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83296 Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de>
-
Andreas Kienast authored
In the image editor, the "Cropped area" was configured with a `ceil`ed width and height. Since all other dimensions are `floor`ed, this might cause an overlap. Due to the configured cropping mode, defining that the cropping area must never exceed the image dimensions, the cropper library places the cropper to a position that's mathematically correct but not desired. To solve this issue, the `width` and `height` properties fed to the cropper are now `floor`ed as well, basically aligning with the rest of the coordinates. Resolves: #101520 Releases: main, 12.4, 11.5 Change-Id: I981bd185eaf0db60662a5a6b7b423d84112c2150 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83644 Reviewed-by:
Kevin Appelt <kevin.appelt@icloud.com> Tested-by:
Kevin Appelt <kevin.appelt@icloud.com> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Jörg Bösche <typo3@joergboesche.de> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de>
-
Stefan Bürk authored
To harden the Extbase LazyLoadingProxy implementation a new test has been added with #101400, which creates a proxy directly and using ObjectAccess::getProperty() to access a property of the not loadable child proxy class instance. Due to the use of magic methods`__get()` and `__isset()` methods in the `LazyLoadingProxy` class and some wrong assumptions of the Symfony PropertyAccessor simply null has been retrieved even if the concrete class could not been retrieved (property on a null value instead of an object). The property accessor is used under the hood within the Extbase internal ObjectAccess implementation. The Symfony Team recently declared that behaviour a bug and fixed it with releases `7.0.6` and `6.4.6` and now correctly throwing the `PropertyNotAccessibleException`. Failing nightlies with Symfony releases containing the bugfix revealed a incorrect test implementation, using a constructed and unrealistic construct. This change modifies the test to use a correct access on the LazyLoadingProxy without changing the scenario of the test. [1] https://github.com/symfony/symfony/releases/tag/v7.0.6 [2] https://github.com/symfony/symfony/releases/tag/v6.4.6 [3] https://github.com/symfony/symfony/pull/54194 Resolves: #103531 Related: #101400 Releases: main, 12.4 Change-Id: I5bdd52955af138c1e99b4492c9b5a43839c743cf Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83645 Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Torben Hansen <derhansen@gmail.com> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Torben Hansen <derhansen@gmail.com> Tested-by:
Stefan Bürk <stefan@buerk.tech>
-
Oliver Bartsch authored
To regenerate a slug, the fields defined in the TCA "generatorOptions" configuration have to be present in the form. There are cases where those fields are added as hidden fields (e.g. using the "overrideValues" feature). Those fields are now also properly respected for the regeneration. Resolves: #103500 Releases: main, 12.4 Change-Id: I0ca7de4b7d7d09e62ece511aeb16615af3d3a1fa Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83622 Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
Georg Ringer authored
If a page uses a specific page layout, it must be used in the page module. To be in sync with v12 the change is also merged into v12. Resolves: #103501 Releases: main, 12.4 Change-Id: I91341249fd3f6142a9830bb594a8fe1d2d6ded7a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83624 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Andreas Kienast authored
A new hotkey is introduced in the FormEngine scope that lets editors invoke "Save and Close" via `Ctrl/Cmd+Shift+S`. Resolves: #103529 Releases: main Change-Id: I530a1df54707eb69033c8a03ccf58517facf162a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83642 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de>
-
Stephan Großberndt authored
Updated and renamed files and adapted paths and extension names. Resolves: #103497 Releases: main, 12.4 Change-Id: Ib79540d47a9112711d53373de2952203c41ded9a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83618 Reviewed-by:
Chris Müller <typo3@krue.ml> Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Lina Wolf <112@linawolf.de> Tested-by:
Chris Müller <typo3@krue.ml> Reviewed-by:
Lina Wolf <112@linawolf.de>
-
- Apr 03, 2024
-
-
Andreas Kienast authored
This commit changes how the "Toggle all" and option and action button states are determined. Previously, the state was determined via JavaScript, leading to an unexpected rendering change when the module has loaded. To avoid this, the state is now calculated in the controller as the necessary metrics are already known. In the same run, `optionByType.checked` is now a simple bool flag instead of holding arbitrary HTML attributes. Resolves: #103454 Releases: main Change-Id: I2da39063dbb9161873274dadddcc3b0384e36321 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83560 Tested-by:
Benjamin Franzke <ben@bnf.dev> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Benjamin Franzke <ben@bnf.dev> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Jörg Bösche <typo3@joergboesche.de> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de> Tested-by:
Benni Mack <benni@typo3.org>
-
Benni Mack authored
This change adds a new cObject "PAGEVIEW" which has a much simpler usage than "FLUIDTEMPLATE", because it is meant to render a full page like this: page = PAGE page.10 = PAGEVIEW page.10.paths.100 = EXT:site_extension/Resources/Private/Templates Nothing else is needed by default, as a) the layoutRootPaths are resolved to be meant to be under "Templates/Layouts" or "Templates/layouts" b) the partialRootPaths are resolved to be meant to be under "Templates/Partials" or "Templates/partials" automatically are added. The name of the template is resolved from the Page Layout (Backend Layout) identifier, so add a "Templates/Pages/Mypage.html" if there is a backend layout with "mypage" added. In addition, the reserved variables * site (Site object) * language (Site Language object) * page (Page object) * settings (Page / TypoScript Settings) are injected automatically, so the View can work with this information directly. template folders for "pages", "layouts" and "partials" can start with an upper-case or lower-case in order to ensure maximum compatibility and avoid common mistakes. Why do we do this? We've found that FLUIDTEMPLATE is often used for page rendering, but lacks specific usages for pages to be worked directly without the understanding of Fluid internals and TypoScript code. This functionality will be further adapted to be used for further rendering of custom Content Elements and Content Blocks which will follow in subsequent steps. For this reason this API is considered experimental until TYPO3 v13 LTS. Resolves: #103504 Releases: main Change-Id: Ieb2b665945ad671fe7e7c195b3201dbc0dbd7076 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83626 Tested-by:
Benjamin Kott <benjamin.kott@outlook.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Benjamin Kott <benjamin.kott@outlook.com> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
Georg Ringer authored
The menu generation must not reuse the page record from the current page but must use the data from the linked page. Resolves: #101883 Releases: main, 12.4 Change-Id: I491ed6d2f0d33f9bbe2ef934c4304adfae656808 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/80948 Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Christoph Lehmann <christoph.lehmann@networkteam.com> Tested-by:
Ben Robinson <robinson2.ben@gmail.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
Christoph Lehmann <christoph.lehmann@networkteam.com> Tested-by:
core-ci <typo3@b13.com>
-
Mathias Brodala authored
Resolves: #103496 Releases: main, 12.4 Change-Id: I688540c91e85d28eec1951305d63028efa27eb82 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83617 Tested-by:
Markus Klein <markus.klein@typo3.org> Tested-by:
Simon Schaufelberger <simonschaufi+typo3@gmail.com> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Markus Klein <markus.klein@typo3.org> Reviewed-by:
Simon Schaufelberger <simonschaufi+typo3@gmail.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com>
-
Andreas Kienast authored
Executed commands: composer require --dev sokil/php-isocodes-db-i18n:^4.0.21 Build/Scripts/updateIsoDatabase.php Resolves: #103524 Releases: main, 12.4 Change-Id: I052c959bfa85de02f28dfa190b939adcda2207f7 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83640 Reviewed-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
Garvin Hicking <gh@faktor-e.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Andreas Kienast <a.fernandez@scripting-base.de> Reviewed-by:
Andreas Kienast <a.fernandez@scripting-base.de>
-
- Apr 02, 2024
-
-
Nikita Hovratov authored
While extracting dedicated TCA types from the god type `input`, the `valuePicker` option was forgotten for type `email`. Other types like `number` do have this option. An acceptance test is added to ensure this option will not be dropped by accident in the future. Resolves: #103510 Related: #97013 Releases: main, 12.4 Change-Id: I95c51d858ca9cb3caefa174cd8ce5946c8352aa2 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83631 Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
Nikita Hovratov <nikita.h@live.de>
-
Chris Müller authored
Resolves: #103514 Related: #99485 Releases: main Change-Id: I118c1c2473e0411425a634bed0f0f9618b57e371 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83633 Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com>
-
Christian Kuhn authored
Fixes acceptance test database table fields being latin1 instead of utf8mb4. > composer u typo3/testing-framework Change-Id: If3cdb37cd57370237f3104031522baeb70b8b209 Resolves: #103517 Releases: main Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83635 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
Stefan Bürk <stefan@buerk.tech>
-
- Mar 31, 2024
-
-
Torben Hansen authored
Function argument types of the `resolveTree` function in the `DeleteRecords` class already use strict types, so the following typecasts can safely be removed. Resolves: #103506 Releases: main Change-Id: I332a2eabdc3727749ff25fbfeee476d0a6b6b39b Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83627 Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
core-ci <typo3@b13.com>
-