Advertisement
Guest User

TCA Class A

a guest
May 16th, 2013
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 6.23 KB | None | 0 0
  1. <?php
  2. if (!defined ('TYPO3_MODE')) {
  3.     die ('Access denied.');
  4. }
  5.  
  6. $TCA['tx_myext_domain_model_space'] = array(
  7.     'ctrl' => $TCA['tx_myext_domain_model_space']['ctrl'],
  8.     'interface' => array(
  9.         'showRecordFieldList' => 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, people, title, size, heat, type, rules',
  10.     ),
  11.     'types' => array(
  12.         '1' => array('showitem' => 'sys_language_uid;;;;1-1-1, l10n_parent, l10n_diffsource, hidden;;1, people, title, size, heat, type, rules,--div--;LLL:EXT:cms/locallang_ttc.xml:tabs.access,starttime, endtime'),
  13.     ),
  14.     'palettes' => array(
  15.         '1' => array('showitem' => ''),
  16.     ),
  17.     'columns' => array(
  18.         'sys_language_uid' => array(
  19.             'exclude' => 1,
  20.             'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.language',
  21.             'config' => array(
  22.                 'type' => 'select',
  23.                 'foreign_table' => 'sys_language',
  24.                 'foreign_table_where' => 'ORDER BY sys_language.title',
  25.                 'items' => array(
  26.                     array('LLL:EXT:lang/locallang_general.xml:LGL.allLanguages', -1),
  27.                     array('LLL:EXT:lang/locallang_general.xml:LGL.default_value', 0)
  28.                 ),
  29.             ),
  30.         ),
  31.         'l10n_parent' => array(
  32.             'displayCond' => 'FIELD:sys_language_uid:>:0',
  33.             'exclude' => 1,
  34.             'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.l18n_parent',
  35.             'config' => array(
  36.                 'type' => 'select',
  37.                 'items' => array(
  38.                     array('', 0),
  39.                 ),
  40.                 'foreign_table' => 'tx_myext_domain_model_space',
  41.                 'foreign_table_where' => 'AND tx_myext_domain_model_space.pid=###CURRENT_PID### AND tx_myext_domain_model_space.sys_language_uid IN (-1,0)',
  42.             ),
  43.         ),
  44.         'l10n_diffsource' => array(
  45.             'config' => array(
  46.                 'type' => 'passthrough',
  47.             ),
  48.         ),
  49.         't3ver_label' => array(
  50.             'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.versionLabel',
  51.             'config' => array(
  52.                 'type' => 'input',
  53.                 'size' => 30,
  54.                 'max' => 255,
  55.             )
  56.         ),
  57.         'hidden' => array(
  58.             'exclude' => 1,
  59.             'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.hidden',
  60.             'config' => array(
  61.                 'type' => 'check',
  62.             ),
  63.         ),
  64.         'starttime' => array(
  65.             'exclude' => 1,
  66.             'l10n_mode' => 'mergeIfNotBlank',
  67.             'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
  68.             'config' => array(
  69.                 'type' => 'input',
  70.                 'size' => 13,
  71.                 'max' => 20,
  72.                 'eval' => 'datetime',
  73.                 'checkbox' => 0,
  74.                 'default' => 0,
  75.                 'range' => array(
  76.                     'lower' => mktime(0, 0, 0, date('m'), date('d'), date('Y'))
  77.                 ),
  78.             ),
  79.         ),
  80.         'endtime' => array(
  81.             'exclude' => 1,
  82.             'l10n_mode' => 'mergeIfNotBlank',
  83.             'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
  84.             'config' => array(
  85.                 'type' => 'input',
  86.                 'size' => 13,
  87.                 'max' => 20,
  88.                 'eval' => 'datetime',
  89.                 'checkbox' => 0,
  90.                 'default' => 0,
  91.                 'range' => array(
  92.                     'lower' => mktime(0, 0, 0, date('m'), date('d'), date('Y'))
  93.                 ),
  94.             ),
  95.         ),
  96.         'people' => array(
  97.             'exclude' => 0,
  98.             'label' => 'LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_space.people',
  99.             'config' => array(
  100.                 'type' => 'input',
  101.                 'size' => 4,
  102.                 'eval' => 'int,required'
  103.             ),
  104.         ),
  105.         'title' => array(
  106.             'exclude' => 0,
  107.             'label' => 'LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_space.title',
  108.             'config' => array(
  109.                 'type' => 'input',
  110.                 'size' => 30,
  111.                 'eval' => 'trim,required'
  112.             ),
  113.         ),
  114.         'size' => array(
  115.             'exclude' => 0,
  116.             'label' => 'LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_space.size',
  117.             'config' => array(
  118.                 'type' => 'input',
  119.                 'size' => 30,
  120.                 'eval' => 'double2'
  121.             ),
  122.         ),
  123.         'heat' => array(
  124.             'exclude' => 0,
  125.             'label' => 'LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_space.heat',
  126.             'config' => array(
  127.                 'type' => 'check',
  128.                 'default' => 0
  129.             ),
  130.         ),
  131.         'type' => array(
  132.             'exclude' => 0,
  133.             'label' => 'LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_space.type',
  134.             'config' => array(
  135.                 'type' => 'input',
  136.                 'size' => 4,
  137.                 'eval' => 'int'
  138.             ),
  139.         ),
  140.         'rules' => array(
  141.             'exclude' => 0,
  142.             'label' => 'LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_space.rules',
  143.             'config' => array(
  144.                 'type' => 'inline',
  145.                 'foreign_table' => 'tx_myext_domain_model_rule',
  146.                 'foreign_field' => 'space',
  147.                 'maxitems'      => 9999,
  148.                 'appearance' => array(
  149.                     'collapseAll' => 0,
  150.                     'levelLinksPosition' => 'top',
  151.                     'showSynchronizationLink' => 1,
  152.                     'showPossibleLocalizationRecords' => 1,
  153.                     'showAllLocalizationLink' => 1
  154.                 ),
  155.             ),
  156.         ),
  157.         'form' => array(
  158.             'config' => array(
  159.                 'type' => 'passthrough',
  160.             ),
  161.         )
  162.     ),
  163. );
  164.  
  165. t3lib_div::loadTCA('tx_myext_domain_model_space');
  166. if (!isset($TCA['tx_myext_domain_model_space']['ctrl']['type'])) {
  167.     // no type field defined, so we define it here. This will only happen the first time the extension is installed!!
  168.     $TCA['tx_myext_domain_model_space']['ctrl']['type'] = 'tx_extbase_type';
  169.     $tempColumns = array();
  170.     $tempColumns[$TCA['tx_myext_domain_model_space']['ctrl']['type']] = array(
  171.         'exclude' => 1,
  172.         'label'   => 'LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_space.tx_extbase_type',
  173.         'config' => array(
  174.             'type' => 'select',
  175.             'items' => array(
  176.                 array('LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_space.tx_extbase_type.0','0'),                              
  177.             ),
  178.             'size' => 1,
  179.             'maxitems' => 1,
  180.             'default' => 'tx_myext_Space'
  181.         )
  182.     );
  183.     t3lib_extMgm::addTCAcolumns('tx_myext_domain_model_space', $tempColumns, 1);
  184. }
  185.  
  186. $TCA['tx_myext_domain_model_space']['types']['tx_myext_Space']['showitem'] = $TCA['tx_myext_domain_model_space']['types']['1']['showitem'];
  187. $TCA['tx_myext_domain_model_space']['columns'][$TCA['tx_myext_domain_model_space']['ctrl']['type']]['config']['items'][] = array('LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_space','tx_myext_Space');
  188. t3lib_extMgm::addToAllTCAtypes('tx_myext_domain_model_space', $TCA['tx_myext_domain_model_space']['ctrl']['type'],'','after:hidden');
  189.  
  190. require("Utility.php");
  191. ## EXTENSION BUILDER DEFAULTS END TOKEN - Everything BEFORE this line is overwritten with the defaults of the extension builder
  192. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement