Skip to content
Snippets Groups Projects
Commit a357bbfd authored by Fabian Galinski's avatar Fabian Galinski :pouting_cat:
Browse files

[FEATURE] Restructuring of the tca creation

parent e1c25e69
No related branches found
No related tags found
No related merge requests found
...@@ -79,5 +79,3 @@ abstract class AbstractRepository extends Repository { ...@@ -79,5 +79,3 @@ abstract class AbstractRepository extends Repository {
return $statement; return $statement;
} }
} }
?>
\ No newline at end of file
<?php <?php
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns( // @todo: Keep in touch, if the image elements still won't copy on translation. 20.06.2016
'pages', [ $imageColumns = [
'tx_sgnews_author' => [ // @todo Set the image crop ratio for both sgnews images.
'exclude' => TRUE, 'tx_sgnews_teaser1_image' => [
'l10n_exclude' => TRUE, 'exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_author', 'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_image',
'config' => [ 'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
'type' => 'select', 'tx_sgnews_teaser1_image',
'minitems' => 0, [
'foreign_table' => 'fe_users', 'maxitems' => 1,
'foreign_table_where' => 'ORDER BY fe_users.name', 'foreign_types' => [
'items' => [ '0' => [
['', ''], 'showitem' => '
],
'wizards' => [
'edit' => [
'type' => 'popup',
'title' => 'Edit',
'module' => ['name' => 'wizard_edit'],
'icon' => 'edit2.gif',
'popup_onlyOpenIfSelected' => 1,
],
'suggest' => [
'type' => 'suggest',
],
],
],
],
'tx_sgnews_related_news' => [
'exclude' => TRUE,
'l10n_exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_related_news',
'config' => [
'type' => 'group',
'internal_type' => 'db',
'allowed' => 'pages',
'size' => 5,
'minitems' => 0,
'maxitems' => 99,
'wizards' => [
'suggest' => [
'type' => 'suggest',
],
],
],
],
'tx_sgnews_highlighted' => [
'displayCond' => 'FIELD:tx_sgnews_never_highlighted:=:0',
'exclude' => TRUE,
'l10n_exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_highlighted',
'config' => [
'type' => 'check',
],
],
'tx_sgnews_never_highlighted' => [
'displayCond' => 'FIELD:tx_sgnews_highlighted:=:0',
'exclude' => TRUE,
'l10n_exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_never_highlighted',
'config' => [
'type' => 'check',
],
],
'tx_sgnews_teaser1_header_color' => [
'exclude' => TRUE,
'l10n_exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_header_color',
'config' => [
'type' => 'select',
'items' => [
[
'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_header_color.white',
0
],
[
'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_header_color.green',
1
],
],
],
],
'tx_sgnews_teaser2_header_color' => [
'exclude' => TRUE,
'l10n_exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser2_header_color',
'config' => [
'type' => 'select',
'items' => [
[
'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_header_color.white',
0
],
[
'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_header_color.green',
1
],
],
],
],
'lastUpdated' => [
'exclude' => TRUE,
'label' => 'LLL:EXT:cms/locallang_tca.xlf:pages.lastUpdated',
'config' => [
'type' => 'input',
'size' => '13',
'max' => '20',
'eval' => 'datetime',
'default' => $GLOBALS['EXEC_TIME'],
]
],
// @todo Set the image crop ratio for both sgnews images.
'tx_sgnews_teaser1_image' => [
'exclude' => TRUE,
'l10n_mode' => 'exclude',
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_image',
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
'tx_sgnews_teaser1_image',
[
'maxitems' => 1,
'foreign_types' => [
'0' => [
'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => [
'showitem' => ' 'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
'showitem' => ' 'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => [
'showitem' => ' 'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => [
'showitem' => ' 'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => [
'showitem' => ' 'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
]
] ]
], ],
$GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext'] 'appearance' => [
), 'showPossibleLocalizationRecords' => TRUE,
], 'showRemovedLocalizationRecords' => TRUE,
'tx_sgnews_teaser2_image' => [ 'showSynchronizationLink' => TRUE,
'exclude' => TRUE, 'showAllLocalizationLink' => TRUE,
'l10n_mode' => 'exclude', ],
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser2_image', ],
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig( $GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']
'tx_sgnews_teaser2_image', ),
[ ],
'maxitems' => 1, 'tx_sgnews_teaser2_image' => [
'foreign_types' => [ 'exclude' => TRUE,
'0' => [ 'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser2_image',
'showitem' => ' 'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
'tx_sgnews_teaser2_image',
[
'maxitems' => 1,
'foreign_types' => [
'0' => [
'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => [
'showitem' => ' 'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
'showitem' => ' 'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => [
'showitem' => ' 'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => [
'showitem' => ' 'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
], ],
\TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => [ \TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => [
'showitem' => ' 'showitem' => '
--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
--palette--;;filePalette' --palette--;;filePalette'
]
] ]
], ],
$GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext'] 'appearance' => [
), 'showPossibleLocalizationRecords' => TRUE,
'showRemovedLocalizationRecords' => TRUE,
'showSynchronizationLink' => TRUE,
'showAllLocalizationLink' => TRUE,
],
],
$GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']
),
],
];
$columns = array_merge([
'tx_sgnews_author' => [
'exclude' => TRUE,
'l10n_exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_author',
'config' => [
'type' => 'select',
'minitems' => 0,
'foreign_table' => 'fe_users',
'foreign_table_where' => 'ORDER BY fe_users.name',
'items' => [
['', ''],
],
'wizards' => [
'edit' => [
'type' => 'popup',
'title' => 'Edit',
'module' => ['name' => 'wizard_edit'],
'icon' => 'edit2.gif',
'popup_onlyOpenIfSelected' => 1,
],
'suggest' => [
'type' => 'suggest',
],
],
],
],
'tx_sgnews_related_news' => [
'exclude' => TRUE,
'l10n_exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_related_news',
'config' => [
'type' => 'group',
'internal_type' => 'db',
'allowed' => 'pages',
'size' => 5,
'minitems' => 0,
'maxitems' => 99,
'wizards' => [
'suggest' => [
'type' => 'suggest',
],
],
],
],
'tx_sgnews_highlighted' => [
'displayCond' => 'FIELD:tx_sgnews_never_highlighted:=:0',
'exclude' => TRUE,
'l10n_exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_highlighted',
'config' => [
'type' => 'check',
],
],
'tx_sgnews_never_highlighted' => [
'displayCond' => 'FIELD:tx_sgnews_highlighted:=:0',
'exclude' => TRUE,
'l10n_exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_never_highlighted',
'config' => [
'type' => 'check',
],
],
'tx_sgnews_teaser1_header_color' => [
'exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_header_color',
'config' => [
'type' => 'select',
'items' => [
[
'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_header_color.white',
0
],
[
'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_header_color.green',
1
],
],
], ],
] ],
); 'tx_sgnews_teaser2_header_color' => [
'exclude' => TRUE,
'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser2_header_color',
'config' => [
'type' => 'select',
'items' => [
[
'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_header_color.white',
0
],
[
'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser1_header_color.green',
1
],
],
],
],
'lastUpdated' => [
'exclude' => TRUE,
'label' => 'LLL:EXT:cms/locallang_tca.xlf:pages.lastUpdated',
'config' => [
'type' => 'input',
'size' => '13',
'max' => '20',
'eval' => 'datetime',
'default' => $GLOBALS['EXEC_TIME'],
]
],
], $imageColumns);
// #
// # Pages
// #
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', $columns);
$GLOBALS['TCA']['pages']['palettes']['editorialWithNewsAuthor'] = [ $GLOBALS['TCA']['pages']['palettes']['editorialWithNewsAuthor'] = [
'showitem' => 'tx_sgnews_author;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_author.inPalette, 'showitem' => 'tx_sgnews_author;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_author.inPalette,
...@@ -284,9 +300,19 @@ if (!\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('realurl')) { ...@@ -284,9 +300,19 @@ if (!\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('realurl')) {
); );
} }
// #
// # Pages Overlay
// #
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages_language_overlay', $imageColumns);
$GLOBALS['TCA']['pages_language_overlay']['types'][116] = [ $GLOBALS['TCA']['pages_language_overlay']['types'][116] = [
'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.standard;standard, 'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.standard;standard,
subtitle, description, tx_realurl_pathsegment, subtitle, description, tx_realurl_pathsegment,
--div--;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tabs.image,
tx_sgnews_teaser2_image,
--div--;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tabs.image2,
tx_sgnews_teaser1_image,
--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata,
--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract, --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract,
tx_seo_titletag,tx_seo_canonicaltag, tx_seo_titletag,tx_seo_canonicaltag,
...@@ -298,6 +324,10 @@ $GLOBALS['TCA']['pages_language_overlay']['types'][116] = [ ...@@ -298,6 +324,10 @@ $GLOBALS['TCA']['pages_language_overlay']['types'][116] = [
$GLOBALS['TCA']['pages_language_overlay']['types'][117] = [ $GLOBALS['TCA']['pages_language_overlay']['types'][117] = [
'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.standard;standard, 'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.standard;standard,
title, tx_realurl_pathsegment, title, tx_realurl_pathsegment,
--div--;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tabs.image,
tx_sgnews_teaser2_image,
--div--;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tabs.image2,
tx_sgnews_teaser1_image,
--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata,
--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract, --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract,
tx_seo_titletag,tx_seo_canonicaltag, tx_seo_titletag,tx_seo_canonicaltag,
......
...@@ -4,6 +4,8 @@ if (!defined('TYPO3_MODE')) { ...@@ -4,6 +4,8 @@ if (!defined('TYPO3_MODE')) {
die('Access denied.'); die('Access denied.');
} }
$GLOBALS['TYPO3_CONF_VARS']['FE']['pageOverlayFields'] .= ',tx_sgnews_teaser1_image,tx_sgnews_teaser2_image';
/** @noinspection PhpUndefinedVariableInspection */ /** @noinspection PhpUndefinedVariableInspection */
$extPath = \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('sg_news'); $extPath = \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('sg_news');
......
...@@ -10,3 +10,8 @@ CREATE TABLE pages ( ...@@ -10,3 +10,8 @@ CREATE TABLE pages (
KEY author (tx_sgnews_author) KEY author (tx_sgnews_author)
); );
CREATE TABLE pages_language_overlay (
tx_sgnews_teaser1_image int(11) unsigned DEFAULT '0' NOT NULL,
tx_sgnews_teaser2_image int(11) unsigned DEFAULT '0' NOT NULL
);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment