/** * Add the calendarize to the given TCA * * @param $configuration */ protected static function createTcaConfiguration($configuration) { $tableName = $configuration['tableName']; $GLOBALS['TCA'][$tableName]['columns']['calendarize'] = array('label' => 'Calendarize', 'config' => array('type' => 'inline', 'foreign_table' => 'tx_calendarize_domain_model_configuration', 'minitems' => $configuration['required'] ? 1 : 0, 'maxitems' => 99, 'behaviour' => array('enableCascadingDelete' => TRUE))); $GLOBALS['TCA'][$tableName]['columns']['calendarize_info'] = array('label' => 'LLL:EXT:calendarize/Resources/Private/Language/locallang.xml:tca.information', 'config' => array('type' => 'user', 'userFunc' => 'HDNET\\Calendarize\\UserFunction\\TcaInformation->informationField')); ExtensionManagementUtility::addToAllTCAtypes($tableName, 'calendarize,calendarize_info'); }
/** * Add the calendarize to the given TCA * * @param $configuration */ protected static function createTcaConfiguration($configuration) { $tableName = $configuration['tableName']; $typeList = isset($configuration['tcaTypeList']) ? trim($configuration['tcaTypeList']) : ''; $GLOBALS['TCA'][$tableName]['columns']['calendarize'] = ['label' => 'Calendarize', 'l10n_mode' => 'exclude', 'config' => ['type' => 'inline', 'foreign_table' => 'tx_calendarize_domain_model_configuration', 'minitems' => $configuration['required'] ? 1 : 0, 'maxitems' => 99, 'behaviour' => ['enableCascadingDelete' => true]]]; $GLOBALS['TCA'][$tableName]['columns']['calendarize_info'] = ['label' => 'LLL:EXT:calendarize/Resources/Private/Language/locallang.xlf:tca.information', 'config' => ['type' => 'user', 'userFunc' => 'HDNET\\Calendarize\\UserFunction\\TcaInformation->informationField']]; ExtensionManagementUtility::addToAllTCAtypes($tableName, 'calendarize,calendarize_info', $typeList); }
$tempColumns = array('tx_gridelements_backend_layout' => array('exclude' => 1, 'label' => 'LLL:EXT:gridelements/Resources/Private/Language/locallang_db.xml:tt_content.tx_gridelements_backend_layout', 'config' => array('type' => 'select', 'itemsProcFunc' => 'GridElementsTeam\\Gridelements\\Backend\\TtContent->layoutItemsProcFunc', 'size' => 1, 'selicon_cols' => 9, 'maxitems' => 1, 'default' => '')), 'tx_gridelements_children' => array('exclude' => 1, 'label' => 'LLL:EXT:gridelements/Resources/Private/Language/locallang_db.xml:tt_content.tx_gridelements_children', 'config' => array('type' => 'inline', 'appearance' => array('levelLinksPosition' => 'top', 'showPossibleLocalizationRecords' => true, 'showRemovedLocalizationRecords' => true, 'showAllLocalizationLink' => true, 'showSynchronizationLink' => true, 'enabledControls' => array('info' => true, 'new' => false, 'dragdrop' => false, 'sort' => false, 'hide' => true, 'delete' => true, 'localize' => true)), 'inline' => array('inlineNewButtonStyle' => 'display: inline-block;'), 'behaviour' => array('localizationMode' => 'select', 'localizeChildrenAtParentLocalization' => true), 'foreign_table' => 'tt_content', 'foreign_field' => 'tx_gridelements_container', 'foreign_record_defaults' => array('colPos' => -1), 'foreign_sortby' => 'sorting', 'size' => 5, 'autoSizeMax' => 20)), 'tx_gridelements_container' => array('exclude' => 1, 'label' => 'LLL:EXT:gridelements/Resources/Private/Language/locallang_db.xml:tt_content.tx_gridelements_container', 'config' => array('type' => 'select', 'items' => array(array('', 0)), 'foreign_table' => 'tt_content', 'foreign_table_where' => 'AND (tt_content.sys_language_uid = ###REC_FIELD_sys_language_uid### OR tt_content.sys_language_uid = -1) AND tt_content.pid=###CURRENT_PID### AND tt_content.CType=\'gridelements_pi1\' AND (tt_content.uid != ###THIS_UID###) AND (tt_content.tx_gridelements_container != ###THIS_UID### OR tt_content.tx_gridelements_container=0) ORDER BY tt_content.header, tt_content.uid', 'dontRemapTablesOnCopy' => 'tt_content', 'itemsProcFunc' => 'GridElementsTeam\\Gridelements\\Backend\\TtContent->containerItemsProcFunc', 'size' => 1, 'minitems' => 0, 'maxitems' => 1)), 'tx_gridelements_columns' => array('exclude' => 1, 'label' => 'LLL:EXT:gridelements/Resources/Private/Language/locallang_db.xml:tt_content.tx_gridelements_columns', 'config' => array('type' => 'select', 'itemsProcFunc' => 'GridElementsTeam\\Gridelements\\Backend\\TtContent->columnsItemsProcFunc', 'size' => 1, 'maxitems' => 1))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tt_content', $tempColumns); $GLOBALS['TCA']['tt_content']['ctrl']['requestUpdate'] .= ',tx_gridelements_backend_layout,tx_gridelements_container,tx_gridelements_columns,colPos'; $GLOBALS['TCA']['tt_content']['ctrl']['typeicons']['gridelements_pi1'] = 'backend_layout.gif'; $GLOBALS['TCA']['tt_content']['ctrl']['useColumnsForDefaultValues'] .= ',tx_gridelements_container,tx_gridelements_columns'; $GLOBALS['TCA']['tt_content']['ctrl']['shadowColumnsForNewPlaceholders'] .= ',tx_gridelements_container,tx_gridelements_columns'; $GLOBALS['TCA']['tt_content']['ctrl']['typeicon_classes']['gridelements_pi1'] = 'tcarecords-tx_gridelements_backend_layout-default'; $GLOBALS['TCA']['tt_content']['columns']['colPos']['config']['itemsProcFunc'] = 'GridElementsTeam\\Gridelements\\Backend\\ItemsProcFuncs\\ColPosList->itemsProcFunc'; $GLOBALS['TCA']['tt_content']['columns']['CType']['config']['itemsProcFunc'] = 'GridElementsTeam\\Gridelements\\Backend\\ItemsProcFuncs\\CTypeList->itemsProcFunc'; $GLOBALS['TCA']['tt_content']['columns']['sys_language_uid']['config']['itemsProcFunc'] = 'GridElementsTeam\\Gridelements\\Backend\\ItemsProcFuncs\\SysLanguageUidList->itemsProcFunc'; $GLOBALS['TCA']['tt_content']['columns']['pi_flexform']['config']['ds']['*,gridelements_pi1'] = ''; $GLOBALS['TCA']['tt_content']['columns']['records']['config']['allowed'] .= ',pages'; $GLOBALS['TCA']['tt_content']['types']['gridelements_pi1']['showitem'] = ' --palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.general;general, --palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.header;header, tx_gridelements_backend_layout, pi_flexform, tx_gridelements_children, --div--;LLL:EXT:cms/locallang_ttc.xlf:tabs.appearance, --palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.frames;frames, media, --div--;LLL:EXT:cms/locallang_ttc.xlf:tabs.access, --palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.visibility;visibility, --palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.access;access, --div--;LLL:EXT:cms/locallang_ttc.xlf:tabs.extended, --div--;LLL:EXT:lang/locallang_tca.xlf:sys_category.tabs.category, categories '; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', 'recursive', 'shortcut', 'after:records'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', 'tx_gridelements_container, tx_gridelements_columns');
<?php if (!defined('TYPO3_MODE')) { die('Access denied.'); } \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('be_groups', array('tx_fluidcontent_allowedfluidcontent' => array('exclude' => 0, 'label' => 'LLL:EXT:fluidcontent/Resources/Private/Language/locallang.xlf:be_groups.tx_fluidcontent_allowedfluidcontent', 'config' => array('type' => 'select', 'renderType' => 'selectCheckBox', 'items' => array())), 'tx_fluidcontent_deniedfluidcontent' => array('exclude' => 0, 'label' => 'LLL:EXT:fluidcontent/Resources/Private/Language/locallang.xlf:be_groups.tx_fluidcontent_deniedfluidcontent', 'config' => array('type' => 'select', 'renderType' => 'selectCheckBox', 'items' => array())))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('be_groups', 'tx_fluidcontent_allowedfluidcontent,tx_fluidcontent_deniedfluidcontent', '0', 'after:pagetypes_select');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue($pluginSignature, 'FILE:EXT:' . $_EXTKEY . '/Configuration/FlexForms/FlexFormPi1.xml'); /** * Load UserFunc for FlexForm Field selection */ if (TYPO3_MODE == 'BE') { require_once \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Classes/Utility/FlexFormFieldSelection.php'; } /** * Table configuration fe_users */ $tempColumns = array('gender' => array('exclude' => 0, 'label' => 'LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:tx_femanager_domain_model_user.gender', 'config' => array('type' => 'radio', 'items' => array(array('LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:tx_femanager_domain_model_user.gender.item0', '0'), array('LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:tx_femanager_domain_model_user.gender.item1', '1')))), 'date_of_birth' => array('exclude' => 0, 'label' => 'LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:tx_femanager_domain_model_user.dateOfBirth', 'config' => array('type' => 'input', 'size' => 10, 'max' => 20, 'eval' => 'date', 'checkbox' => '0', 'default' => '')), 'crdate' => array('exclude' => 1, 'label' => 'LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:fe_users.crdate', 'config' => array('type' => 'input', 'size' => 30, 'eval' => 'datetime', 'readOnly' => 1, 'default' => time())), 'tstamp' => array('exclude' => 1, 'label' => 'LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:fe_users.tstamp', 'config' => array('type' => 'input', 'size' => 30, 'eval' => 'datetime', 'readOnly' => 1, 'default' => time())), 'tx_femanager_confirmedbyuser' => array('exclude' => 1, 'label' => 'LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:fe_users.registrationconfirmedbyuser', 'config' => array('type' => 'check', 'default' => 0)), 'tx_femanager_confirmedbyadmin' => array('exclude' => 1, 'label' => 'LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:fe_users.registrationconfirmedbyadmin', 'config' => array('type' => 'check', 'default' => 0))); $fields = 'crdate, tstamp, tx_femanager_confirmedbyuser, tx_femanager_confirmedbyadmin'; if (empty($confArr['disableLog'])) { $tempColumns['tx_femanager_log'] = array('exclude' => 1, 'label' => 'LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:fe_users.log', 'config' => array('type' => 'inline', 'foreign_table' => 'tx_femanager_domain_model_log', 'foreign_field' => 'user', 'maxitems' => 1000, 'minitems' => 0, 'appearance' => array('collapseAll' => 1, 'expandSingle' => 1))); $fields .= ', tx_femanager_log'; } $tempColumns['tx_femanager_changerequest'] = array('exclude' => 1, 'label' => 'LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:fe_users.changerequest', 'config' => array('type' => 'text', 'cols' => '40', 'rows' => '15', 'wrap' => 'off', 'readOnly' => 1)); $fields .= ', tx_femanager_changerequest'; \TYPO3\CMS\Core\Utility\GeneralUtility::loadTCA('fe_users'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'gender, date_of_birth', '', 'after:name'); if (version_compare(TYPO3_branch, '6.2', '<')) { \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_users', $tempColumns, 1); } else { \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_users', $tempColumns); } \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('fe_users', '--div--;LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:fe_users.tab;;;;1-1-1, ' . $fields); /** * Table configuration tx_femanager_domain_model_log */ \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_femanager_domain_model_log'); $TCA['tx_femanager_domain_model_log'] = array('ctrl' => array('title' => 'LLL:EXT:femanager/Resources/Private/Language/locallang_db.xlf:tx_femanager_domain_model_log', 'label' => 'title', 'tstamp' => 'tstamp', 'crdate' => 'crdate', 'cruser_id' => 'cruser_id', 'dividers2tabs' => TRUE, 'versioningWS' => 2, 'versioning_followPages' => TRUE, 'origUid' => 't3_origuid', 'languageField' => 'sys_language_uid', 'transOrigPointerField' => 'l10n_parent', 'transOrigDiffSourceField' => 'l10n_diffsource', 'delete' => 'deleted', 'default_sortby' => 'ORDER BY crdate DESC', 'enablecolumns' => array('disabled' => 'hidden', 'starttime' => 'starttime', 'endtime' => 'endtime'), 'searchFields' => 'title', 'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/Log.php', 'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) . 'Resources/Public/Icons/Log.gif'));
//$GLOBALS['TCA']['tt_content']['interface']['showRecordFieldList'] .= ',table_content'; // Remove table-wizard from field "bodytext" unset($GLOBALS['TCA']['tt_content']['columns']['bodytext']['config']['wizards']['table']); // Reset title for field "bodytext" \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', 'bodytext;LLL:EXT:lang/locallang_general.xlf:LGL.text', 'table', 'replace:bodytext'); // Add new field for table-content \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', '--linebreak--, table_content', 'table', 'after:bodytext'); /* * Modifications for dynamic 'layout_style'-field */ $GLOBALS['TCA']['tt_content']['ctrl']['requestUpdate'] .= ',layout'; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', 'layout_style', '', 'after:layout'); /* * Add custom fields */ // Readd the field 'assets' to all content-elements and let the fluid-template decide what should happen with the mediafile $anchor = ':tabs.appearance,'; foreach ($GLOBALS['TCA']['tt_content']['types'] as $fieldName => $fieldConfig) { // Iterate through existing fields and add a new palette right after tab "Appearance" to all content-elements $replacement = $anchor . '--palette--;' . $backendLanguageFilePrefix . 'tt_content.palette.displaySettings;displaySettings,'; $GLOBALS['TCA']['tt_content']['types'][$fieldName]['showitem'] = str_replace($anchor, $replacement, $fieldConfig['showitem']); } // Add custom fields to the backend-forms \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addFieldsToPalette('tt_content', 'displaySettings', 'visibility;' . $fieldLanguageFilePrefix . 'tt_content.visibility,' . 'wrap;' . $fieldLanguageFilePrefix . 'tt_content.wrap,' . 'container;' . $fieldLanguageFilePrefix . 'tt_content.container,' . 'section_frame;' . $fieldLanguageFilePrefix . 'tt_content.section_frame,' . 'section_frame_style;' . $fieldLanguageFilePrefix . 'tt_content.section_frame_style,' . '--linebreak--,template_media;' . $fieldLanguageFilePrefix . 'tt_content.template_media'); $GLOBALS['TCA']['tt_content']['ctrl']['requestUpdate'] .= ',section_frame'; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addFieldsToPalette('tt_content', 'mediaAdjustments', 'image_shape;' . $fieldLanguageFilePrefix . 'tt_content.image_shape,' . 'image_responsive;' . $fieldLanguageFilePrefix . 'tt_content.image_responsive'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addFieldsToPalette('tt_content', 'gallerySettings', 'gallery_width;' . $fieldLanguageFilePrefix . 'tt_content.gallery_width,' . 'gallery_break;' . $fieldLanguageFilePrefix . 'tt_content.gallery_break,' . 'gallery_carousel;' . $fieldLanguageFilePrefix . 'tt_content.gallery_carousel'); // Add custom fields to TCA \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', 'header_layout,header_position,header_style,header_icon', '', 'replace:header_layout'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tt_content', $additionalColumns, 1); }, 'bootstrap_components');
*/ \TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerModule('Plenigo.' . $_EXTKEY, 'tools', 'plenigo', '', array('PlenigoSetting' => 'list, show, new, create, edit, update, ', 'PremiumContentProduct' => 'list, show, new, create, edit, update, delete', 'PremiumContentCategories' => 'list, show, new, create, edit, update, delete', 'PlenigoSettings' => 'list, show, new, create, edit, update, delete'), array('access' => 'user,group', 'icon' => 'EXT:' . $_EXTKEY . '/ext_icon.gif', 'labels' => 'LLL:EXT:' . $_EXTKEY . '/Resources/Private/Language/locallang_plenigo.xlf')); } \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript', 'Plenigo for news'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('tx_plenigofornews_domain_model_plenigosetting', 'EXT:plenigo_for_news/Resources/Private/Language/locallang_csh_tx_plenigofornews_domain_model_plenigosetting.xlf'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_plenigofornews_domain_model_plenigosetting'); $GLOBALS['TCA']['tx_plenigofornews_domain_model_plenigosetting'] = array('ctrl' => array('title' => 'LLL:EXT:plenigo_for_news/Resources/Private/Language/locallang_db.xlf:tx_plenigofornews_domain_model_plenigosetting', 'label' => 'test_mode', 'tstamp' => 'tstamp', 'crdate' => 'crdate', 'cruser_id' => 'cruser_id', 'dividers2tabs' => TRUE, 'versioningWS' => 2, 'versioning_followPages' => TRUE, 'languageField' => 'sys_language_uid', 'transOrigPointerField' => 'l10n_parent', 'transOrigDiffSourceField' => 'l10n_diffsource', 'delete' => 'deleted', 'enablecolumns' => array('disabled' => 'hidden', 'starttime' => 'starttime', 'endtime' => 'endtime'), 'searchFields' => 'test_mode,metered,company_i_d,company_private_key,curtain_message,buy_button_text,login_button_text,custom_button_text,', 'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/PlenigoSetting.php', 'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) . 'Resources/Public/Icons/tx_plenigofornews_domain_model_plenigosetting.gif')); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('tx_plenigofornews_domain_model_premiumcontentproduct', 'EXT:plenigo_for_news/Resources/Private/Language/locallang_csh_tx_plenigofornews_domain_model_premiumcontentproduct.xlf'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_plenigofornews_domain_model_premiumcontentproduct'); $GLOBALS['TCA']['tx_plenigofornews_domain_model_premiumcontentproduct'] = array('ctrl' => array('title' => 'LLL:EXT:plenigo_for_news/Resources/Private/Language/locallang_db.xlf:tx_plenigofornews_domain_model_premiumcontentproduct', 'label' => 'title', 'tstamp' => 'tstamp', 'crdate' => 'crdate', 'cruser_id' => 'cruser_id', 'dividers2tabs' => TRUE, 'versioningWS' => 2, 'versioning_followPages' => TRUE, 'languageField' => 'sys_language_uid', 'transOrigPointerField' => 'l10n_parent', 'transOrigDiffSourceField' => 'l10n_diffsource', 'delete' => 'deleted', 'enablecolumns' => array('disabled' => 'hidden', 'starttime' => 'starttime', 'endtime' => 'endtime'), 'searchFields' => 'title,tag_name,product_i_d,', 'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/PremiumContentProduct.php', 'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) . 'Resources/Public/Icons/tx_plenigofornews_domain_model_premiumcontentproduct.gif')); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('tx_plenigofornews_domain_model_premiumcontentcategories', 'EXT:plenigo_for_news/Resources/Private/Language/locallang_csh_tx_plenigofornews_domain_model_premiumcontentcategories.xlf'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_plenigofornews_domain_model_premiumcontentcategories'); $GLOBALS['TCA']['tx_plenigofornews_domain_model_premiumcontentcategories'] = array('ctrl' => array('title' => 'LLL:EXT:plenigo_for_news/Resources/Private/Language/locallang_db.xlf:tx_plenigofornews_domain_model_premiumcontentcategories', 'label' => 'title', 'tstamp' => 'tstamp', 'crdate' => 'crdate', 'cruser_id' => 'cruser_id', 'dividers2tabs' => TRUE, 'versioningWS' => 2, 'versioning_followPages' => TRUE, 'languageField' => 'sys_language_uid', 'transOrigPointerField' => 'l10n_parent', 'transOrigDiffSourceField' => 'l10n_diffsource', 'delete' => 'deleted', 'enablecolumns' => array('disabled' => 'hidden', 'starttime' => 'starttime', 'endtime' => 'endtime'), 'searchFields' => 'title,id,plenigo_i_d,price,', 'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/PremiumContentCategories.php', 'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) . 'Resources/Public/Icons/tx_plenigofornews_domain_model_premiumcontentcategories.gif')); if (!isset($GLOBALS['TCA']['tx_news_domain_model_news']['ctrl']['type'])) { if (file_exists($GLOBALS['TCA']['tx_news_domain_model_news']['ctrl']['dynamicConfigFile'])) { require_once $GLOBALS['TCA']['tx_news_domain_model_news']['ctrl']['dynamicConfigFile']; } // no type field defined, so we define it here. This will only happen the first time the extension is installed!! $GLOBALS['TCA']['tx_news_domain_model_news']['ctrl']['type'] = 'tx_extbase_type'; $tempColumns = array(); $tempColumns[$GLOBALS['TCA']['tx_news_domain_model_news']['ctrl']['type']] = array('exclude' => 1, 'label' => 'LLL:EXT:plenigo_for_news/Resources/Private/Language/locallang_db.xlf:tx_plenigofornews.tx_extbase_type', 'config' => array('type' => 'select', 'items' => array(), 'size' => 1, 'maxitems' => 1)); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tx_news_domain_model_news', $tempColumns, 1); } $tmp_plenigo_for_news_columns = array('plenigo_category' => array('exclude' => 0, 'label' => 'LLL:EXT:plenigo_for_news/Resources/Private/Language/locallang_db.xlf:tx_plenigofornews_domain_model_plenigosettings.plenigo_category', 'config' => array('type' => 'select', 'foreign_table' => 'tx_plenigofornews_domain_model_premiumcontentcategories', 'minitems' => 0, 'maxitems' => 1, 'itemsProcFunc' => 'tx_plenigo_flexform->extendedCategories')), 'plenigo_product' => array('exclude' => 0, 'label' => 'LLL:EXT:plenigo_for_news/Resources/Private/Language/locallang_db.xlf:tx_plenigofornews_domain_model_plenigosettings.plenigo_product', 'config' => array('type' => 'select', 'foreign_table' => 'tx_plenigofornews_domain_model_premiumcontentproduct', 'minitems' => 0, 'maxitems' => 1, 'itemsProcFunc' => 'tx_plenigo_flexform->extendedProducts'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tx_news_domain_model_news', $tmp_plenigo_for_news_columns); $GLOBALS['TCA']['tx_news_domain_model_news']['types']['Tx_PlenigoForNews_PlenigoSettings']['showitem'] = $TCA['tx_news_domain_model_news']['types']['1']['showitem']; $GLOBALS['TCA']['tx_news_domain_model_news']['types']['Tx_PlenigoForNews_PlenigoSettings']['showitem'] .= ',--div--;LLL:EXT:plenigo_for_news/Resources/Private/Language/locallang_db.xlf:tx_plenigofornews_domain_model_plenigosettings,'; $GLOBALS['TCA']['tx_news_domain_model_news']['types']['Tx_PlenigoForNews_PlenigoSettings']['showitem'] .= 'plenigo_category, plenigo_product'; $GLOBALS['TCA']['tx_news_domain_model_news']['columns'][$TCA['tx_news_domain_model_news']['ctrl']['type']]['config']['items'][] = array('LLL:EXT:plenigo_for_news/Resources/Private/Language/locallang_db.xlf:tx_news_domain_model_news.tx_extbase_type.Tx_PlenigoForNews_PlenigoSettings', 'Tx_PlenigoForNews_PlenigoSettings'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_news_domain_model_news', $GLOBALS['TCA']['tx_news_domain_model_news']['ctrl']['type'], '', 'after:' . $TCA['tx_news_domain_model_news']['ctrl']['label']);
/** * @test */ public function addToAllTCAtypesReplacesExistingOnes() { $table = $this->getUniqueId('tx_coretest_table'); $GLOBALS['TCA'] = $this->generateTCAForTable($table); $typesBefore = $GLOBALS['TCA'][$table]['types']; ExtensionManagementUtility::addToAllTCAtypes($table, 'fieldX, --palette--;;foo', '', 'replace:fieldX'); $this->assertEquals($typesBefore, $GLOBALS['TCA'][$table]['types'], 'It\'s wrong that the "types" array changes here - the replaced field is only on palettes'); // unchanged because the palette is not used $this->assertEquals('fieldX, fieldX1, fieldY', $GLOBALS['TCA'][$table]['palettes']['paletteA']['showitem']); $this->assertEquals('fieldX, fieldX1, fieldY', $GLOBALS['TCA'][$table]['palettes']['paletteB']['showitem']); // changed $this->assertEquals('fieldX, --palette--;;foo, fieldX1, fieldY', $GLOBALS['TCA'][$table]['palettes']['paletteC']['showitem']); $this->assertEquals('fieldX, --palette--;;foo, fieldX1, fieldY', $GLOBALS['TCA'][$table]['palettes']['paletteD']['showitem']); }
<?php if (!defined('TYPO3_MODE')) { die('Access denied.'); } // TCA modification for powermail $tempColumns = array('tx_powermailext_maxlength' => array('exclude' => 0, 'label' => 'LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.attributes.maxlength', 'displayCond' => 'FIELD:type:IN:input,textarea,password', 'config' => array('type' => 'input', 'default' => '', 'size' => 4, 'eval' => 'int')), 'tx_powermailext_disabled' => array('exclude' => 0, 'label' => 'LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.attributes.disabled', 'config' => array('type' => 'check', 'default' => 0)), 'tx_powermailext_readonly' => array('exclude' => 0, 'label' => 'LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.attributes.readonly', 'config' => array('type' => 'check', 'default' => 0)), 'tx_powermailext_dependency' => array('exclude' => 0, 'label' => 'LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext.dependency.activate', 'config' => array('type' => 'check', 'default' => 0)), 'tx_powermailext_dependency_field' => array('exclude' => 0, 'label' => 'LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_field', 'displayCond' => 'FIELD:tx_powermailext_dependency:=:1', 'config' => array('type' => 'select', 'items' => array(array('LLL:EXT:powermail/Resources/Private/Language/locallang_db.xlf:pleaseChoose', 0)), 'foreign_table' => 'tx_powermail_domain_model_fields', 'foreign_table_where' => 'AND tx_powermail_domain_model_fields.pages IN (SELECT uid FROM tx_powermail_domain_model_pages WHERE tx_powermail_domain_model_pages.forms = (SELECT forms FROM tx_powermail_domain_model_pages WHERE tx_powermail_domain_model_pages.uid = ###REC_FIELD_pages###)) AND tx_powermail_domain_model_fields.uid <> ###THIS_UID###', 'default' => 0)), 'tx_powermailext_dependency_operator' => array('exclude' => 0, 'label' => 'LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_operator', 'displayCond' => 'FIELD:tx_powermailext_dependency:=:1', 'config' => array('type' => 'select', 'items' => array(array('LLL:EXT:powermail/Resources/Private/Language/locallang_db.xlf:pleaseChoose', 0), array('LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_operator.1', 1), array('LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_operator.2', 2), array('LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_operator.3', 3), array('LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_operator.4', 4), array('LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_operator.5', 5)), 'default' => 1)), 'tx_powermailext_dependency_value' => array('exclude' => 0, 'label' => 'LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_value', 'displayCond' => 'FIELD:tx_powermailext_dependency:=:1', 'config' => array('size' => 8, 'type' => 'input', 'eval' => 'trim')), 'tx_powermailext_dependency_action' => array('exclude' => 0, 'label' => 'LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_action', 'displayCond' => 'FIELD:tx_powermailext_dependency:=:1', 'config' => array('type' => 'select', 'items' => array(array('LLL:EXT:powermail/Resources/Private/Language/locallang_db.xlf:pleaseChoose', 0), array('LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_action.1', 3), array('LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_action.2', 1), array('LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_action.3', 6), array('LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_action.4', 4), array('LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency_action.5', 9)), 'default' => 0)), 'tx_powermailext_dependency_resetfield' => array('exclude' => 0, 'label' => 'LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.tx_powermailext_dependency_resetfield', 'config' => array('type' => 'check', 'default' => 0)), 'tx_extbase_type' => array('exclude' => 0, 'config' => array('type' => 'select', 'items' => array(array('Powermail Default Model', ''), array('Powermail Extended Model', 'Tx_Powermailext_Domain_Model_Field')), 'default' => 'Tx_Powermailext_Domain_Model_Field'))); // add tca columns \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tx_powermail_domain_model_fields', $tempColumns); // create new palette with the fields in showitem for maxlength, disabled, readonly $additionalAttributesPaletteIndex = max(array_keys($GLOBALS['TCA']['tx_powermail_domain_model_fields']['palettes'])) + 1; $GLOBALS['TCA']['tx_powermail_domain_model_fields']['palettes'][$additionalAttributesPaletteIndex] = array('canNotCollapse' => 1, 'showitem' => 'tx_powermailext_disabled, tx_powermailext_readonly, tx_powermailext_maxlength'); // create new palette with the fields in showitem for dependency $dependencyPaletteIndex = $additionalAttributesPaletteIndex + 1; $GLOBALS['TCA']['tx_powermail_domain_model_fields']['palettes'][$dependencyPaletteIndex] = array('canNotCollapse' => 1, 'showitem' => 'tx_powermailext_dependency, tx_powermailext_dependency_field, tx_powermailext_dependency_operator, tx_powermailext_dependency_value, --linebreak--, tx_powermailext_dependency_action, tx_powermailext_dependency_resetfield'); // add the fields to all types for the powermail fields table \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_powermail_domain_model_fields', '--palette--;LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.clf:tx_powermailext_domain_model_field.attributes;' . $additionalAttributesPaletteIndex, '', 'before:mandatory'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_powermail_domain_model_fields', '--div--;LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.xlf:tx_powermailext_domain_model_field.dependency,--palette--;LLL:EXT:powermailext/Resources/Private/Language/locallang_tca.clf:tx_powermailext_domain_model_field.dependency;' . $dependencyPaletteIndex, '', 'after:own_marker_select'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_powermail_domain_model_fields', 'tx_extbase_type'); // required for extending the model // we cant't use this since powermail 2.4 uses a different TCA type for every field type // $GLOBALS['TCA']['tx_powermail_domain_model_fields']['ctrl']['type'] = 'tx_extbase_type'; // reload TCA form if dependency is activated $GLOBALS['TCA']['tx_powermail_domain_model_fields']['ctrl']['requestUpdate'] .= ',tx_powermailext_dependency'; // show same fields for date as for input $GLOBALS['TCA']['tx_powermail_domain_model_fields']['types']['date']['showitem'] = str_replace('--palette--;Layout;43', '--palette--;Layout;42', $GLOBALS['TCA']['tx_powermail_domain_model_fields']['types']['input']['showitem']);
<?php /*************************************************************** * Copyright notice * * (c) 2015 AOE GmbH <*****@*****.**> * * All rights reserved * * This script is part of the TYPO3 project. The TYPO3 project is * free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * The GNU General Public License can be found at * http://www.gnu.org/copyleft/gpl.html. * * This script is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * This copyright notice MUST APPEAR in all copies of the script! ***************************************************************/ defined('TYPO3_MODE') or die; // Add IP Options to fe_groups table $tempColumns = array('tx_aoeipauth_ip' => array('label' => 'LLL:EXT:aoe_ipauth/Resources/Private/Language/locallang_db.xlf:fe_groups.tx_aoeipauth_ip', 'exclude' => 1, 'config' => array('type' => 'inline', 'foreign_table' => 'tx_aoeipauth_domain_model_ip', 'foreign_field' => 'fe_group', 'maxitems' => 9999, 'appearance' => array('collapse' => 1, 'levelLinksPosition' => 'top', 'showSynchronizationLink' => 0, 'showPossibleLocalizationRecords' => 0, 'showAllLocalizationLink' => 0)))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_groups', $tempColumns, 1); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('fe_groups', 'tx_aoeipauth_ip;;;;1-1-1', '', 'after:lockToDomain'); unset($tempColumns);
<?php defined('TYPO3_MODE') or die; call_user_func(function () { $tempColumns['profile_image'] = ['exclude' => 1, 'l10n_mode' => 'mergeIfNotBlank', 'label' => 'LLL:EXT:sso/Resources/Private/Language/locallang_db.xlf:fe_users.profile_image', 'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('profile_image', ['appearance' => ['createNewRelationLinkTitle' => 'LLL:EXT:sso/Resources/Private/Language/locallang_db.xlf:fe_users.profile_image.add'], 'foreign_types' => [\TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => ['showitem' => ' --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;;filePalette']]], $GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext'])]; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_users', $tempColumns, 1); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'profile_image;;;;1-1-1', '', 'after:image'); });
<?php /** * manipulate the tt_content table */ $tempColumn = array('tx_themes_buttoncontent' => array('exclude' => 1, 'label' => 'LLL:EXT:themes_gridelements/Resources/Private/Language/ButtonContent.xlf:tx_themes_buttoncontent', 'config' => array('type' => 'inline', 'appearance' => array('levelLinksPosition' => 'top', 'showPossibleLocalizationRecords' => TRUE, 'showRemovedLocalizationRecords' => TRUE, 'showAllLocalizationLink' => TRUE, 'showSynchronizationLink' => TRUE, 'enabledControls' => array('info' => TRUE, 'new' => TRUE, 'dragdrop' => TRUE, 'sort' => TRUE, 'hide' => TRUE, 'delete' => TRUE, 'localize' => TRUE)), 'inline' => array('inlineNewButtonStyle' => 'display: inline-block;'), 'behaviour' => array('localizationMode' => 'select', 'localizeChildrenAtParentLocalization' => TRUE), 'foreign_table' => 'tx_themes_buttoncontent', 'foreign_field' => 'tt_content', 'foreign_sortby' => 'sorting', 'size' => 5, 'autoSizeMax' => 20)), 'tx_themes_icon' => array('exclude' => 1, 'label' => 'LLL:EXT:themes/Resources/Private/Language/locallang.xlf:icon', 'config' => array('type' => 'select', 'selicon_cols' => 14, 'items' => array(array('', '')))), 'tx_themes_variants' => array('exclude' => 1, 'label' => 'LLL:EXT:themes/Resources/Private/Language/locallang.xlf:variants', 'config' => array('type' => 'user', 'userFunc' => 'KayStrobach\\Themes\\Tca\\ContentVariants->renderField')), 'tx_themes_behaviour' => array('exclude' => 1, 'label' => 'LLL:EXT:themes/Resources/Private/Language/locallang.xlf:behaviour', 'config' => array('type' => 'user', 'userFunc' => 'KayStrobach\\Themes\\Tca\\ContentBehaviour->renderField')), 'tx_themes_responsive' => array('exclude' => 1, 'label' => 'LLL:EXT:themes/Resources/Private/Language/locallang.xlf:responsive_settings', 'config' => array('type' => 'user', 'userFunc' => 'KayStrobach\\Themes\\Tca\\ContentResponsive->renderField'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tt_content', $tempColumn); $GLOBALS['TCA']['tt_content']['types']['themes_buttoncontent_pi1']['showitem'] = '--palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.general;general, header, header_link, tx_themes_buttoncontent, --div--;LLL:EXT:cms/locallang_ttc.xlf:tabs.appearance, --palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.frames;frames, --div--;LLL:EXT:cms/locallang_ttc.xlf:tabs.access, --palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.visibility;visibility, --palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.access;access, --div--;LLL:EXT:cms/locallang_ttc.xlf:tabs.extended, --div--;LLL:EXT:lang/locallang_tca.xlf:sys_category.tabs.category, categories'; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', 'tx_themes_icon', '', 'after:header'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', 'tx_themes_variants', '', 'after:section_frame'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', 'tx_themes_behaviour', '', 'after:tx_themes_variants'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', 'tx_themes_responsive', '', 'after:tx_themes_behaviour');
<?php defined('TYPO3_MODE') or die; // Adds the redirect field to the fe_groups table $tempColumns = array('felogin_redirectPid' => array('exclude' => 1, 'label' => 'LLL:EXT:felogin/locallang_db.xlf:felogin_redirectPid', 'config' => array('type' => 'group', 'internal_type' => 'db', 'allowed' => 'pages', 'size' => 1, 'minitems' => 0, 'maxitems' => 1, 'wizards' => array('suggest' => array('type' => 'suggest'))))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_groups', $tempColumns); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('fe_groups', 'felogin_redirectPid;;;;1-1-1', '', 'after:TSconfig');
<?php $tempColumns = array('surname' => array('exclude' => 1, 'label' => 'LLL:EXT:commerce/Resources/Private/Language/locallang_db.xml:tt_address.surname', 'config' => array('type' => 'input', 'size' => '40', 'max' => '50')), 'tx_commerce_default_values' => array('exclude' => 1, 'label' => 'LLL:EXT:commerce/Resources/Private/Language/locallang_db.xml:tt_address.tx_commerce_default_values', 'config' => array('type' => 'input', 'size' => '4', 'max' => '4', 'eval' => 'int', 'checkbox' => '0', 'range' => array('upper' => '1000', 'lower' => '10'), 'default' => 0)), 'tx_commerce_fe_user_id' => array('exclude' => 1, 'label' => 'LLL:EXT:commerce/Resources/Private/Language/locallang_db.xml:tt_address.tx_commerce_fe_user_id', 'config' => array('type' => 'group', 'internal_type' => 'db', 'allowed' => 'fe_users', 'size' => 1, 'minitems' => 0, 'maxitems' => 1)), 'tx_commerce_address_type_id' => array('exclude' => 1, 'label' => 'LLL:EXT:commerce/Resources/Private/Language/locallang_db.xml:tt_address.tx_commerce_address_type_id', 'config' => array('type' => 'select', 'item' => array(array('', 0)), 'foreign_table' => 'tx_commerce_address_types', 'foreign_table_where' => 'AND tx_commerce_address_types.pid=0', 'size' => 1, 'minitems' => 0, 'maxitems' => 1)), 'tx_commerce_is_main_address' => array('exclude' => 1, 'label' => 'LLL:EXT:commerce/Resources/Private/Language/locallang_db.xml:tt_address.tx_commerce_is_main_address', 'config' => array('type' => 'check'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tt_address', $tempColumns, 1); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_address', 'tx_commerce_default_values,tx_commerce_fe_user_id, tx_commerce_address_type_id, surname,tx_commerce_is_main_address'); /** * Put surename directly to name */ $ttaddressparts = explode('name,', $GLOBALS['TCA']['tt_address']['interface']['showRecordFieldList']); $countto = count($ttaddressparts) - 1; for ($i = 0; $i < $countto; ++$i) { if (strlen($ttaddressparts[$i]) == 0 || substr($ttaddressparts[$i], -1, 1) == ',') { $ttaddressparts[$i] = $ttaddressparts[$i] . 'name,surname,'; } else { $ttaddressparts[$i] = $ttaddressparts[$i] . 'name,'; } } $GLOBALS['TCA']['tt_address']['interface']['showRecordFieldList'] = implode('', $ttaddressparts);
<?php if (!defined('TYPO3_MODE')) { die('Access denied.'); } $tmp_roq_newsevent_columns = array('tx_roqnewsevent_is_event' => array('exclude' => 1, 'label' => 'LLL:EXT:roq_newsevent/Resources/Private/Language/locallang_db.xml:tx_roqnewsevent_is_event', 'config' => array('type' => 'check', 'default' => 0)), 'tx_roqnewsevent_startdate' => array('exclude' => 1, 'label' => 'LLL:EXT:roq_newsevent/Resources/Private/Language/locallang_db.xml:tx_roqnewsevent_startdate', 'config' => array('type' => 'input', 'size' => 7, 'eval' => 'date', 'checkbox' => 1)), 'tx_roqnewsevent_starttime' => array('exclude' => 1, 'label' => 'LLL:EXT:roq_newsevent/Resources/Private/Language/locallang_db.xml:tx_roqnewsevent_starttime', 'config' => array('type' => 'input', 'size' => 4, 'eval' => 'time', 'checkbox' => 1)), 'tx_roqnewsevent_enddate' => array('exclude' => 1, 'label' => 'LLL:EXT:roq_newsevent/Resources/Private/Language/locallang_db.xml:tx_roqnewsevent_enddate', 'config' => array('type' => 'input', 'size' => 7, 'eval' => 'date', 'checkbox' => 1)), 'tx_roqnewsevent_endtime' => array('exclude' => 1, 'label' => 'LLL:EXT:roq_newsevent/Resources/Private/Language/locallang_db.xml:tx_roqnewsevent_endtime', 'config' => array('type' => 'input', 'size' => 4, 'eval' => 'time', 'checkbox' => 1)), 'tx_roqnewsevent_location' => array('exclude' => 0, 'label' => 'LLL:EXT:roq_newsevent/Resources/Private/Language/locallang_db.xml:tx_roqnewsevent_location', 'config' => array('type' => 'input', 'size' => 30, 'eval' => 'trim'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tx_news_domain_model_news', $tmp_roq_newsevent_columns); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_news_domain_model_news', ',--div--;LLL:EXT:roq_newsevent/Resources/Private/Language/locallang_db.xml:tx_roqnewsevent_domain_model_event,tx_roqnewsevent_is_event, tx_roqnewsevent_startdate, tx_roqnewsevent_starttime, tx_roqnewsevent_enddate, tx_roqnewsevent_endtime, tx_roqnewsevent_location');
/** * Add a new field into the TCA types -> showitem * * @param string $tableName Name of the table to be categorized * @param string $fieldName Name of the field to be used to store categories * @param array $options Additional configuration options * + fieldList: field configuration to be added to showitems * + typesList: list of types that shall visualize the categories field * + position: insert position of the categories field * @return void */ protected function addToAllTCAtypes($tableName, $fieldName, array $options) { // Makes sure to add more TCA to an existing structure if (isset($GLOBALS['TCA'][$tableName]['columns'])) { if (empty($options['fieldList'])) { $fieldList = $this->addCategoryTab($tableName, $fieldName); } else { $fieldList = $options['fieldList']; } $typesList = ''; if (!empty($options['typesList'])) { $typesList = $options['typesList']; } $position = ''; if (!empty($options['position'])) { $position = $options['position']; } // Makes the new "categories" field to be visible in TSFE. ExtensionManagementUtility::addToAllTCAtypes($tableName, $fieldList, $typesList, $position); } }
'maxitems' => 10, 'appearance' => array( 'showSynchronizationLink' => 1, 'showAllLocalizationLink' => 1, 'showPossibleLocalizationRecords' => 1, 'showRemovedLocalizationRecords' => 1, ), 'behaviour' => array( 'localizationMode' => 'select', 'localizeChildrenAtParentLocalization' => TRUE, ), ) ), 'tx_irretutorial_flexform' => array( 'exclude' => 1, 'label' => 'LLL:EXT:irre_tutorial/Resources/Private/Language/locallang_db.xml:tt_content.tx_irretutorial_flexform', 'config' => array( 'type' => 'flex', 'ds' => array( 'default' => 'FILE:EXT:irre_tutorial/Configuration/FlexForms/tt_content_flexform.xml', ), ) ), ) ); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes( 'tt_content', '--div--;LLL:EXT:irre_tutorial/Resources/Private/Language/locallang_db.xml:tt_content.div.irre, tx_irretutorial_1nff_hotels, tx_irretutorial_1ncsv_hotels, tx_irretutorial_flexform' );
<?php if (!isset($GLOBALS['TCA']['fe_users']['ctrl']['type'])) { $tca = array('ctrl' => array('type' => 'tx_extbase_type'), 'columns' => array('tx_extbase_type' => array('exclude' => 1, 'label' => 'LLL:EXT:extbase/Resources/Private/Language/locallang_db.xlf:fe_users.tx_extbase_type', 'config' => array('type' => 'select', 'items' => array(array('LLL:EXT:extbase/Resources/Private/Language/locallang_db.xlf:fe_users.tx_extbase_type.0', '0'), array('LLL:EXT:extbase/Resources/Private/Language/locallang_db.xlf:fe_users.tx_extbase_type.Tx_Extbase_Domain_Model_FrontendUser', 'Tx_Extbase_Domain_Model_FrontendUser')), 'size' => 1, 'maxitems' => 1, 'default' => '0'))), 'types' => array('Tx_Extbase_Domain_Model_FrontendUser' => $GLOBALS['TCA']['fe_users']['types']['0'])); $GLOBALS['TCA']['fe_users'] = array_replace_recursive($GLOBALS['TCA']['fe_users'], $tca); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'tx_extbase_type'); } else { $GLOBALS['TCA']['fe_users']['types']['Tx_Extbase_Domain_Model_FrontendUser'] = $GLOBALS['TCA']['fe_users']['types']['0']; }
<?php defined('TYPO3_MODE') or die; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_testdatahandler_element'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tt_content', array('tx_testdatahandler_select' => array('exclude' => 1, 'label' => 'DataHandler Test Select', 'config' => array('type' => 'select', 'foreign_table' => 'tx_testdatahandler_element', 'minitems' => 1, 'maxitems' => 10, 'autoSizeMax' => '10', 'default' => '')), 'tx_testdatahandler_group' => array('exclude' => 1, 'label' => 'DataHandler Test Group', 'config' => array('type' => 'group', 'internal_type' => 'db', 'allowed' => 'tx_testdatahandler_element', 'minitems' => 1, 'maxitems' => 10, 'autoSizeMax' => '10', 'default' => '')), 'tx_testdatahandler_radio' => array('exclude' => 1, 'label' => 'DataHandler Test Radio', 'config' => array('type' => 'radio', 'items' => array(array('predefined label', 'predefined value')), 'itemsProcFunc' => 'TYPO3\\TestDatahandler\\Classes\\Tca\\RadioElementItems->getItems', 'default' => '')))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tt_content', '--div--;DataHandler Test, tx_testdatahandler_select, tx_testdatahandler_group');
<?php // Show copied pages records in frontend request $GLOBALS['TCA']['pages']['ctrl']['hideAtCopy'] = FALSE; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', array('tx_irretutorial_hotels' => array('exclude' => 1, 'label' => 'LLL:EXT:irre_tutorial/Resources/Private/Language/locallang_db.xml:pages.tx_irretutorial_hotels', 'config' => array('type' => 'inline', 'foreign_table' => 'tx_irretutorial_1nff_hotel', 'foreign_field' => 'parentid', 'foreign_table_field' => 'parenttable', 'maxitems' => 10, 'appearance' => array('showSynchronizationLink' => 1, 'showAllLocalizationLink' => 1, 'showPossibleLocalizationRecords' => 1, 'showRemovedLocalizationRecords' => 1), 'behaviour' => array('localizationMode' => 'select'))))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages', '--div--;LLL:EXT:irre_tutorial/Resources/Private/Language/locallang_db.xml:pages.doktype.div.irre, tx_irretutorial_hotels');
<?php $tempColumns = array('node_priority' => array('exclude' => 1, 'label' => 'Node Priority', 'config' => array('type' => 'input', 'size' => '7', 'eval' => 'double2'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', $tempColumns, 1); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages', 'node_priority');
<?php if (!isset($GLOBALS['TCA']['pages']['columns']['tx_realurl_pathsegment'])) { \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', array('tx_realurl_pathsegment' => array('label' => 'LLL:EXT:realurl/Resources/Private/Language/locallang_db.xlf:pages.tx_realurl_pathsegment', 'displayCond' => 'FIELD:tx_realurl_exclude:!=:1', 'exclude' => 1, 'config' => array('type' => 'input', 'max' => 255, 'eval' => 'trim,nospace,lower,uniqueInPid,DmitryDulepov\\Realurl\\Evaluator\\SegmentFieldCleaner')), 'tx_realurl_pathoverride' => array('label' => 'LLL:EXT:realurl/Resources/Private/Language/locallang_db.xlf:pages.tx_realurl_path_override', 'exclude' => 1, 'config' => array('type' => 'check', 'items' => array(array('LLL:EXT:lang/locallang_core.xlf:labels.enabled', '')))), 'tx_realurl_exclude' => array('label' => 'LLL:EXT:realurl/Resources/Private/Language/locallang_db.xlf:pages.tx_realurl_exclude', 'exclude' => 1, 'config' => array('type' => 'check', 'items' => array(array('LLL:EXT:lang/locallang_core.xlf:labels.enabled', '')))), 'tx_realurl_nocache' => array('label' => 'LLL:EXT:realurl/Resources/Private/Language/locallang_db.xlf:pages.tx_realurl_nocache', 'exclude' => 1, 'config' => array('type' => 'check', 'items' => array(array('LLL:EXT:lang/locallang_core.xlf:labels.enabled', '')))))); $GLOBALS['TCA']['pages']['ctrl']['requestUpdate'] .= ',tx_realurl_exclude'; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages', '--palette--;LLL:EXT:realurl/Resources/Private/Language/locallang_db.xlf:pages.palette_title;tx_realurl', '1', 'after:nav_title'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages', '--palette--;LLL:EXT:realurl/Resources/Private/Language/locallang_db.xlf:pages.palette_title;tx_realurl', '4,199,254', 'after:title'); $GLOBALS['TCA']['pages']['palettes']['tx_realurl'] = array('showitem' => 'tx_realurl_pathsegment,--linebreak--,tx_realurl_exclude,tx_realurl_pathoverride'); }
<?php defined('TYPO3_MODE') || die; $boot = function () { $extKey = 'px_hybrid_auth'; $extConf = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf'][$extKey]); $languageFilePrefix = 'LLL:EXT:px_hybrid_auth/Resources/Private/Language/locallang_db.xlf:'; $supportedProviders = []; foreach ($extConf['provider.'] as $provider => $config) { $provider = str_replace('.', '', $provider); if ((bool) $config['enabled']) { $supportedProviders[$provider] = TRUE; } } if (count($supportedProviders) > 0) { $tmp_columns = ['tx_pxhybridauth_identities' => ['exclude' => 1, 'label' => $languageFilePrefix . 'tx_pxhybridauth_domain_model_user.identities', 'config' => ['type' => 'inline', 'foreign_table' => 'tx_pxhybridauth_domain_model_identity', 'foreign_field' => 'fe_user', 'maxitems' => 9999, 'appearance' => ['collapseAll' => 1, 'levelLinksPosition' => 'top', 'showSynchronizationLink' => 1, 'showPossibleLocalizationRecords' => 1, 'showAllLocalizationLink' => 1]]]]; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_users', $tmp_columns); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('fe_users', '--div--;' . $languageFilePrefix . 'fe_users.tabs.px_hybrid_auth, tx_pxhybridauth_identities,', '', ''); } else { $tmp_columns = ['tx_pxhybridauth_identities' => ['exclude' => 1, 'label' => $languageFilePrefix . ':tx_pxhybridauth_domain_model_user.identities', 'config' => ['type' => 'user', 'userFunc' => \Portrino\PxHybridAuth\UserFunc\Tca::class . '->showNoProvidersConfiguredMessage']]]; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_users', $tmp_columns); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('fe_users', '--div--;' . $languageFilePrefix . 'fe_users.tabs.px_hybrid_auth, tx_pxhybridauth_identities,', '', ''); } }; $boot(); unset($boot);
<?php defined('TYPO3_MODE') or die; // Define the TCA for the static TS Config selector $staticTSConfigSelector = array('tx_bnbackend_tsconfig_files' => array('label' => 'LLL:EXT:bn_backend/locallang_db.xlf:be_groups.tx_bnbackend_tsconfig_files', 'config' => array('type' => 'select', 'size' => 10, 'maxitems' => 100, 'enableMultiSelectFilterTextfield' => TRUE, 'items' => array(), 'softref' => 'ext_fileref'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('be_groups', $staticTSConfigSelector); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('be_groups', 'tx_bnbackend_tsconfig_files', '', 'before:TSconfig');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript/001_Configuration', 'SUB Configuration'); // Plugins \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript/010_Plugins', 'SUB Plugin Configuration'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript/010_Plugins/Solr', 'SUB Solr Configuration'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript/010_Plugins/Tt_Address', 'SUB Address Configuration'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript/010_Plugins/Linkhandler', 'SUB Linkhandler Configuration'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript/010_Plugins/News', 'SUB News Configuration'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript/010_Plugins/WecMap', 'SUB Map Configuration'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript/010_Plugins/Powermail', 'SUB Powermail Configuration'); $tempColumns = ['copyright' => ['exclude' => '1', 'l10n_mode' => '', 'label' => 'LLL:EXT:tmpl_sub/Resources/Private/Language/locallang.xml:sys_file_metadata.copyright', 'config' => ['type' => 'input', 'size' => '30']], 'copyright_url' => ['exclude' => 1, 'label' => 'LLL:EXT:tmpl_sub/Resources/Private/Language/locallang.xml:sys_file_metadata.copyright_url', 'config' => ['type' => 'input', 'size' => '30', 'wizards' => ['_PADDING' => 2, 'link' => ['type' => 'popup', 'title' => 'Link', 'icon' => 'link_popup.gif', 'script' => 'browse_links.php?mode=wizard', 'JSopenParams' => 'height=300,width=500,status=0,menubar=0,scrollbars=1']]]], 'wiki_commons' => ['exclude' => '1', 'l10n_mode' => '', 'label' => 'LLL:EXT:tmpl_sub/Resources/Private/Language/locallang.xml:sys_file_metadata.wiki_commons', 'config' => ['type' => 'text', 'rows' => '6', 'cols' => '30']], 'creative_commons' => ['exclude' => '1', 'l10n_mode' => '', 'label' => 'LLL:EXT:tmpl_sub/Resources/Private/Language/locallang.xml:sys_file_metadata.creative_commons', 'config' => ['type' => 'check']]]; // Add fields to sys_file_metadata \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('sys_file_metadata', $tempColumns); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('sys_file_metadata', 'copyright', '', 'after:download_name'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('sys_file_metadata', 'copyright_url', '', 'after:copyright'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('sys_file_metadata', 'wiki_commons', '', 'after:copyright_url'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('sys_file_metadata', 'creative_commons', '', 'after:wiki_commons'); $TCA['sys_file_metadata']['columns']['alt_text']['config']['eval'] = 'required'; $TCA['sys_file_metadata']['columns']['exturl']['config']['eval'] = 'required'; $TCA['sys_file_metadata']['columns']['copyright']['config']['eval'] = 'required'; /** * Register Custom Fluid Content Element */ \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPlugin(['Social Infobox', 'tmplsub_socialinfobox'], 'CType'); /** * Prepare TCA for Custom Fluid Content Element */ $TCA['tt_content']['types']['tmplsub_socialinfobox']['showitem'] = $TCA['tt_content']['types']['bullets']['showitem']; /** * Register Lecture Content Element */ \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPlugin(['Lectures', 'tmplsub_lectures'], 'CType');
<?php if (!defined('TYPO3_MODE')) { die('Access denied.'); } $ll = 'LLL:EXT:moox_news/Resources/Private/Language/locallang_db.xlf:'; /** * Add extra fields to the pages record */ $newPagesColumns = array('news_types' => array('exclude' => 1, 'displayCond' => 'FIELD:doktype:=:254', 'l10n_mode' => 'mergeIfNotBlank', 'label' => $ll . 'pages.news_types', 'config' => array('type' => 'select', 'size' => 6, 'maxitems' => 999, 'minitems' => 0, 'allowNonIdValues' => 1, 'itemsProcFunc' => 'Tx_MooxNews_Hooks_ItemsProcFunc->user_types', 'default' => ''))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', $newPagesColumns, 1); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages', 'news_types', '', 'after:hidden');
/** * Generates and sets the tca for all the extended pages * * @param array $tca * @author Benjamin Butschell <*****@*****.**> */ public function setPageTca($tca, &$confVarsFe) { // backwards compatibility for typo3 6.2 $version = \TYPO3\CMS\Core\Utility\VersionNumberUtility::getNumericTypo3Version(); $versionNumber = \TYPO3\CMS\Core\Utility\VersionNumberUtility::convertVersionNumberToInteger($version); // Load all Page-Fields for new Tab in Backend $pageFields = array(); if ($tca) { foreach ($tca as $fieldKey => $value) { if ($versionNumber >= 7000000) { $fieldKeyTca = $fieldKey; } else { $element = array_pop($this->getElementsWhichUseField($fieldKey, "pages")); $type = $this->getFormType($fieldKey, $element["key"], "pages"); $fieldKeyTca = $fieldKey; if ($type == "Richtext") { $fieldKeyTca .= ";;;richtext[]:rte_transform[mode=ts]"; } } $pageFields[] = $fieldKeyTca; // Add addRootLineFields and pageOverlayFields for all pagefields $confVarsFe["addRootLineFields"] .= "," . $fieldKey; $confVarsFe["pageOverlayFields"] .= "," . $fieldKey; } } $pageFieldString = "--div--;Content-Fields," . implode(",", $pageFields); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages', $pageFieldString); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages_language_overlay', $pageFieldString); }
<?php defined('TYPO3_MODE') or die; $_LLL = 'LLL:EXT:cart/Resources/Private/Language/locallang_db.xlf'; $newSysCategoryColumns = ['images' => ['exclude' => 1, 'l10n_mode' => 'mergeIfNotBlank', 'label' => $_LLL . ':tx_cart_domain_model_category.image', 'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('images', ['appearance' => ['createNewRelationLinkTitle' => 'LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:images.addFileReference', 'showPossibleLocalizationRecords' => 1, 'showRemovedLocalizationRecords' => 1, 'showAllLocalizationLink' => 1, 'showSynchronizationLink' => 1], 'foreign_match_fields' => ['fieldname' => 'images', 'tablenames' => 'sys_category', 'table_local' => 'sys_file']], $GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext'])], 'cart_product_single_pid' => ['exclude' => 1, 'l10n_mode' => 'mergeIfNotBlank', 'label' => $_LLL . ':tx_cart_domain_model_category.cart_product_single_pid', 'config' => ['type' => 'group', 'internal_type' => 'db', 'allowed' => 'pages', 'size' => 1, 'maxitems' => 1, 'minitems' => 0, 'show_thumbs' => 1, 'default' => 0, 'wizards' => ['suggest' => ['type' => 'suggest', 'default' => ['searchWholePhrase' => true]]]]]]; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('sys_category', $newSysCategoryColumns); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('sys_category', '--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.options, images', '', 'before:description'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('sys_category', 'cart_product_single_pid', '', 'after:description');
<?php $ll = 'LLL:EXT:t3events_course/Resources/Private/Language/locallang_db.xlf:'; $GLOBALS['TCA']['tx_t3events_domain_model_event']['ctrl']['type'] = 'tx_extbase_type'; $extbaseType = 'Tx_T3eventsCourse_Course'; //show items for type course $courseShowItems = ' event_type,headline,subtitle,teaser,genre,description,goals,requirements, mode_instruction_form, --div--;' . $ll . 'tab.relations, audience,certificate,certificate_desc,course_contacts,contact_person,keywords, --div--;' . $ll . 'tab.images, image, --div--;' . $ll . 'tab.performances, performances;' . $ll . 'tx_t3eventscourse_domain_model_event.performances, --div--;' . $ll . 'tab.exam_degree, exam_costs,exam_remarks,degree_type,certificate, --div--;' . $ll . 'tab.visibility, tx_extbase_type,hidden,starttime,endtime,new_until,archive_date,fe_group'; $GLOBALS['TCA']['tx_t3events_domain_model_event']['types'][$extbaseType]['showitem'] = $courseShowItems; $temporaryColumns = ['requirements' => ['exclude' => 0, 'label' => $ll . 'tx_t3eventscourse_domain_model_event.requirements', 'config' => ['type' => 'text', 'cols' => 32, 'rows' => 10, 'eval' => 'trim'], 'defaultExtras' => 'richtext[]'], 'exam_costs' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventscourse_domain_model_event.exam_costs', 'config' => ['type' => 'input', 'size' => 30, 'eval' => 'double2']], 'exam_remarks' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventscourse_domain_model_event.exam_remarks', 'config' => ['type' => 'text', 'cols' => 40, 'rows' => 5, 'eval' => 'trim']], 'degree_type' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventscourse_domain_model_event.degree_type', 'config' => ['type' => 'select', 'items' => [[$ll . 'tx_t3eventscourse_domain_model_event.degree_type.0', 0], [$ll . 'tx_t3eventscourse_domain_model_event.degree_type.1', 1], [$ll . 'tx_t3eventscourse_domain_model_event.degree_type.2', 2], [$ll . 'tx_t3eventscourse_domain_model_event.degree_type.3', 3], [$ll . 'tx_t3eventscourse_domain_model_event.degree_type.4', 4]]]], 'mode_instruction_form' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form', 'config' => ['type' => 'select', 'size' => 1, 'minitems' => 0, 'maxitems' => 1, 'items' => [[$ll . '', '--div--'], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.6', 6], [$ll . '', '--div--'], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.1', 1], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.103', 103], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.104', 104], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.105', 105], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.106', 106], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.107', 107], [$ll . '', '--div--'], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.2', 2], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.3', 3], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.11', 11], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.15', 15], [$ll . '', '--div--'], [$ll . 'tx_t3eventscourse_domain_model_event.mode_instruction_form.4', 4]], 'noIconsBelowSelect' => 1]], 'certificate' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventscourse_domain_model_event.certificate', 'config' => ['type' => 'select', 'size' => 6, 'minitems' => 0, 'maxitems' => 1000, 'foreign_table' => 'tx_t3eventscourse_domain_model_certificate', 'foreign_table_where' => 'AND tx_t3eventscourse_domain_model_certificate.sys_language_uid IN (-1,0)']]]; // add type field if missing if (!isset($GLOBALS['TCA']['tx_t3events_domain_model_event']['columns']['tx_extbase_type'])) { $temporaryColumns['tx_extbase_type'] = ['config' => ['label' => $ll . 'tx_t3events_domain_model_event.tx_extbase_type', 'type' => 'select', 'items' => [[$ll . 'label.tx_extbase_type.default', ''], [$ll . 'label.tx_extbase_type.Tx_T3eventsCourse_Course', $extbaseType]]]]; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_t3events_domain_model_event', 'tx_extbase_type', '', 'before:hidden'); } else { // add type item \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem('tx_t3events_domain_model_event', 'tx_extbase_type', [$ll . 'label.tx_extbase_type.Tx_T3eventsCourse_Course', $extbaseType]); } \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tx_t3events_domain_model_event', $temporaryColumns);
<?php defined('TYPO3_MODE') or die; // Adding title tag field to pages TCA $additionalColumns = array('tx_seo_titletag' => array('exclude' => 1, 'label' => 'LLL:EXT:seo_basics/Resources/Private/Language/db.xml:pages.titletag', 'config' => array('type' => 'input', 'size' => 70, 'eval' => 'trim')), 'tx_seo_canonicaltag' => array('exclude' => 1, 'label' => 'LLL:EXT:seo_basics/Resources/Private/Language/db.xml:pages.canonicaltag', 'config' => array('type' => 'input', 'size' => 70, 'eval' => 'trim')), 'tx_seo_robots' => array('exclude' => 1, 'label' => 'LLL:EXT:seo_basics/Resources/Private/Language/db.xml:pages.tx_seo_robots', 'config' => array('type' => 'select', 'minitems' => 1, 'maxitems' => 1, 'size' => 1, 'items' => array(array('LLL:EXT:seo_basics/Resources/Private/Language/db.xml:pages.tx_seo_robots.I.0', '0'), array('LLL:EXT:seo_basics/Resources/Private/Language/db.xml:pages.tx_seo_robots.I.1', '1'), array('LLL:EXT:seo_basics/Resources/Private/Language/db.xml:pages.tx_seo_robots.I.2', '2'), array('LLL:EXT:seo_basics/Resources/Private/Language/db.xml:pages.tx_seo_robots.I.3', '3'))))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', $additionalColumns); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages', 'tx_seo_titletag, tx_seo_canonicaltag, tx_seo_robots', 1, 'before:keywords');