From 7d3b6faf6c5de75259a8d650dea4b776fbf5ebec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Fromme?= Date: Mon, 26 Oct 2026 12:55:06 +0100 Subject: [PATCH] fix: editors can create facts and lineup items again New facts failed with "Field 'keywords' doesn't have a default value": the column is TEXT NOT NULL without a database default and not part of the form. It now gets a TCA default, like the passthrough text columns of dates that are not in the form either. Lineup items are inline children of the lineup content element on standard pages. TYPO3 10 allowed the table there with allowTableOnStandardPages(); the migration to ctrl.security.ignorePageTypeRestriction only covered the slides, so adding a lineup item failed with "Attempt to insert record on pages:... where table is not allowed". Checked locally as an editor: a new record of every table of ep_products and ep_theme goes through FormEngine and DataHandler (dates excepted: hidden, written by the import only). Co-Authored-By: Claude Opus 5.5 --- .../Configuration/TCA/tx_epproducts_domain_model_date.php | 8 ++++++++ .../Configuration/TCA/tx_epproducts_domain_model_fact.php | 4 +++- .../Configuration/TCA/tx_eptheme_domain_model_lineup.php | 3 +++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/packages/ep_products/Configuration/TCA/tx_epproducts_domain_model_date.php b/packages/ep_products/Configuration/TCA/tx_epproducts_domain_model_date.php index b2fa745..6f823af 100644 --- a/packages/ep_products/Configuration/TCA/tx_epproducts_domain_model_date.php +++ b/packages/ep_products/Configuration/TCA/tx_epproducts_domain_model_date.php @@ -142,48 +142,56 @@ return [ 'exclude' => true, 'config' => [ 'type' => 'passthrough', + 'default' => '', ], ], 'product_teaser' => [ 'exclude' => true, 'config' => [ 'type' => 'passthrough', + 'default' => '', ], ], 'concept_popup_text' => [ 'exclude' => true, 'config' => [ 'type' => 'passthrough', + 'default' => '', ], ], 'country_keywords' => [ 'exclude' => true, 'config' => [ 'type' => 'passthrough', + 'default' => '', ], ], 'region_keywords' => [ 'exclude' => true, 'config' => [ 'type' => 'passthrough', + 'default' => '', ], ], 'city_keywords' => [ 'exclude' => true, 'config' => [ 'type' => 'passthrough', + 'default' => '', ], ], 'hotel_keywords' => [ 'exclude' => true, 'config' => [ 'type' => 'passthrough', + 'default' => '', ], ], 'hotel_teaser' => [ 'exclude' => true, 'config' => [ 'type' => 'passthrough', + 'default' => '', ], ], 'bus_pro_id' => [ diff --git a/packages/ep_products/Configuration/TCA/tx_epproducts_domain_model_fact.php b/packages/ep_products/Configuration/TCA/tx_epproducts_domain_model_fact.php index b48b419..9031324 100644 --- a/packages/ep_products/Configuration/TCA/tx_epproducts_domain_model_fact.php +++ b/packages/ep_products/Configuration/TCA/tx_epproducts_domain_model_fact.php @@ -127,7 +127,9 @@ return [ 'type' => 'text', 'cols' => 40, 'rows' => 15, - 'eval' => 'trim' + 'eval' => 'trim', + // Not in the form; the column is TEXT NOT NULL without a database default + 'default' => '', ] ], diff --git a/packages/ep_theme/Configuration/TCA/tx_eptheme_domain_model_lineup.php b/packages/ep_theme/Configuration/TCA/tx_eptheme_domain_model_lineup.php index 29c0de8..8a89cab 100644 --- a/packages/ep_theme/Configuration/TCA/tx_eptheme_domain_model_lineup.php +++ b/packages/ep_theme/Configuration/TCA/tx_eptheme_domain_model_lineup.php @@ -12,6 +12,9 @@ return [ 'tstamp' => 'tstamp', 'crdate' => 'crdate', 'dividers2tabs' => true, + // Lineup items are inline children of the lineup content element on standard pages + // (allowTableOnStandardPages() in TYPO3 10) + 'security' => ['ignorePageTypeRestriction' => true], 'versioningWS' => true, 'hideTable' => true, 'languageField' => 'sys_language_uid',