Skip to content
Snippets Groups Projects
pages.php 11.8 KiB
Newer Older
Stefan Galinski's avatar
Stefan Galinski committed
<?php

$imageColumns = [
	'tx_sgnews_teaser1_image' => [
		'exclude' => TRUE,
		'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' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					],
					\TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					],
					\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					],
					\TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					],
					\TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					],
					\TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					]
				],
				'appearance' => [
					'showPossibleLocalizationRecords' => TRUE,
					'showRemovedLocalizationRecords' => TRUE,
					'showSynchronizationLink' => TRUE,
					'showAllLocalizationLink' => TRUE,
				],
			],
			$GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']
		),
	],
	'tx_sgnews_teaser2_image' => [
		'exclude' => TRUE,
		'label' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_teaser2_image',
		'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
			'tx_sgnews_teaser2_image',
			[
				'maxitems' => 1,
				'foreign_types' => [
					'0' => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					],
					\TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					],
					\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					],
					\TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					],
					\TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					],
					\TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => [
						'showitem' => '
Stefan Galinski's avatar
Stefan Galinski committed
							--palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette,
							--palette--;;filePalette'
					]
				],
				'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',
			],
		'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);
Stefan Galinski's avatar
Stefan Galinski committed

$GLOBALS['TCA']['pages']['palettes']['editorialWithNewsAuthor'] = [
	'showitem' => 'tx_sgnews_author;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tx_sgnews_author.inPalette,
		author;LLL:EXT:cms/locallang_tca.xlf:pages.author_formlabel,
		--linebreak--, lastUpdated;LLL:EXT:cms/locallang_tca.xlf:pages.lastUpdated_formlabel',
	'canNotCollapse' => 1,
];

$GLOBALS['TCA']['pages']['palettes']['titleDescriptionAndHighlightFlag'] = [
	'showitem' => 'subtitle;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.subtitle.inPalette,
		--linebreak--, description,
		--linebreak--, tx_realurl_pathsegment, tx_realurl_exclude,
		--linebreak--, tx_sgnews_highlighted, tx_sgnews_never_highlighted',
Stefan Galinski's avatar
Stefan Galinski committed
	'canNotCollapse' => 1,
];

$GLOBALS['TCA']['pages']['types'][116] = [
	'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.standard;standard,
		--palette--;;titleDescriptionAndHighlightFlag,
		--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.editorial;editorialWithNewsAuthor,
		tx_sgnews_related_news,
	--div--;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tabs.images,
		tx_sgnews_teaser2_image, tx_sgnews_teaser1_image,
	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata,
		tx_devnullrobots_flags,
		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract,
		tx_seo_titletag,tx_seo_canonicaltag,
	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.appearance,
		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.layout;layout,
Stefan Galinski's avatar
Stefan Galinski committed
	--div--;LLL:EXT:cms/locallang_tca.xlf:pages.tabs.access,
		--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.visibility;visibility,
		--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.access;access,
	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.behaviour,
		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.caching;caching,
		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.language;language,
		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.miscellaneous;miscellaneous,
Stefan Galinski's avatar
Stefan Galinski committed
	'
];

$GLOBALS['TCA']['pages']['types'][117] = [
	'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.standard;standard,
		title, tx_realurl_pathsegment, tx_realurl_exclude,
	--div--;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tabs.images,
		tx_sgnews_teaser2_image, tx_sgnews_teaser1_image,
	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata,
		tx_devnullrobots_flags,
		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract,
		tx_seo_titletag,tx_seo_canonicaltag,
	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.appearance,
		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.layout;layout,
Stefan Galinski's avatar
Stefan Galinski committed
	--div--;LLL:EXT:cms/locallang_tca.xlf:pages.tabs.access,
		--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.visibility;visibility,
		--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.access;access,
	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.behaviour,
		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.caching;caching,
		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.language;language,
		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.miscellaneous;miscellaneous,
// Removal of the realurl fields, if the extension isn't installed.
if (!\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('realurl')) {
	$GLOBALS['TCA']['pages']['palettes']['titleDescriptionAndHighlightFlag'] = str_replace(
		'--linebreak--, tx_realurl_pathsegment, tx_realurl_exclude,', '',
		$GLOBALS['TCA']['pages']['palettes']['titleDescriptionAndHighlightFlag']
	);
	$GLOBALS['TCA']['pages']['types'][117] = str_replace(
		'tx_realurl_pathsegment, tx_realurl_exclude,', '',
		$GLOBALS['TCA']['pages']['types'][117]
	);
}

// #
// # Pages Overlay
// #

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages_language_overlay', $imageColumns);

Stefan Galinski's avatar
Stefan Galinski committed
$GLOBALS['TCA']['pages_language_overlay']['types'][116] = [
	'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.standard;standard,
			subtitle, description, tx_realurl_pathsegment,
		--div--;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tabs.images,
			tx_sgnews_teaser2_image, tx_sgnews_teaser1_image,
		--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,
			tx_seo_titletag,tx_seo_canonicaltag,
Stefan Galinski's avatar
Stefan Galinski committed
		--div--;LLL:EXT:cms/locallang_tca.xlf:pages.tabs.access,
			--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.visibility;hiddenonly,
			--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.access;access'
];

$GLOBALS['TCA']['pages_language_overlay']['types'][117] = [
	'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.standard;standard,
			title, tx_realurl_pathsegment,
		--div--;LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:pages.tabs.images,
			tx_sgnews_teaser2_image, tx_sgnews_teaser1_image,
		--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,
			tx_seo_titletag,tx_seo_canonicaltag,
Stefan Galinski's avatar
Stefan Galinski committed
		--div--;LLL:EXT:cms/locallang_tca.xlf:pages.tabs.access,
			--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.visibility;hiddenonly,
			--palette--;LLL:EXT:cms/locallang_tca.xlf:pages.palettes.access;access'
];