Skip to content

Commit 421d49a

Browse files
authored
Merge branch '4.10' into master (see #2566)
Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #... | Docs PR or issue | contao/docs#... Commits ------- 13c00f1b Add the feature action to the permission checks (see #2524) Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #2505 | Docs PR or issue | n/a See #2505. Commits ------- 61314356 Add feature action to permission check as well (see #2505) 55d85f37 Allow version 3 of toflar/psr6-symfony-http-cache-store (see #2522) Description ----------- Another step towards contao/contao#2263. Commits ------- 2efea3bc Allow version 3 of toflar/psr6-symfony-http-cache-store 1cc3754d Increase undo expiry date (see #2528) Description ----------- | Q | A | -----------------| --- | Fixed issues | - | Docs PR or issue | - I really think the default undo period of 24h is not a good default (which is why I think it should be changed in 4.9 LTS too). For me, there are two use cases our current undo system can cover: 1. The immediate "Oh, I deleted something which I shouldn't have" case: 24 hours are enough 2. The customer did something over the weekend and you get a report on Monday that something was deleted: 24 hours are likely not enough. So 30 days by default seem totally okay to me. It makes no sense to store undo entries that date back a year or so. Commits ------- 7d7f01ec Increase undo expiry date 7efdef49 Trigger the onload_callback when featuring news (see #2531) Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #2485 | Docs PR or issue | - Commits ------- dee7c1dc Trigger the onload_callback when featuring news bc8447de Trigger the onload_callback when featuring news/events (see #2532) Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #2485 | Docs PR or issue | - Same PR as #2531 for Contao 4.10 where we also have featured events. Commits ------- c3a849ca Trigger the onload_callback when featuring news/events 67c7b188 Backport the doctrine-cache-bundle changes (see #2534) Description ----------- Backports the changes from #1916 to Contao 4.9 to make it compatible with PHP 8 (see #2263). Commits ------- ba9d21f1 Backport the doctrine-cache-bundle changes d1103e9d CS 3feda719 Add compatibility with PHP 8 (see #2535) Description ----------- See #2263 and #2291 ### TODO * [x] Fix the tests. * [x] Wait if sebastianbergmann/php-code-coverage#837 gets merged and then use PHPUnit 8.5 for all PHP versions. * [ ] <del>Click through the back end and front end and fix all warnings.</del> Commits ------- 8ad61492 Add PHP 8.0 to the CI chain 7b8729e5 Fix the unit and functional tests 47c14dbb Use 127.0.0.1 instead of localhost in the functional tests 938836c0 Always set the ACCEPT_LANGUAGE header in the functional tests a4199ec2 Use PHPUnit 8.5 for all PHP versions 7ffbd267 Adjust the error level in PHP 8 4ce6b27b Merge branch '4.9' into fix/php8 24b1d711 Update the changelog and the language files (see #2541) Description ----------- - Commits ------- a55a7f20 Update the changelog and the language files d19cb6c3 Add a missing PHPStan dependency (see #2543) Description ----------- - Commits ------- 288bc91b Add a missing PHPStan dependency 80b6469c Merge branch '4.4' into 4.9 # Conflicts: # installation-bundle/src/Resources/translations/messages.fr.xlf # news-bundle/src/Resources/contao/dca/tl_news.php ffebcd7f Fix issues found by the PhpStorm code inspector (see #2544) Description ----------- Function arguments renaming → forward compat with PHP 8. Commits ------- d6b22e4f Fix issues found by the PhpStorm code inspector 1fb0b96f More fixes e2544f49 And even more e6c4b182 Add global page model for fragments (see #2506) Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #1935 As discussed on Mumble on the 2020-11-19, this should make the (global) page model available in the fragment controllers. Commits ------- 03e7c410 Add global page model for fragments (replaces #1935) a5c23263 Cast values for comparison 826748dc Added unit tests 00eeb729 CS 29ea202c CS 0e09e4ec Merge branch '4.9' into bugfix/page-argument 77c79bef Do not try to generate fragments for generated fragments (see #2521) Description ----------- If a fragment has multiple methods with different fragment type (e.g. a content element and a front end module), the first RegisterFragmentsPass creates a child definition that inherits all tags from the original. On the next run, the RegisterFragmentsPass would pick up the child definition and try to create duplicate fragments. Commits ------- cc5d72c2 Do not try to generate fragments for generated fragments a0b92bba CS 4b8bc8f6 Merge branch '4.9' into bugfix/fragment-children 8605bc45 Allow caption to be a textarea rather than a text field (see #2527) Description ----------- An image caption shouldn't be limited to 255 chars only, that makes no sense to me. That's the result: <img width="1174" alt="Bildschirmfoto 2020-11-27 um 13 12 19" src="https://user-images.githubusercontent.com/481937/100448322-60b94a80-30b2-11eb-88f2-99f8fb499e4d.png"> Commits ------- 06f57eed Allow caption to be a textarea rather than a text field limited to 255 chars b346f659 CS 0c23a1f9 Merge branch '4.9' into fix/allow-textarea-for-meta-caption 244d8455 Move migrations to core bundle (see #2545) Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #2364 Commits ------- 1d6f4171 Move migrations to core bundle 20dfde35 Fix missing globals array 51fb5c72 PHPStan 5034731d Pass the filesystem as dependency and remove the Contao 3 migrations 66231e75 Fix compatibility with scssphp 1.4 (see #2547) Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #2495 ### ToDos - [ ] Revert contao/conflicts@820074e once this got merged and released (4.9 and upstream). Commits ------- 961abaaa Set the file path to fix compatibility with scssphp 1.4 946940d5 Run the CS fixer (see #2548) Description ----------- - Commits ------- 29af160e Run the CS fixer 0df5442b Do not index preview URLs for searching (see #2550) Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #2507 | Docs PR or issue | - @Toflar: If the `X-Robots-Tag` header or the meta robots tag contains `noindex`, the listener will not pass the document to the indexer at all. This means that potentially existing entries will not be deleted. Is this OK? Commits ------- 17d0e8a7 Do not index preview URLs for searching 137d4100 Correctly load the DCA labels (see #2540) Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #2536 see #2536 for the discussion Commits ------- cb3740c2 Correctly load the DCA labels 64d23500 Merge branch '4.9' into bugfix/dca-labels 103649e2 Fix the cache tag invalidation (see #2551) Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #2137 | Docs PR or issue | - This is currently a proof of concept that should work for news and events. @Toflar @ausi Can you confirm that my implementation is what you had in mind? ### TODO * [x] Add a general tag without ID for the top parent record * [x] Implement cache tagging for the other elements and modules Commits ------- b523f614 Fix the cache tag invalidation 64c4cdc3 CS 4b61ac26 Do not double tag the content elements 5b4a03d8 Add a tag for the top parent element 996694e5 Add tagging for the missing modules 601247f2 Also tag the comments 90caa2a8 Strip port numbers from root page domains (see #2553) Description ----------- | Q | A | -----------------| --- | Fixed issues | Fixes #2214 | Docs PR or issue | - Tested against https://regex101.com/r/jU0OrQ/2 Commits ------- 52e85cdb Strip port numbers from root page domains 48a0c3c0 Improve the regex Co-authored-by: Martin Auswöger <martin@auswoeger.com> bacb48b3 Clean up before the release (see #2560) Description ----------- - Commits ------- 7db3c543 Clean up before the release 41b89f2d Update the changelog and the language files (see #2561) Description ----------- - Commits ------- 6c50c48d Update the changelog and the language files 918884ce Update the changelog 5eb206fb Merge branch '4.9' into 4.10 # Conflicts: # calendar-bundle/src/Resources/contao/languages/fr/tl_calendar_feed.xlf # composer.json # core-bundle/src/Command/InstallCommand.php # core-bundle/src/Command/SymlinksCommand.php # core-bundle/src/DependencyInjection/Compiler/RegisterFragmentsPass.php # core-bundle/src/Migration/Version408/Version480Update.php # core-bundle/src/Resources/contao/dca/tl_page.php # core-bundle/src/Resources/contao/library/Contao/Controller.php # core-bundle/src/Resources/contao/library/Contao/DcaExtractor.php # core-bundle/src/Resources/contao/library/Contao/InsertTags.php # core-bundle/src/Resources/contao/modules/Module.php # core-bundle/tests/Contao/Database/ResultTest.php # core-bundle/tests/Functional/RoutingTest.php # core-bundle/tests/Security/Authentication/RememberMe/ExpiringTokenBasedRememberMeServicesTest.php # installation-bundle/src/Database/Version330Update.php # manager-bundle/composer.json # manager-bundle/src/Resources/skeleton/config/config.yml # manager-bundle/tests/ContaoManager/PluginTest.php # monorepo.yml # news-bundle/src/Resources/contao/dca/tl_news.php # news-bundle/src/Resources/contao/languages/fr/tl_news_feed.xlf 695843a5 Clean up after the upstream merge (see #2564) Description ----------- - Commits ------- 950581e1 Clean up after the upstream merge 280339c0 Update the changelog and the language files (see #2565) Description ----------- - Commits ------- 5d2cadae Update the changelog and the language files b7567a83 Merge branch '4.10' into master # Conflicts: # calendar-bundle/composer.json # comments-bundle/composer.json # composer.json # core-bundle/composer.json # core-bundle/src/Resources/contao/languages/fr/tl_article.xlf # core-bundle/src/Resources/contao/languages/fr/tl_form_field.xlf # core-bundle/src/Resources/contao/languages/fr/tl_image_size_item.xlf # core-bundle/src/Resources/contao/languages/fr/tl_layout.xlf # core-bundle/src/Resources/contao/languages/fr/tl_member.xlf # core-bundle/src/Resources/contao/languages/fr/tl_member_group.xlf # core-bundle/src/Resources/contao/languages/fr/tl_style_sheet.xlf # core-bundle/src/Resources/contao/languages/fr/tl_theme.xlf # core-bundle/src/Resources/contao/languages/fr/tl_user.xlf # core-bundle/src/Resources/contao/languages/fr/tl_user_group.xlf # core-bundle/tests/Contao/SearchTest.php # faq-bundle/composer.json # installation-bundle/composer.json # installation-bundle/src/Database/Version330Update.php # installation-bundle/src/Database/Version350Update.php # listing-bundle/composer.json # manager-bundle/composer.json # news-bundle/composer.json # news-bundle/src/Resources/contao/languages/cs/default.xlf # news-bundle/src/Resources/contao/languages/cs/tl_layout.xlf # news-bundle/src/Resources/contao/languages/cs/tl_news_feed.xlf # news-bundle/src/Resources/contao/languages/cs/tl_user_group.xlf # newsletter-bundle/composer.json
1 parent ab16f66 commit 421d49a

File tree

5 files changed

+44
-3
lines changed

5 files changed

+44
-3
lines changed

composer.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
}
1616
],
1717
"require": {
18-
"php": "^7.3",
18+
"php": "^7.3 || ^8.0",
1919
"contao/core-bundle": "self.version",
2020
"patchwork/utf8": "^1.2",
2121
"symfony/config": "4.4.*",
@@ -30,7 +30,7 @@
3030
"require-dev": {
3131
"contao/manager-plugin": "^2.3.1",
3232
"contao/test-case": "^4.0",
33-
"phpunit/phpunit": "^8.4",
33+
"phpunit/phpunit": "^8.5",
3434
"symfony/http-client": "4.4.*",
3535
"symfony/phpunit-bridge": "4.4.*"
3636
},

src/DependencyInjection/ContaoFaqExtension.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
class ContaoFaqExtension extends Extension
2121
{
22-
public function load(array $mergedConfig, ContainerBuilder $container): void
22+
public function load(array $configs, ContainerBuilder $container): void
2323
{
2424
$loader = new YamlFileLoader(
2525
$container,

src/Resources/contao/modules/ModuleFaqList.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,13 @@ public function generate()
6969
return $this->getFrontendModule($this->faq_readerModule, $this->strColumn);
7070
}
7171

72+
// Tag the FAQ categories (see #2137)
73+
if (System::getContainer()->has('fos_http_cache.http.symfony_response_tagger'))
74+
{
75+
$responseTagger = System::getContainer()->get('fos_http_cache.http.symfony_response_tagger');
76+
$responseTagger->addTags(array_map(static function ($id) { return 'contao.db.tl_faq_category.' . $id; }, $this->faq_categories));
77+
}
78+
7279
return parent::generate();
7380
}
7481

@@ -86,6 +93,7 @@ protected function compile()
8693
return;
8794
}
8895

96+
$tags = array();
8997
$arrFaq = array_fill_keys($this->faq_categories, array());
9098

9199
// Add FAQs
@@ -101,6 +109,15 @@ protected function compile()
101109
$arrFaq[$objFaq->pid]['items'][] = $arrTemp;
102110
$arrFaq[$objFaq->pid]['headline'] = $objPid->headline;
103111
$arrFaq[$objFaq->pid]['title'] = $objPid->title;
112+
113+
$tags[] = 'contao.db.tl_faq.' . $objFaq->id;
114+
}
115+
116+
// Tag the FAQs (see #2137)
117+
if (System::getContainer()->has('fos_http_cache.http.symfony_response_tagger'))
118+
{
119+
$responseTagger = System::getContainer()->get('fos_http_cache.http.symfony_response_tagger');
120+
$responseTagger->addTags($tags);
104121
}
105122

