/** * returns the value of [TCA][$tableName][ctrl][delete] to reset the field later on with the activateDeletedFlag * * @param $tableName * @param null $columnConfiguration * * @return string */ public function deactivateDeletedFlag($tableName) { $deleteField = $GLOBALS['TCA'][$tableName]['ctrl']['delete']; $GLOBALS['TCA'][$tableName]['ctrl']['delete'] = ''; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns($tableName, $this->deletedColumnConfiguration, 1); return $deleteField; }
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'pi3/static/', 'WEC Table Map'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'pi2/static/', 'WEC Frontend User Map'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'pi1/static/', 'WEC Simple Map'); $TCA['tx_wecmap_external'] = array('ctrl' => array('title' => 'LLL:EXT:wec_map/locallang_db.xml:tx_wecmap_external', 'label' => 'title', 'tstamp' => 'tstamp', 'crdate' => 'crdate', 'delete' => 'deleted', 'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'tca.php', 'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) . 'res/icon_tx_wecmap_external_resource.gif'), 'feInterface' => array('fe_admin_fieldList' => 'title, url')); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_wecmap_external'); /* Define the address related fields for a frontend user */ if (\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('sr_feuser_register')) { $TCA['fe_users']['ctrl']['EXT']['wec_map'] = array('isMappable' => 1, 'addressFields' => array('street' => 'address', 'city' => 'city', 'state' => 'zone', 'zip' => 'zip', 'country' => 'static_info_country')); } else { $TCA['fe_users']['ctrl']['EXT']['wec_map'] = array('isMappable' => 1, 'addressFields' => array('street' => 'address', 'city' => 'city', 'state' => '', 'zip' => 'zip', 'country' => 'country')); } if (\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('tt_address')) { $TCA['tt_address']['ctrl']['EXT']['wec_map'] = array('isMappable' => 1, 'addressFields' => array('street' => 'address', 'city' => 'city', 'state' => 'region', 'zip' => 'zip', 'country' => 'country')); } if (\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('nn_address')) { $TCA['tx_nnaddress_domain_model_address']['ctrl']['EXT']['wec_map'] = array('isMappable' => 1, 'addressFields' => array('street' => 'street', 'city' => 'city', 'state' => 'region', 'zip' => 'zip', 'country' => 'country')); } /* If we want to show a map in frontend user records, add it to the TCA */ if (tx_wecmap_backend::getExtConf('feUserRecordMap')) { $mapTCA = array('tx_wecmap_map' => array('exclude' => 1, 'label' => 'LLL:EXT:wec_map/locallang_db.xml:berecord_maplabel', 'config' => array('type' => 'passthrough', 'form_type' => 'user', 'userFunc' => 'tx_wecmap_backend->drawMap'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_users', $mapTCA, 1); $TCA['fe_users']['interface']['showRecordFieldList'] .= ',tx_wecmap_map'; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('fe_users', '--div--;LLL:EXT:wec_map/locallang_db.xml:berecord_maplabel,tx_wecmap_map'); } /* If we want to show the geocoding status in frontend user records, add it to the TCA */ if (tx_wecmap_backend::getExtConf('geocodingStatus')) { $geocodeTCA = array('tx_wecmap_geocode' => array('exclude' => 1, 'label' => 'LLL:EXT:wec_map/locallang_db.xml:berecord_geocodelabel', 'config' => array('type' => 'passthrough', 'form_type' => 'user', 'userFunc' => 'tx_wecmap_backend->checkGeocodeStatus'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_users', $geocodeTCA, 1); $TCA['fe_users']['interface']['showRecordFieldList'] .= ',tx_wecmap_geocode'; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'tx_wecmap_geocode'); }
<?php $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');
<?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'));
<?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 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');
event_location,status, --div--;' . $ll . 'label.tab.price, price,free_of_charge,price_notice, --div--;' . $ll . 'label.tab.registration, --palette--;;paletteLessonRegistration,places,registration_remarks, registration_documents,external_registration_link, --div--;' . $ll . 'label.tab.participants, participants, --div--;Access, tx_extbase_type,hidden,starttime, endtime'; $GLOBALS['TCA']['tx_t3events_domain_model_performance']['types'][$extbaseType]['showitem'] = $scheduleShowItems; $temporaryColumns = ['participants' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventsreservation_domain_model_performance.participants', 'config' => ['type' => 'inline', 'foreign_table' => 'tx_t3events_domain_model_person', 'MM' => 'tx_t3eventsreservation_performance_participants_person_mm', 'appearance' => ['levelLinksPosition' => 'none', 'enabledControls' => ['info' => FALSE, 'new' => FALSE, 'dragdrop' => FALSE, 'sort' => FALSE, 'hide' => FALSE, 'delete' => FALSE, 'localize' => FALSE]]]], 'deadline' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventsreservation_domain_model_performance.deadline', 'config' => ['type' => 'input', 'size' => 7, 'eval' => 'date', 'checkbox' => 1, 'default' => time()]], 'registration_begin' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventsreservation_domain_model_performance.registration_begin', 'config' => ['type' => 'input', 'size' => 7, 'eval' => 'date', 'checkbox' => 1]], 'price' => ['exclude' => 0, 'label' => 'LLL:EXT:t3events/Resources/Private/Language/locallang_db.xml:tx_t3events_domain_model_ticketclass.price', 'config' => ['type' => 'input', 'size' => 30, 'eval' => 'double2']], 'places' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventsreservation_domain_model_performance.places', 'config' => ['type' => 'input', 'size' => 4, 'eval' => 'int']], 'free_of_charge' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventsreservation_domain_model_performance.free_of_charge', 'config' => ['type' => 'check', 'default' => '0']], 'registration_remarks' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventsreservation_domain_model_performance.registration_remarks', 'config' => ['type' => 'text', 'cols' => 40, 'rows' => 5, 'eval' => 'trim']], 'external_registration_link' => ['exclude' => 1, 'label' => $ll . 'tx_t3eventsreservation_domain_model_performance.external_registration_link', 'config' => ['type' => 'input', 'size' => 30, 'eval' => 'trim']], 'registration_documents' => ['label' => $ll . 'tx_t3eventsreservation_domain_model_performance.registration_documents', 'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('registration_documents', ['appearance' => ['headerThumbnail' => ['width' => '100', 'height' => '100'], 'createNewRelationLinkTitle' => $ll . 'label.addDocument'], 'foreign_types' => ['0' => ['showitem' => ' --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;;filePalette'], \TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => ['showitem' => ' --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;;filePalette'], \TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => ['showitem' => ' --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;;filePalette'], \TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => ['showitem' => ' --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;;filePalette']]], 'doc,docx,pdf')]]; // add type field if missing if (!isset($GLOBALS['TCA']['tx_t3events_domain_model_performance']['columns']['tx_extbase_type'])) { $temporaryColumns['tx_extbase_type'] = ['config' => ['label' => $ll . 'label.tx_extbase_type', 'type' => 'select', 'items' => [[$ll . 'label.tx_extbase_type.default', '0'], [$ll . 'label.tx_extbase_type.Tx_T3eventsReservation_Schedule', $extbaseType]]]]; \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_t3events_domain_model_performance', 'tx_extbase_type', '', 'before:hidden'); } else { // add type item \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTcaSelectItem('tx_t3events_domain_model_performance', 'tx_extbase_type', [$ll . 'label.tx_extbase_type.Tx_T3eventsReservation_Schedule', $extbaseType]); } \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tx_t3events_domain_model_performance', $temporaryColumns, TRUE); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_t3events_domain_model_performance', 'price', '', 'before:price_notice'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_t3events_domain_model_performance', 'tx_extbase_type', '', 'before:hidden');
<?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 defined('TYPO3_MODE') or die; /** * Add extra field showinpreview and some special news controls to sys_file_reference record */ $newSysFileReferenceColumns = array('showinpreview' => array('exclude' => 1, 'label' => 'LLL:EXT:news/Resources/Private/Language/locallang_db.xlf:tx_news_domain_model_media.showinpreview', 'config' => array('type' => 'check', 'default' => 0))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('sys_file_reference', $newSysFileReferenceColumns); // add special news palette $GLOBALS['TCA']['sys_file_reference']['palettes']['newsPalette'] = array('showitem' => 'showinpreview', 'canNotCollapse' => TRUE);
<?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');
<?php /** * manipulate the sys_template table. */ $tempColumn = ['tx_themes_skin' => ['exclude' => 1, 'label' => 'LLL:EXT:themes/Resources/Private/Language/locallang.xlf:themes', 'displayCond' => ['FIELD:root:REQ:true'], 'config' => ['type' => 'select', 'renderType' => 'selectSingle', 'size' => 1, 'maxitems' => 1, 'itemsProcFunc' => 'KayStrobach\\Themes\\Tca\\ThemeSelector->items', 'showIconTable' => 1]]]; // Add the skin selector for backend users. \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('sys_template', $tempColumn); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('sys_template', '--div--;Themes,tx_themes_skin');
<?php defined('TYPO3_MODE') or die; use TYPO3\CMS\Core\Utility\ExtensionManagementUtility; $temporaryColumns = array('mailhash' => array('exclude' => 1, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.mailhash', 'config' => array('type' => 'input', 'readOnly' => true)), 'activated_on' => array('exclude' => 1, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.activated_on', 'config' => array('type' => 'input', 'readOnly' => true, 'eval' => 'datetime')), 'pseudonym' => array('exclude' => 0, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.pseudonym', 'config' => array('type' => 'input', 'size' => '20', 'max' => '50', 'eval' => 'trim')), 'gender' => array('exclude' => 1, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.gender', 'config' => array('type' => 'radio', 'items' => array(array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.gender.I.1', '1'), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.gender.I.2', '2')))), 'date_of_birth' => array('exclude' => 0, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.date_of_birth', 'config' => array('type' => 'input', 'size' => '10', 'max' => '20', 'eval' => 'date', 'checkbox' => '0', 'default' => '')), 'language' => array('exclude' => 0, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.language', 'config' => array('type' => 'input', 'size' => '4', 'max' => '2', 'eval' => '', 'default' => '')), 'zone' => array('exclude' => 0, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.zone', 'config' => array('type' => 'input', 'size' => '20', 'max' => '40', 'eval' => 'trim', 'default' => '')), 'timezone' => array('exclude' => 0, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone', 'config' => array('type' => 'select', 'renderType' => 'selectSingle', 'items' => array(array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-12', -12), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-11', -11), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-10', -10), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-9.5', -9.5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-9', -9), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-8', -8), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-7', -7), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-6', -6), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-5', -5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-4.5', -4.5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-4', -4), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-3.5', -3.5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-3', -3), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-2', -2), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.-1', -1), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.0', 0), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.1', 1), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.2', 2), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.3', 3), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.3.5', 3.5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.4', 4), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.4.5', 4.5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.5', 5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.5.5', 5.5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.5.75', 5.75), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.6', 6), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.6.5', 6.5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.7', 7), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.8', 8), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.9', 9), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.9.5', 9.5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.10', 10), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.11', 11), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.11.5', 11.5), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.12', 12), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.12.75', 12.75), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.13', 13), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.timezone.I.14', 14)), 'default' => 0)), 'daylight' => array('exclude' => 1, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.daylight', 'config' => array('type' => 'check')), 'mobilephone' => array('exclude' => 1, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.mobilephone', 'config' => array('type' => 'input', 'size' => 20)), 'gtc' => array('exclude' => 1, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.gtc', 'config' => array('type' => 'check')), 'privacy' => array('exclude' => 1, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.privacy', 'config' => array('type' => 'check')), 'status' => array('exclude' => 0, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.status', 'config' => array('type' => 'select', 'renderType' => 'selectSingle', 'items' => array(array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.status.I.0', '0'), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.status.I.1', '1'), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.status.I.2', '2'), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.status.I.3', '3'), array('LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.status.I.4', '4')))), 'by_invitation' => array('exclude' => 0, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.by_invitation', 'config' => array('type' => 'check', 'default' => '0')), 'comments' => array('exclude' => 0, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.comments', 'config' => array('type' => 'text', 'rows' => '5', 'cols' => '48')), 'email_new' => array('exclude' => 0, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.email_new', 'config' => array('type' => 'input', 'size' => '20', 'max' => '80', 'eval' => 'trim')), 'module_sys_dmail_newsletter' => array('label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.module_sys_dmail_newsletter', 'exclude' => '1', 'config' => array('type' => 'check')), 'module_sys_dmail_html' => array('label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.module_sys_dmail_html', 'exclude' => '1', 'config' => array('type' => 'check'))); ExtensionManagementUtility::addTCAcolumns('fe_users', $temporaryColumns); ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'gender', '', 'before:name'); ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'pseudonym', '', 'after:username'); ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'date_of_birth, language, status', '', 'after:name'); ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'zone, timezone, daylight', '', 'after:city'); ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'mobilephone', '', 'after:telephone'); ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'email_new', '', 'after:email'); ExtensionManagementUtility::addToAllTCAtypes('fe_users', '--div--;LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.div.registration, mailhash, activated_on, gtc, privacy, by_invitation, comments, module_sys_dmail_html'); if (ExtensionManagementUtility::isLoaded('static_info_tables')) { $tempColumns = array('static_info_country' => array('exclude' => 0, 'label' => 'LLL:EXT:sf_register/Resources/Private/Language/locallang_be.xml:fe_users.static_info_country', 'config' => array('type' => 'input', 'size' => '5', 'max' => '3', 'eval' => '', 'default' => ''))); ExtensionManagementUtility::addTCAcolumns('fe_users', $tempColumns); ExtensionManagementUtility::addToAllTCAtypes('fe_users', 'static_info_country', '', 'after:zone'); }
// ################ $tempColumns = array('tx_metaseo_pagetitle' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_pagetitle', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_pagetitle_rel' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_pagetitle_rel', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_pagetitle_prefix' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_pagetitle_prefix', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_pagetitle_suffix' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_pagetitle_suffix', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_inheritance' => array('exclude' => 1, 'label' => 'LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_inheritance', 'config' => array('type' => 'select', 'items' => array(array('LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_inheritance.I.0', 0), array('LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_inheritance.I.1', 1)), 'size' => 1, 'maxitems' => 1)), 'tx_metaseo_is_exclude' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_is_exclude', 'exclude' => 1, 'config' => array('type' => 'check')), 'tx_metaseo_canonicalurl' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_canonicalurl', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim', 'wizards' => array('_PADDING' => 2, 'link' => array('type' => 'popup', 'title' => 'Link', 'icon' => 'link_popup.gif', 'script' => 'browse_links.php?mode=wizard&act=url', 'params' => array('blindLinkOptions' => 'mail'), 'JSopenParams' => 'height=300,width=500,status=0,menubar=0,scrollbars=1')))), 'tx_metaseo_priority' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_priority', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'int')), 'tx_metaseo_change_frequency' => array('exclude' => 1, 'label' => 'LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_change_frequency', 'config' => array('type' => 'select', 'items' => array(array('LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_change_frequency.I.0', 0), array('LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_change_frequency.I.1', 1), array('LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_change_frequency.I.2', 2), array('LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_change_frequency.I.3', 3), array('LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_change_frequency.I.4', 4), array('LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_change_frequency.I.5', 5), array('LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_change_frequency.I.6', 6), array('LLL:EXT:metaseo/locallang_db.php:pages.tx_metaseo_change_frequency.I.7', 7)), 'size' => 1, 'maxitems' => 1)), 'tx_metaseo_geo_lat' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_geo_lat', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_geo_long' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_geo_long', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_geo_place' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_geo_place', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_geo_region' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_geo_region', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', $tempColumns, 1); // TCA Palettes $TCA['pages']['palettes']['tx_metaseo_pagetitle'] = array('showitem' => 'tx_metaseo_pagetitle,--linebreak--,tx_metaseo_pagetitle_prefix,tx_metaseo_pagetitle_suffix,--linebreak--,tx_metaseo_inheritance', 'canNotCollapse' => 1); $TCA['pages']['palettes']['tx_metaseo_crawler'] = array('showitem' => 'tx_metaseo_is_exclude,--linebreak--,tx_metaseo_canonicalurl', 'canNotCollapse' => 1); $TCA['pages']['palettes']['tx_metaseo_sitemap'] = array('showitem' => 'tx_metaseo_priority,--linebreak--,tx_metaseo_change_frequency', 'canNotCollapse' => 1); $TCA['pages']['palettes']['tx_metaseo_geo'] = array('showitem' => 'tx_metaseo_geo_lat,--linebreak--,tx_metaseo_geo_long,--linebreak--,tx_metaseo_geo_place,--linebreak--,tx_metaseo_geo_region', 'canNotCollapse' => 1); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages', 'tx_metaseo_pagetitle_rel', '1,4,7,3', 'after:title'); // Put it for standard page \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages', '--div--;LLL:EXT:metaseo/locallang_tca.xml:pages.tab.seo;,--palette--;LLL:EXT:metaseo/locallang_tca.xml:pages.palette.pagetitle;tx_metaseo_pagetitle,--palette--;LLL:EXT:metaseo/locallang_tca.xml:pages.palette.geo;tx_metaseo_geo,--palette--;LLL:EXT:metaseo/locallang_tca.xml:pages.palette.crawler;tx_metaseo_crawler,--palette--;LLL:EXT:metaseo/locallang_tca.xml:pages.palette.sitemap;tx_metaseo_sitemap', '1,4,7,3', 'after:author_email'); // ################ // Page overlay (lang) // ################ $tempColumns = array('tx_metaseo_pagetitle' => array('exclude' => 1, 'label' => 'LLL:EXT:metaseo/locallang_db.xml:pages_language_overlay.tx_metaseo_pagetitle', 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_pagetitle_rel' => array('exclude' => 1, 'label' => 'LLL:EXT:metaseo/locallang_db.xml:pages_language_overlay.tx_metaseo_pagetitle_rel', 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_pagetitle_prefix' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_pagetitle_prefix', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_pagetitle_suffix' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_pagetitle_suffix', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim')), 'tx_metaseo_canonicalurl' => array('label' => 'LLL:EXT:metaseo/locallang_db.xml:pages.tx_metaseo_canonicalurl', 'exclude' => 1, 'config' => array('type' => 'input', 'size' => '30', 'max' => '255', 'checkbox' => '', 'eval' => 'trim', 'wizards' => array('_PADDING' => 2, 'link' => array('type' => 'popup', 'title' => 'Link', 'icon' => 'link_popup.gif', 'script' => 'browse_links.php?mode=wizard&act=url', 'params' => array('blindLinkOptions' => 'mail'), 'JSopenParams' => 'height=300,width=500,status=0,menubar=0,scrollbars=1'))))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages_language_overlay', $tempColumns, 1); // TCA Palettes $TCA['pages_language_overlay']['palettes']['tx_metaseo_pagetitle'] = array('showitem' => 'tx_metaseo_pagetitle,--linebreak--,tx_metaseo_pagetitle_prefix,tx_metaseo_pagetitle_suffix', 'canNotCollapse' => 1); $TCA['pages_language_overlay']['palettes']['tx_metaseo_crawler'] = array('showitem' => 'tx_metaseo_canonicalurl', 'canNotCollapse' => 1); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages_language_overlay', 'tx_metaseo_pagetitle_rel', '', 'after:title'); // Put it for standard page overlay \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('pages_language_overlay', '--div--;LLL:EXT:metaseo/locallang_tca.xml:pages.tab.seo;,--palette--;LLL:EXT:metaseo/locallang_tca.xml:pages.palette.pagetitle;tx_metaseo_pagetitle,--palette--;LLL:EXT:metaseo/locallang_tca.xml:pages.palette.crawler;tx_metaseo_crawler', '', 'after:author_email'); // ################ // Domains // ################ /* $tempColumns = array ( ); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('sys_domain',$tempColumns,1); */
<?php /** * Geolocation contexts: Database table backend configuration * * PHP version 5 * * @category TYPO3-Extensions * @package Contexts * @subpackage Geolocation * @author Christian Weiske <*****@*****.**> * @license http://opensource.org/licenses/gpl-license GPLv2 or later * @link http://github.com/netresearch/contexts_geolocation */ defined('TYPO3_MODE') or die('Access denied.'); if (TYPO3_MODE === 'BE') { // All other modes did load it already include_once t3lib_extMgm::extPath($_EXTKEY) . 'ext_contexts.php'; } t3lib_extMgm::addPlugin(array('LLL:EXT:contexts_geolocation/Resources/Private/Language/locallang_db.xml:tt_content.list_type_contextsgeolocation_position', $_EXTKEY . '_position'), 'list_type'); $LanguagesToContext = array('tx_contexts_geolocation_languages' => array('exclude' => 0, 'label' => 'Associated Languages', 'config' => array('type' => 'select', 'foreign_table' => 'sys_language', 'minitems' => 0, 'size' => 10, 'autoSizeMax' => 30, 'maxitems' => 9999, 'multiple' => 0))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tx_contexts_contexts', $LanguagesToContext); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_contexts_contexts', 'tx_contexts_geolocation_languages', '', 'after:alias');
/** * Add a new TCA Column * * @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 * + fieldConfiguration: TCA field config array to override defaults * + label: backend label of the categories field * @return void */ protected function addTcaColumn($tableName, $fieldName, array $options) { // Makes sure to add more TCA to an existing structure if (isset($GLOBALS['TCA'][$tableName]['columns'])) { // Take specific label into account $label = 'LLL:EXT:lang/locallang_tca.xlf:sys_category.categories'; if (!empty($options['label'])) { $label = $options['label']; } // Take specific value of exclude flag into account $exclude = TRUE; if (isset($options['exclude'])) { $exclude = (bool) $options['exclude']; } $fieldConfiguration = empty($options['fieldConfiguration']) ? array() : $options['fieldConfiguration']; $columns = array($fieldName => array('exclude' => $exclude, 'label' => $label, 'config' => static::getTcaFieldConfiguration($tableName, $fieldName, $fieldConfiguration))); if (empty($GLOBALS['TCA']['sys_category']['columns']['items']['config']['MM_oppositeUsage'][$tableName])) { $GLOBALS['TCA']['sys_category']['columns']['items']['config']['MM_oppositeUsage'][$tableName] = array(); } if (!in_array($fieldName, $GLOBALS['TCA']['sys_category']['columns']['items']['config']['MM_oppositeUsage'][$tableName])) { $GLOBALS['TCA']['sys_category']['columns']['items']['config']['MM_oppositeUsage'][$tableName][] = $fieldName; } // Adding fields to an existing table definition ExtensionManagementUtility::addTCAcolumns($tableName, $columns); } }
<?php $slick_default_fields = array('slickdefault' => array('exclude' => 0, 'label' => 'Sick Slides', 'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('slickdefault', array('collapseAll' => 1, 'maxitems' => 99, 'foreign_types' => array('0' => array('showitem' => ' --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;imageoverlayPalette, --palette--;;filePalette'), \TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => array('showitem' => ' --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.imageoverlayPalette;slickslider, --palette--;;filePalette'))), $GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tt_content', $slick_default_fields); // ************************************************ // * Backup all default cTypes add new and resort * // ************************************************ $backupCTypeItems = $GLOBALS['TCA']['tt_content']['columns']['CType']['config']['items']; $GLOBALS['TCA']['tt_content']['columns']['CType']['config']['items'] = array(array('slickcarousel', '--div--')); // Slick Basic - START $GLOBALS['TCA']['tt_content']['types']['slickcarouselbasic'] = array('showitem' => ' --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.general;general, header;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:header.ALT.div_formlabel,rowDescription, slickdefault;LLL:EXT:slickcarousel/Resources/Private/Language/be_locallang.xlf:slides, --div--;LLL:EXT:slickcarousel/Resources/Private/Language/be_locallang.xlf:settings, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.appearance, --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.frames;frames, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access, --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.visibility;visibility, --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.access;access, --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.extended --div--;Gridelements, tx_gridelements_container, tx_gridelements_columns, '); $GLOBALS['TCA']['tt_content']['columns']['CType']['config']['items'][] = array('Slick Carousel - Basic', 'slickcarouselbasic', 'EXT:slickcarousel/ext_icon.gif'); // Slick Basic - END
<?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');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns( 'tt_content', array( 'tx_irretutorial_1nff_hotels' => array( 'exclude' => 1, 'label' => 'LLL:EXT:irre_tutorial/Resources/Private/Language/locallang_db.xml:tt_content.tx_irretutorial_1nff_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', 'localizeChildrenAtParentLocalization' => TRUE, ), ) ), 'tx_irretutorial_1ncsv_hotels' => array( 'exclude' => 1, 'label' => 'LLL:EXT:irre_tutorial/Resources/Private/Language/locallang_db.xml:tt_content.tx_irretutorial_1ncsv_hotels', 'config' => array( 'type' => 'inline', 'foreign_table' => 'tx_irretutorial_1ncsv_hotel', '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', ), ) ), ) );
<?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'); }
* Registers a Backend Module */ \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']);
<?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');
* * 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! */ \TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin('MaxServ.Parsedown', 'Markdown', 'LLL:EXT:parsedown/Resources/Private/Language/Tca.xlf:plugin.markdown'); $additionalColumns = array('tx_parsedown_content' => array('exclude' => 1, 'label' => 'LLL:EXT:parsedown/Resources/Private/Language/Tca.xlf:tt_content.tx_parsedown_content', 'config' => array('type' => 'text', 'cols' => '80', 'rows' => '15')), 'tx_parsedown_preview' => array('exclude' => 1, 'label' => 'LLL:EXT:parsedown/Resources/Private/Language/Tca.xlf:tt_content.tx_parsedown_preview', 'config' => array('type' => 'user', 'userFunc' => 'MaxServ\\Parsedown\\UserFunctions\\Tca->markdownPreview'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tt_content', $additionalColumns, 1, 'after:bodytext'); $GLOBALS['TCA']['tt_content']['types']['parsedown_markdown']['showitem'] = ' --palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.general;general, tx_parsedown_content, tx_parsedown_preview, --palette--;LLL:EXT:cms/locallang_ttc.xlf:palette.header;header, --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';
<?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');
if (!defined('TYPO3_MODE')) { die('Access denied.'); } // Configuration \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'];
<?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');
/** * Generates and sets the correct tca for all the inline fields * @author Benjamin Butschell <*****@*****.**> * @param array $json */ public function setInlineTca($json) { // Generate TCA for IRRE Fields and Tables $notIrreTables = array("pages", "tt_content", "sys_file_reference"); if ($json) { foreach ($json as $table => $subJson) { $fieldTCA = array(); if (array_search($table, $notIrreTables) === FALSE) { // Generate Table TCA $this->generateTableTca($table, $subJson["tca"]); // Generate Field TCA $fieldTCA = $this->generateFieldsTca($subJson["tca"]); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns($table, $fieldTCA); // hide table in list view $GLOBALS["TCA"][$table]['ctrl']['hideTable'] = TRUE; } } } }
<?php $tmp_cr_seitenattribute_columns = array('meta_robots' => array('exclude' => 1, 'label' => 'Robots', 'config' => array('type' => 'select', 'items' => array(array('index, follow', 0), array('index, nofollow', 1), array('noindex, follow', 2), array('noindex, nofollow', 3)), 'size' => 1, 'maxitems' => 1, 'eval' => '')), 'canonical' => array('exclude' => 1, 'label' => 'Canonical', 'config' => array('type' => 'input', 'size' => '45', 'max' => '255', 'eval' => 'trim')), 'titletag' => array('exclude' => 1, 'label' => 'Seitetitel (wenn leer: Seitenüberschrift)', 'config' => array('type' => 'input', 'size' => '45', 'max' => '255', 'eval' => 'trim'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', $tmp_cr_seitenattribute_columns, 1); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addFieldsToPalette('pages', 'metatags', '--linebreak--,meta_robots,--linebreak--,canonical', 'after:description'); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addFieldsToPalette('pages', 'title', '--linebreak--,titletag', 'after:nav_title');
<?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);
/** * Add a new TCA Column * * @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 * + fieldConfiguration: TCA field config array to override defaults * + label: backend label of the categories field * + interface: boolean if the category should be included in the "interface" section of the TCA table * + l10n_mode * + l10n_display * @return void */ protected function addTcaColumn($tableName, $fieldName, array $options) { // Makes sure to add more TCA to an existing structure if (isset($GLOBALS['TCA'][$tableName]['columns'])) { // Take specific label into account $label = 'LLL:EXT:lang/locallang_tca.xlf:sys_category.categories'; if (!empty($options['label'])) { $label = $options['label']; } // Take specific value of exclude flag into account $exclude = true; if (isset($options['exclude'])) { $exclude = (bool) $options['exclude']; } $fieldConfiguration = empty($options['fieldConfiguration']) ? array() : $options['fieldConfiguration']; $columns = array($fieldName => array('exclude' => $exclude, 'label' => $label, 'config' => static::getTcaFieldConfiguration($tableName, $fieldName, $fieldConfiguration))); if (isset($options['l10n_mode'])) { $columns[$fieldName]['l10n_mode'] = $options['l10n_mode']; } if (isset($options['l10n_display'])) { $columns[$fieldName]['l10n_display'] = $options['l10n_display']; } // Register opposite references for the foreign side of a relation if (empty($GLOBALS['TCA']['sys_category']['columns']['items']['config']['MM_oppositeUsage'][$tableName])) { $GLOBALS['TCA']['sys_category']['columns']['items']['config']['MM_oppositeUsage'][$tableName] = array(); } if (!in_array($fieldName, $GLOBALS['TCA']['sys_category']['columns']['items']['config']['MM_oppositeUsage'][$tableName])) { $GLOBALS['TCA']['sys_category']['columns']['items']['config']['MM_oppositeUsage'][$tableName][] = $fieldName; } // Add field to interface list per default (unless the 'interface' property is FALSE) if ((!isset($options['interface']) || $options['interface']) && !empty($GLOBALS['TCA'][$tableName]['interface']['showRecordFieldList']) && !GeneralUtility::inList($GLOBALS['TCA'][$tableName]['interface']['showRecordFieldList'], $fieldName)) { $GLOBALS['TCA'][$tableName]['interface']['showRecordFieldList'] .= ',' . $fieldName; } // Adding fields to an existing table definition ExtensionManagementUtility::addTCAcolumns($tableName, $columns); } }