Skip to content

Commit 0e4362e

Browse files
committed
Use EMU::addRecordType() to register content element
1 parent 3cc6d52 commit 0e4362e

4 files changed

Lines changed: 36 additions & 59 deletions

File tree

Classes/Extension.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ final class Extension
1818
{
1919
public const KEY = 'codehighlight';
2020

21+
public const CE_TYPE = 'tx_codehighlight_codesnippet';
22+
2123
public const LANGUAGE_PATH_CONTENT_ELEMENT = 'LLL:EXT:' . self::KEY . '/Resources/Private/Language/ContentElement.xlf';
2224
public const LANGUAGE_PATH_PROGRAMMING_LANGUAGES = 'LLL:EXT:' . self::KEY . '/Resources/Private/Language/ProgrammingLanguages.xlf';
2325
public const LANGUAGE_PATH_SITE_CONFIGURATION = 'LLL:EXT:' . self::KEY . '/Resources/Private/Language/SiteConfiguration.xlf';

Configuration/TCA/Overrides/tt_content.php

Lines changed: 34 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -12,28 +12,31 @@
1212

1313
defined('TYPO3') || die();
1414

15-
(static function (): void {
16-
$contentType = 'tx_codehighlight_codesnippet';
17-
18-
ExtensionManagementUtility::addPlugin(
19-
[
20-
Extension::LANGUAGE_PATH_CONTENT_ELEMENT . ':contentElement.title',
21-
$contentType,
22-
'EXT:' . Extension::KEY . '/Resources/Public/Icons/content-codehighlight.svg',
23-
'special',
24-
],
25-
'CType',
26-
Extension::KEY,
27-
);
28-
29-
$GLOBALS['TCA']['tt_content']['types']['list']['subtypes_addlist'][$contentType] = 'pi_flexform';
30-
ExtensionManagementUtility::addPiFlexFormValue(
31-
'*',
32-
'FILE:EXT:' . Extension::KEY . '/Configuration/FlexForms/Options.xml',
33-
$contentType,
34-
);
35-
36-
$GLOBALS['TCA']['tt_content']['types'][$contentType] = [
15+
ExtensionManagementUtility::addRecordType(
16+
[
17+
'label' => Extension::LANGUAGE_PATH_CONTENT_ELEMENT . ':contentElement.title',
18+
'description' => Extension::LANGUAGE_PATH_CONTENT_ELEMENT . ':contentElement.description',
19+
'value' => Extension::CE_TYPE,
20+
'icon' => 'content-codehighlight',
21+
],
22+
'
23+
--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general,
24+
--palette--;;general,
25+
--palette--;;headers,
26+
bodytext,
27+
--div--;' . Extension::LANGUAGE_PATH_CONTENT_ELEMENT . ':options,
28+
pi_flexform,
29+
--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.appearance,
30+
--palette--;;frames,
31+
--palette--;;appearanceLinks,
32+
--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:language,
33+
--palette--;;language,
34+
--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:access,
35+
--palette--;;hidden,
36+
--palette--;;access,
37+
--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:extended
38+
',
39+
[
3740
'columnsOverrides' => [
3841
'bodytext' => [
3942
'label' => Extension::LANGUAGE_PATH_CONTENT_ELEMENT . ':codeSnippet',
@@ -48,24 +51,12 @@
4851
'label' => Extension::LANGUAGE_PATH_CONTENT_ELEMENT . ':options',
4952
],
5053
],
51-
'showitem' => '
52-
--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general,
53-
--palette--;;general,
54-
--palette--;;headers,
55-
bodytext,
56-
--div--;' . Extension::LANGUAGE_PATH_CONTENT_ELEMENT . ':options,
57-
pi_flexform,
58-
--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.appearance,
59-
--palette--;;frames,
60-
--palette--;;appearanceLinks,
61-
--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:language,
62-
--palette--;;language,
63-
--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:access,
64-
--palette--;;hidden,
65-
--palette--;;access,
66-
--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:extended
67-
',
68-
];
69-
70-
$GLOBALS['TCA']['tt_content']['ctrl']['typeicon_classes'][$contentType] = 'content-codehighlight';
71-
})();
54+
],
55+
);
56+
57+
$GLOBALS['TCA']['tt_content']['types']['list']['subtypes_addlist'][Extension::CE_TYPE] = 'pi_flexform';
58+
ExtensionManagementUtility::addPiFlexFormValue(
59+
'*',
60+
'FILE:EXT:' . Extension::KEY . '/Configuration/FlexForms/Options.xml',
61+
Extension::CE_TYPE,
62+
);

Configuration/TsConfig/Page/NewContentElementWizard.tsconfig

Lines changed: 0 additions & 14 deletions
This file was deleted.

Configuration/page.tsconfig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
@import "EXT:codehighlight/Configuration/TsConfig/Page/*.tsconfig"
2-
31
mod.web_layout.tt_content.preview {
42
tx_codehighlight_codesnippet = EXT:codehighlight/Resources/Private/Templates/CodeSnippetPreview.html
53
}

0 commit comments

Comments
 (0)