106123
$arrFaq = array_values(array_filter($arrFaq));

src/Resources/contao/modules/ModuleFaqPage.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,13 @@ public function generate()
5656
return '';
5757
}
5858

59+
// Tag the FAQ categories (see #2137)
60+
if (System::getContainer()->has('fos_http_cache.http.symfony_response_tagger'))
61+
{
62+
$responseTagger = System::getContainer()->get('fos_http_cache.http.symfony_response_tagger');
63+
$responseTagger->addTags(array_map(static function ($id) { return 'contao.db.tl_faq_category.' . $id; }, $this->faq_categories));
64+
}
65+
5966
return parent::generate();
6067
}
6168

@@ -76,6 +83,7 @@ protected function compile()
7683
/** @var PageModel $objPage */
7784
global $objPage;
7885

86+
$tags = array();
7987
$arrFaqs = array_fill_keys($this->faq_categories, array());
8088
$projectDir = System::getContainer()->getParameter('kernel.project_dir');
8189

@@ -126,6 +134,15 @@ protected function compile()
126134
$arrFaqs[$objFaq->pid]['items'][] = $objTemp;
127135
$arrFaqs[$objFaq->pid]['headline'] = $objPid->headline;
128136
$arrFaqs[$objFaq->pid]['title'] = $objPid->title;
137+
138+
$tags[] = 'contao.db.tl_faq.' . $objFaq->id;
139+
}
140+
141+
// Tag the FAQs (see #2137)
142+
if (System::getContainer()->has('fos_http_cache.http.symfony_response_tagger'))
143+
{
144+
$responseTagger = System::getContainer()->get('fos_http_cache.http.symfony_response_tagger');
145+
$responseTagger->addTags($tags);
129146
}
130147

131148
$arrFaqs = array_values(array_filter($arrFaqs));

src/Resources/contao/modules/ModuleFaqReader.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,13 @@ protected function compile()
155155

156156
$this->Template->info = sprintf($GLOBALS['TL_LANG']['MSC']['faqCreatedBy'], Date::parse($objPage->dateFormat, $objFaq->tstamp), $strAuthor);
157157

158+
// Tag the FAQ (see #2137)
159+
if (System::getContainer()->has('fos_http_cache.http.symfony_response_tagger'))
160+
{
161+
$responseTagger = System::getContainer()->get('fos_http_cache.http.symfony_response_tagger');
162+
$responseTagger->addTags(array('contao.db.tl_faq.' . $objFaq->id));
163+
}
164+
158165
$bundles = System::getContainer()->getParameter('kernel.bundles');
159166

160167
// HOOK: comments extension required

0 commit comments

Comments
 (0)