From 1713c81b62347a39d882a5132e4b5562114fa26a Mon Sep 17 00:00:00 2001 From: Benjamin Kott Date: Tue, 30 Sep 2025 13:02:00 +0200 Subject: [PATCH 1/2] [WIP][TASK] Make everything translatable --- Classes/Domain/Repository/DayRepository.php | 10 ++-- .../tx_sessionplaner_domain_model_day.php | 11 ++++ .../tx_sessionplaner_domain_model_link.php | 11 ++++ .../tx_sessionplaner_domain_model_room.php | 11 ++++ .../tx_sessionplaner_domain_model_session.php | 11 ++++ .../tx_sessionplaner_domain_model_slot.php | 11 ++++ .../tx_sessionplaner_domain_model_speaker.php | 11 ++++ .../tx_sessionplaner_domain_model_tag.php | 11 ++++ .../TCA/tx_sessionplaner_domain_model_day.php | 21 ++++++-- .../tx_sessionplaner_domain_model_link.php | 16 ++++-- .../tx_sessionplaner_domain_model_room.php | 37 ++++++++++---- .../tx_sessionplaner_domain_model_session.php | 51 ++++++++++++++++--- .../tx_sessionplaner_domain_model_slot.php | 21 ++++++-- .../tx_sessionplaner_domain_model_speaker.php | 35 ++++++++++--- .../TCA/tx_sessionplaner_domain_model_tag.php | 15 +++++- 15 files changed, 240 insertions(+), 43 deletions(-) create mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_day.php create mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_link.php create mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_room.php create mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_session.php create mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_slot.php create mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_speaker.php create mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_tag.php diff --git a/Classes/Domain/Repository/DayRepository.php b/Classes/Domain/Repository/DayRepository.php index 434a9d7..9a3b57c 100644 --- a/Classes/Domain/Repository/DayRepository.php +++ b/Classes/Domain/Repository/DayRepository.php @@ -40,10 +40,10 @@ public function findByUidList(string $uidList): QueryResultInterface } $query = $this->createQuery(); - return $query->matching( - $query->logicalAnd( - $query->in('uid', $uids) - ) - )->execute(); + $query->matching( + $query->in('uid', $uids) + ); + + return $query->execute(); } } diff --git a/Configuration/TCA/Overrides/tx_sessionplaner_domain_model_day.php b/Configuration/TCA/Overrides/tx_sessionplaner_domain_model_day.php new file mode 100644 index 0000000..c4a1e7d --- /dev/null +++ b/Configuration/TCA/Overrides/tx_sessionplaner_domain_model_day.php @@ -0,0 +1,11 @@ + 'crdate', 'delete' => 'deleted', 'default_sortby' => 'ORDER BY date', + 'languageField' => 'sys_language_uid', + 'transOrigPointerField' => 'l10n_parent', + 'transOrigDiffSourceField' => 'l10n_diffsource', + 'translationSource' => 'l10n_source', 'enablecolumns' => [ 'disabled' => 'hidden', ], @@ -43,6 +47,8 @@ 'date' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_day-date', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'renderType' => 'inputDateTime', @@ -53,11 +59,13 @@ 'rooms' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_day-rooms', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectMultipleSideBySide', 'foreign_table' => 'tx_sessionplaner_domain_model_room', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_room.pid = ###CURRENT_PID###', + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_room.pid = ###CURRENT_PID### AND tx_sessionplaner_domain_model_room.sys_language_uid IN (-1,0)', 'MM' => 'tx_sessionplaner_day_room_mm', 'size' => 6, 'minitems' => 0, @@ -68,6 +76,8 @@ 'slots' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_day-slots', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'inline', 'foreign_table' => 'tx_sessionplaner_domain_model_slot', @@ -82,10 +92,11 @@ 'types' => [ '0' => [ 'showitem' => ' - name, - date, - rooms, - slots + hidden, + name, + date, + rooms, + slots ', ], ], diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_link.php b/Configuration/TCA/tx_sessionplaner_domain_model_link.php index 83fa4ad..93f134d 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_link.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_link.php @@ -17,6 +17,10 @@ 'crdate' => 'crdate', 'sortby' => 'sorting', 'delete' => 'deleted', + 'languageField' => 'sys_language_uid', + 'transOrigPointerField' => 'l10n_parent', + 'transOrigDiffSourceField' => 'l10n_diffsource', + 'translationSource' => 'l10n_source', 'enablecolumns' => [ 'disabled' => 'hidden', ], @@ -32,6 +36,8 @@ 'link_text' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_link-linktext', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'max' => 255, @@ -41,6 +47,8 @@ 'link' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_link-link', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'renderType' => 'inputLink', @@ -48,14 +56,12 @@ ], ], ], - 'palettes' => [ - ], 'types' => [ '0' => [ 'showitem' => ' - --div--;General, - link_text, - link, + hidden, + link_text, + link, ', ], ], diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_room.php b/Configuration/TCA/tx_sessionplaner_domain_model_room.php index bf46fb7..428c790 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_room.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_room.php @@ -17,6 +17,10 @@ 'crdate' => 'crdate', 'default_sortby' => 'ORDER BY name', 'delete' => 'deleted', + 'languageField' => 'sys_language_uid', + 'transOrigPointerField' => 'l10n_parent', + 'transOrigDiffSourceField' => 'l10n_diffsource', + 'translationSource' => 'l10n_source', 'enablecolumns' => [ 'disabled' => 'hidden', ], @@ -31,6 +35,8 @@ 'type' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_room-type', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectSingle', @@ -44,6 +50,8 @@ 'name' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_room-name', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -54,6 +62,8 @@ 'logo' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_room-logo', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'file', 'allowed' => 'common-image-types', @@ -64,6 +74,8 @@ 'seats' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_room-seats', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -74,11 +86,13 @@ 'days' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_room-days', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectMultipleSideBySide', 'foreign_table' => 'tx_sessionplaner_domain_model_day', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_day.pid = ###CURRENT_PID### + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_day.pid = ###CURRENT_PID### AND (tx_sessionplaner_domain_model_day.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_day.sys_language_uid = ###REC_FIELD_sys_language_uid###) ORDER BY tx_sessionplaner_domain_model_day.name', 'MM' => 'tx_sessionplaner_day_room_mm', 'MM_opposite_field' => 'rooms', @@ -90,11 +104,13 @@ 'slots' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_room-slots', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectMultipleSideBySide', 'foreign_table' => 'tx_sessionplaner_domain_model_slot', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_slot.pid = ###CURRENT_PID### + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_slot.pid = ###CURRENT_PID### AND (tx_sessionplaner_domain_model_slot.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_slot.sys_language_uid = ###REC_FIELD_sys_language_uid###) ORDER BY tx_sessionplaner_domain_model_slot.start', 'MM' => 'tx_sessionplaner_room_slot_mm', 'size' => 10, @@ -106,10 +122,12 @@ 'sessions' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_room-sessions', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'inline', 'foreign_table' => 'tx_sessionplaner_domain_model_session', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_session.pid = ###CURRENT_PID###', + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_session.pid = ###CURRENT_PID### AND (tx_sessionplaner_domain_model_session.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_session.sys_language_uid = ###REC_FIELD_sys_language_uid###)', 'foreign_field' => 'room', ], ], @@ -117,12 +135,13 @@ 'types' => [ '0' => [ 'showitem' => ' - type, - name, - logo, - seats, - days, - slots, + hidden, + type, + name, + logo, + seats, + days, + slots, ', ], ], diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_session.php b/Configuration/TCA/tx_sessionplaner_domain_model_session.php index 5dff7f3..7c0b798 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_session.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_session.php @@ -17,6 +17,10 @@ 'crdate' => 'crdate', 'default_sortby' => 'ORDER BY topic', 'delete' => 'deleted', + 'languageField' => 'sys_language_uid', + 'transOrigPointerField' => 'l10n_parent', + 'transOrigDiffSourceField' => 'l10n_diffsource', + 'translationSource' => 'l10n_source', 'enablecolumns' => [ 'disabled' => 'hidden', ], @@ -38,6 +42,8 @@ 'suggestion' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-suggestion', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'check', ], @@ -45,6 +51,8 @@ 'social' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-social', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'check', 'default' => 1, @@ -53,6 +61,8 @@ 'donotlink' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-donotlink', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'check', ], @@ -70,6 +80,8 @@ 'path_segment' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-path_segment', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'slug', 'generatorOptions' => [ @@ -97,6 +109,8 @@ 'twitter' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-twitter', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -108,12 +122,14 @@ 'speakers' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-speakers', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectMultipleSideBySide', 'multiple' => 0, 'foreign_table' => 'tx_sessionplaner_domain_model_speaker', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_speaker.pid = ###CURRENT_PID### ' + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_speaker.pid = ###CURRENT_PID### AND (tx_sessionplaner_domain_model_speaker.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_speaker.sys_language_uid = ###REC_FIELD_sys_language_uid###) ' . 'ORDER BY tx_sessionplaner_domain_model_speaker.name', 'MM' => 'tx_sessionplaner_session_speaker_mm', 'fieldControl' => [ @@ -133,6 +149,8 @@ 'attendees' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-attendees', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -155,6 +173,8 @@ 'documents' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-download', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'file', 'allowed' => 'common-image-types', @@ -165,6 +185,8 @@ 'type' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-type', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectSingle', @@ -176,6 +198,8 @@ 'level' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-level', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectSingle', @@ -188,6 +212,8 @@ 'day' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-day', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'onChange' => 'reload', 'config' => [ 'type' => 'select', @@ -199,7 +225,7 @@ ], ], 'foreign_table' => 'tx_sessionplaner_domain_model_day', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_day.pid = ###CURRENT_PID### ' + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_day.pid = ###CURRENT_PID### AND (tx_sessionplaner_domain_model_day.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_day.sys_language_uid = ###REC_FIELD_sys_language_uid###) ' . 'ORDER BY tx_sessionplaner_domain_model_day.date', 'minitems' => 0, 'maxitems' => 1, @@ -209,6 +235,8 @@ 'room' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-room', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectSingle', @@ -219,7 +247,7 @@ ], ], 'foreign_table' => 'tx_sessionplaner_domain_model_room', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_room.pid = ###CURRENT_PID###', + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_room.pid = ###CURRENT_PID### AND (tx_sessionplaner_domain_model_room.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_room.sys_language_uid = ###REC_FIELD_sys_language_uid###)', 'minitems' => 0, 'maxitems' => 1, 'default' => 0, @@ -228,6 +256,8 @@ 'slot' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-slot', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectSingle', @@ -238,7 +268,7 @@ ], ], 'foreign_table' => 'tx_sessionplaner_domain_model_slot', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_slot.pid = ###CURRENT_PID### AND tx_sessionplaner_domain_model_slot.day = ###REC_FIELD_day###', + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_slot.pid = ###CURRENT_PID### AND tx_sessionplaner_domain_model_slot.day = ###REC_FIELD_day### AND (tx_sessionplaner_domain_model_slot.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_slot.sys_language_uid = ###REC_FIELD_sys_language_uid###)', 'minitems' => 0, 'maxitems' => 1, 'default' => 0, @@ -247,11 +277,13 @@ 'tags' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-tags', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectMultipleSideBySide', 'foreign_table' => 'tx_sessionplaner_domain_model_tag', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_tag.pid = ###CURRENT_PID###', + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_tag.pid = ###CURRENT_PID### AND (tx_sessionplaner_domain_model_tag.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_tag.sys_language_uid = ###REC_FIELD_sys_language_uid###)', 'MM' => 'tx_sessionplaner_session_tag_mm', 'minitems' => 0, 'fieldControl' => [ @@ -271,6 +303,8 @@ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-links', 'description' => $languageFile . 'tx_sessionplaner_domain_model_session-links-description', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'inline', 'foreign_table' => 'tx_sessionplaner_domain_model_link', @@ -297,6 +331,8 @@ 'requesttype' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-requesttype', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectSingle', @@ -309,6 +345,8 @@ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_session-norecording', 'description' => $languageFile . 'tx_sessionplaner_domain_model_session-norecording-description', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'check', ], @@ -339,8 +377,7 @@ topic, path_segment, description, - --palette--;' . $languageFile - . 'tx_sessionplaner_domain_model_session.palettes.speaker_free;speaker_free, + --palette--;' . $languageFile . 'tx_sessionplaner_domain_model_session.palettes.speaker_free;speaker_free, speakers, attendees, links, diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_slot.php b/Configuration/TCA/tx_sessionplaner_domain_model_slot.php index eb133fe..07ca14b 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_slot.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_slot.php @@ -14,11 +14,15 @@ 'title' => $languageFile . 'tx_sessionplaner_domain_model_slot', 'label' => 'start', 'label_userFunc' => \Evoweb\Sessionplaner\Userfuncs\Tca::class . '->slotLabel', - 'hideTable' => true, + 'hideTable' => false, // @TEMP DISABLED 'tstamp' => 'tstamp', 'crdate' => 'crdate', 'default_sortby' => 'ORDER BY start', 'delete' => 'deleted', + 'languageField' => 'sys_language_uid', + 'transOrigPointerField' => 'l10n_parent', + 'transOrigDiffSourceField' => 'l10n_diffsource', + 'translationSource' => 'l10n_source', 'enablecolumns' => [ 'disabled' => 'hidden', ], @@ -33,11 +37,13 @@ 'day' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_slot-day', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectSingle', 'foreign_table' => 'tx_sessionplaner_domain_model_day', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_day.pid=###CURRENT_PID###', + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_day.pid=###CURRENT_PID### AND (tx_sessionplaner_domain_model_day.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_day.sys_language_uid = ###REC_FIELD_sys_language_uid###)', 'maxitems' => 1, 'default' => 0, ], @@ -45,6 +51,8 @@ 'start' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_slot-start', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'renderType' => 'inputDateTime', @@ -54,6 +62,8 @@ 'duration' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_slot-duration', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -65,6 +75,8 @@ 'break' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_slot-break', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'check', ], @@ -85,11 +97,13 @@ 'rooms' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_slot-rooms', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectMultipleSideBySide', 'foreign_table' => 'tx_sessionplaner_domain_model_room', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_room.pid = ###CURRENT_PID###', + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_room.pid = ###CURRENT_PID### AND (tx_sessionplaner_domain_model_room.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_room.sys_language_uid = ###REC_FIELD_sys_language_uid###)', 'MM' => 'tx_sessionplaner_room_slot_mm', 'MM_opposite_field' => 'slots', 'size' => 10, @@ -102,6 +116,7 @@ 'types' => [ '0' => [ 'showitem' => ' + hidden, day, start, duration, diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_speaker.php b/Configuration/TCA/tx_sessionplaner_domain_model_speaker.php index 86feaf3..697225c 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_speaker.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_speaker.php @@ -17,6 +17,10 @@ 'crdate' => 'crdate', 'default_sortby' => 'ORDER BY name', 'delete' => 'deleted', + 'languageField' => 'sys_language_uid', + 'transOrigPointerField' => 'l10n_parent', + 'transOrigDiffSourceField' => 'l10n_diffsource', + 'translationSource' => 'l10n_source', 'enablecolumns' => [ 'disabled' => 'hidden', ], @@ -28,16 +32,11 @@ ], ], 'columns' => [ - 'hidden' => [ - 'exclude' => false, - 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.hidden', - 'config' => [ - 'type' => 'check', - ], - ], 'name' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-name', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -48,6 +47,8 @@ 'path_segment' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-path_segment', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'slug', 'generatorOptions' => [ @@ -64,6 +65,8 @@ 'company' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-company', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -74,6 +77,8 @@ 'picture' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-picture', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'file', 'allowed' => 'common-image-types', @@ -84,6 +89,8 @@ 'website' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-website', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -94,6 +101,8 @@ 'twitter' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-twitter', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -104,6 +113,8 @@ 'linkedin' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-linkedin', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -114,6 +125,8 @@ 'xing' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-xing', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -124,6 +137,8 @@ 'email' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-email', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'input', 'size' => 20, @@ -134,12 +149,14 @@ 'sessions' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-sessions', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectMultipleSideBySide', 'multiple' => 0, 'foreign_table' => 'tx_sessionplaner_domain_model_session', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_session.pid = ###CURRENT_PID###', + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_session.pid = ###CURRENT_PID### AND (tx_sessionplaner_domain_model_session.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_session.sys_language_uid = ###REC_FIELD_sys_language_uid###)', 'MM' => 'tx_sessionplaner_session_speaker_mm', 'MM_opposite_field' => 'speakers', 'fieldControl' => [ @@ -158,6 +175,8 @@ 'detail_page' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-detail_page', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'group', 'size' => 1, diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_tag.php b/Configuration/TCA/tx_sessionplaner_domain_model_tag.php index d2b1227..67e71cf 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_tag.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_tag.php @@ -17,6 +17,10 @@ 'crdate' => 'crdate', 'default_sortby' => 'ORDER BY label', 'delete' => 'deleted', + 'languageField' => 'sys_language_uid', + 'transOrigPointerField' => 'l10n_parent', + 'transOrigDiffSourceField' => 'l10n_diffsource', + 'translationSource' => 'l10n_source', 'enablecolumns' => [ 'disabled' => 'hidden', ], @@ -41,6 +45,8 @@ 'color' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_tag-color', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectSingle', @@ -87,6 +93,8 @@ 'path_segment' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_tag-path_segment', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'slug', 'generatorOptions' => [ @@ -103,6 +111,8 @@ 'suggest_form_option' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_tag-suggest_form_option', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'check', 'renderType' => 'checkboxToggle', @@ -120,11 +130,13 @@ 'sessions' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_tag-sessions', + 'l10n_mode' => 'exclude', + 'l10n_display' => 'defaultAsReadonly', 'config' => [ 'type' => 'select', 'renderType' => 'selectMultipleSideBySide', 'foreign_table' => 'tx_sessionplaner_domain_model_session', - 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_session.pid = ###CURRENT_PID###', + 'foreign_table_where' => 'AND tx_sessionplaner_domain_model_session.pid = ###CURRENT_PID### AND (tx_sessionplaner_domain_model_session.sys_language_uid IN (-1,0) OR tx_sessionplaner_domain_model_session.sys_language_uid = ###REC_FIELD_sys_language_uid###)', 'MM' => 'tx_sessionplaner_session_tag_mm', 'MM_opposite_field' => 'tags', 'minitems' => 0, @@ -134,6 +146,7 @@ 'types' => [ '0' => [ 'showitem' => ' + hidden, label, path_segment, color, From 18de8a862b07c9c8a9a511a6e6c770685689e77e Mon Sep 17 00:00:00 2001 From: Sebastian Fischer Date: Sun, 21 Dec 2025 16:48:31 +0100 Subject: [PATCH 2/2] [TASK] Add hidden and sys_language_uid columns to records --- .../tx_sessionplaner_domain_model_day.php | 11 ------- .../tx_sessionplaner_domain_model_link.php | 11 ------- .../tx_sessionplaner_domain_model_room.php | 11 ------- .../tx_sessionplaner_domain_model_session.php | 11 ------- .../tx_sessionplaner_domain_model_slot.php | 11 ------- .../tx_sessionplaner_domain_model_speaker.php | 11 ------- .../tx_sessionplaner_domain_model_tag.php | 11 ------- .../TCA/tx_sessionplaner_domain_model_day.php | 22 ++++++++++++++ .../tx_sessionplaner_domain_model_link.php | 29 +++++++++++++++++-- .../tx_sessionplaner_domain_model_room.php | 22 ++++++++++++++ .../tx_sessionplaner_domain_model_session.php | 23 ++++++++++++--- .../tx_sessionplaner_domain_model_slot.php | 22 ++++++++++++++ .../tx_sessionplaner_domain_model_speaker.php | 22 ++++++++++++++ .../TCA/tx_sessionplaner_domain_model_tag.php | 22 ++++++++++++++ 14 files changed, 155 insertions(+), 84 deletions(-) delete mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_day.php delete mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_link.php delete mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_room.php delete mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_session.php delete mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_slot.php delete mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_speaker.php delete mode 100644 Configuration/TCA/Overrides/tx_sessionplaner_domain_model_tag.php diff --git a/Configuration/TCA/Overrides/tx_sessionplaner_domain_model_day.php b/Configuration/TCA/Overrides/tx_sessionplaner_domain_model_day.php deleted file mode 100644 index c4a1e7d..0000000 --- a/Configuration/TCA/Overrides/tx_sessionplaner_domain_model_day.php +++ /dev/null @@ -1,11 +0,0 @@ - [ + 'hidden' => [ + 'exclude' => false, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.visible', + 'config' => [ + 'type' => 'check', + 'renderType' => 'checkboxToggle', + 'items' => [ + [ + 'label' => '', + 'invertStateDisplay' => true, + ], + ], + ], + ], + 'sys_language_uid' => [ + 'exclude' => false, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language', + 'config' => [ + 'type' => 'language', + ], + ], 'name' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_day-name', @@ -94,6 +115,7 @@ 'showitem' => ' --div--;General, hidden, + sys_language_uid, name, date, rooms, diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_link.php b/Configuration/TCA/tx_sessionplaner_domain_model_link.php index 97e3084..f1c8aa1 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_link.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_link.php @@ -33,6 +33,27 @@ ], ], 'columns' => [ + 'hidden' => [ + 'exclude' => false, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.visible', + 'config' => [ + 'type' => 'check', + 'renderType' => 'checkboxToggle', + 'items' => [ + [ + 'label' => '', + 'invertStateDisplay' => true, + ], + ], + ], + ], + 'sys_language_uid' => [ + 'exclude' => true, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language', + 'config' => [ + 'type' => 'language', + ], + ], 'link_text' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_link-linktext', @@ -59,9 +80,11 @@ 'types' => [ '0' => [ 'showitem' => ' - hidden, - link_text, - link, + --div--;General, + hidden, + sys_language_uid, + link_text, + link, ', ], ], diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_room.php b/Configuration/TCA/tx_sessionplaner_domain_model_room.php index 27baeff..d17fa0f 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_room.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_room.php @@ -32,6 +32,27 @@ ], ], 'columns' => [ + 'hidden' => [ + 'exclude' => false, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.visible', + 'config' => [ + 'type' => 'check', + 'renderType' => 'checkboxToggle', + 'items' => [ + [ + 'label' => '', + 'invertStateDisplay' => true, + ], + ], + ], + ], + 'sys_language_uid' => [ + 'exclude' => true, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language', + 'config' => [ + 'type' => 'language', + ], + ], 'type' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_room-type', @@ -137,6 +158,7 @@ 'showitem' => ' --div--;General, hidden, + sys_language_uid, type, name, logo, diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_session.php b/Configuration/TCA/tx_sessionplaner_domain_model_session.php index 3277c97..d63b4fe 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_session.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_session.php @@ -38,9 +38,23 @@ 'columns' => [ 'hidden' => [ 'exclude' => false, - 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.hidden', + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.visible', 'config' => [ 'type' => 'check', + 'renderType' => 'checkboxToggle', + 'items' => [ + [ + 'label' => '', + 'invertStateDisplay' => true, + ], + ], + ], + ], + 'sys_language_uid' => [ + 'exclude' => true, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language', + 'config' => [ + 'type' => 'language', ], ], 'suggestion' => [ @@ -360,10 +374,11 @@ 'options' => [ 'showitem' => ' hidden, - suggestion, + sys_language_uid, + --linebreak--, suggestion, social, - donotlink, - --linebreak--, norecording, + --linebreak--, donotlink, + norecording, ', ], 'speaker_free' => [ diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_slot.php b/Configuration/TCA/tx_sessionplaner_domain_model_slot.php index f764993..9a8283e 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_slot.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_slot.php @@ -34,6 +34,27 @@ ], ], 'columns' => [ + 'hidden' => [ + 'exclude' => false, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.visible', + 'config' => [ + 'type' => 'check', + 'renderType' => 'checkboxToggle', + 'items' => [ + [ + 'label' => '', + 'invertStateDisplay' => true, + ], + ], + ], + ], + 'sys_language_uid' => [ + 'exclude' => true, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language', + 'config' => [ + 'type' => 'language', + ], + ], 'day' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_slot-day', @@ -118,6 +139,7 @@ 'showitem' => ' --div--;General, hidden, + sys_language_uid, day, start, duration, diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_speaker.php b/Configuration/TCA/tx_sessionplaner_domain_model_speaker.php index b3cd0d2..94ccd4a 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_speaker.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_speaker.php @@ -32,6 +32,27 @@ ], ], 'columns' => [ + 'hidden' => [ + 'exclude' => false, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.visible', + 'config' => [ + 'type' => 'check', + 'renderType' => 'checkboxToggle', + 'items' => [ + [ + 'label' => '', + 'invertStateDisplay' => true, + ], + ], + ], + ], + 'sys_language_uid' => [ + 'exclude' => true, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language', + 'config' => [ + 'type' => 'language', + ], + ], 'name' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_speaker-name', @@ -205,6 +226,7 @@ 'showitem' => ' --div--;General, hidden, + sys_language_uid, name, path_segment, company, diff --git a/Configuration/TCA/tx_sessionplaner_domain_model_tag.php b/Configuration/TCA/tx_sessionplaner_domain_model_tag.php index 7d4f03d..9deaca0 100644 --- a/Configuration/TCA/tx_sessionplaner_domain_model_tag.php +++ b/Configuration/TCA/tx_sessionplaner_domain_model_tag.php @@ -32,6 +32,27 @@ ], ], 'columns' => [ + 'hidden' => [ + 'exclude' => false, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.visible', + 'config' => [ + 'type' => 'check', + 'renderType' => 'checkboxToggle', + 'items' => [ + [ + 'label' => '', + 'invertStateDisplay' => true, + ], + ], + ], + ], + 'sys_language_uid' => [ + 'exclude' => true, + 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.language', + 'config' => [ + 'type' => 'language', + ], + ], 'label' => [ 'exclude' => false, 'label' => $languageFile . 'tx_sessionplaner_domain_model_tag-label', @@ -146,6 +167,7 @@ 'showitem' => ' --div--;General, hidden, + sys_language_uid, label, path_segment, color,