Revert "[TASK] Move t3lib/stddb files to ext:core"
[Packages/TYPO3.CMS.git] / t3lib / stddb / tbl_be.php
1 <?php
2 /***************************************************************
3 * Copyright notice
4 *
5 * (c) 1999-2011 Kasper Skårhøj (kasperYYYY@typo3.com)
6 * All rights reserved
7 *
8 * This script is part of the TYPO3 project. The TYPO3 project is
9 * free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * The GNU General Public License can be found at
15 * http://www.gnu.org/copyleft/gpl.html.
16 * A copy is found in the textfile GPL.txt and important notices to the license
17 * from the author is found in LICENSE.txt distributed with these scripts.
18 *
19 *
20 * This script is distributed in the hope that it will be useful,
21 * but WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 * GNU General Public License for more details.
24 *
25 * This copyright notice MUST APPEAR in all copies of the script!
26 ***************************************************************/
27 /**
28 * Contains the dynamic configuration of the fields in the core tables
29 * of TYPO3: be_users, be_groups and sys_filemounts
30 *
31 * Revised for TYPO3 3.6 July/2003 by Kasper Skårhøj
32 *
33 * @author Kasper Skårhøj <kasperYYYY@typo3.com>
34 */
35 /**
36 * Backend users - Those who login into the TYPO3 administration backend
37 */
38 $TCA['be_users'] = array(
39 'ctrl' => $TCA['be_users']['ctrl'],
40 'interface' => array(
41 'showRecordFieldList' => 'username,usergroup,db_mountpoints,file_mountpoints,admin,options,fileoper_perms,userMods,lockToDomain,realName,email,disable,starttime,endtime,lastlogin'
42 ),
43 'columns' => array(
44 'username' => array(
45 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.username',
46 'config' => array(
47 'type' => 'input',
48 'size' => '20',
49 'max' => '50',
50 'eval' => 'nospace,lower,unique,required'
51 )
52 ),
53 'password' => array(
54 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.password',
55 'config' => array(
56 'type' => 'input',
57 'size' => '20',
58 'max' => '40',
59 'eval' => 'required,md5,password'
60 )
61 ),
62 'usergroup' => array(
63 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup',
64 'config' => array(
65 'type' => 'select',
66 'foreign_table' => 'be_groups',
67 'foreign_table_where' => 'ORDER BY be_groups.title',
68 'size' => '5',
69 'maxitems' => '20',
70 'iconsInOptionTags' => 1,
71 'wizards' => array(
72 '_PADDING' => 1,
73 '_VERTICAL' => 1,
74 'edit' => array(
75 'type' => 'popup',
76 'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_edit_title',
77 'script' => 'wizard_edit.php',
78 'popup_onlyOpenIfSelected' => 1,
79 'icon' => 'edit2.gif',
80 'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1'
81 ),
82 'add' => array(
83 'type' => 'script',
84 'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_add_title',
85 'icon' => 'add.gif',
86 'params' => array(
87 'table' => 'be_groups',
88 'pid' => '0',
89 'setValue' => 'prepend'
90 ),
91 'script' => 'wizard_add.php'
92 ),
93 'list' => array(
94 'type' => 'script',
95 'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_list_title',
96 'icon' => 'list.gif',
97 'params' => array(
98 'table' => 'be_groups',
99 'pid' => '0'
100 ),
101 'script' => 'wizard_list.php'
102 )
103 )
104 )
105 ),
106 'lockToDomain' => array(
107 'label' => 'LLL:EXT:lang/locallang_tca.xml:lockToDomain',
108 'config' => array(
109 'type' => 'input',
110 'size' => '20',
111 'eval' => 'trim',
112 'max' => '50',
113 'softref' => 'substitute'
114 )
115 ),
116 'db_mountpoints' => array(
117 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options_db_mounts',
118 'config' => array(
119 'type' => 'group',
120 'internal_type' => 'db',
121 'allowed' => 'pages',
122 'size' => '3',
123 'maxitems' => 25,
124 'autoSizeMax' => 10,
125 'show_thumbs' => '1',
126 'wizards' => array(
127 'suggest' => array(
128 'type' => 'suggest'
129 )
130 )
131 )
132 ),
133 'file_mountpoints' => array(
134 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options_file_mounts',
135 'config' => array(
136 'type' => 'select',
137 'foreign_table' => 'sys_filemounts',
138 'foreign_table_where' => ' AND sys_filemounts.pid=0 ORDER BY sys_filemounts.title',
139 'size' => '3',
140 'maxitems' => 25,
141 'autoSizeMax' => 10,
142 'iconsInOptionTags' => 1,
143 'wizards' => array(
144 '_PADDING' => 1,
145 '_VERTICAL' => 1,
146 'edit' => array(
147 'type' => 'popup',
148 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_edit_title',
149 'script' => 'wizard_edit.php',
150 'icon' => 'edit2.gif',
151 'popup_onlyOpenIfSelected' => 1,
152 'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1'
153 ),
154 'add' => array(
155 'type' => 'script',
156 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_add_title',
157 'icon' => 'add.gif',
158 'params' => array(
159 'table' => 'sys_filemounts',
160 'pid' => '0',
161 'setValue' => 'prepend'
162 ),
163 'script' => 'wizard_add.php'
164 ),
165 'list' => array(
166 'type' => 'script',
167 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_list_title',
168 'icon' => 'list.gif',
169 'params' => array(
170 'table' => 'sys_filemounts',
171 'pid' => '0'
172 ),
173 'script' => 'wizard_list.php'
174 )
175 )
176 )
177 ),
178 'email' => array(
179 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.email',
180 'config' => array(
181 'type' => 'input',
182 'size' => '20',
183 'eval' => 'trim',
184 'max' => '80',
185 'softref' => 'email[subst]'
186 )
187 ),
188 'realName' => array(
189 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.name',
190 'config' => array(
191 'type' => 'input',
192 'size' => '20',
193 'eval' => 'trim',
194 'max' => '80'
195 )
196 ),
197 'disable' => array(
198 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
199 'config' => array(
200 'type' => 'check'
201 )
202 ),
203 'disableIPlock' => array(
204 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.disableIPlock',
205 'config' => array(
206 'type' => 'check'
207 )
208 ),
209 'admin' => array(
210 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.admin',
211 'config' => array(
212 'type' => 'check',
213 'default' => '0'
214 )
215 ),
216 'options' => array(
217 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options',
218 'config' => array(
219 'type' => 'check',
220 'items' => array(
221 array('LLL:EXT:lang/locallang_tca.xml:be_users.options_db_mounts', 0),
222 array('LLL:EXT:lang/locallang_tca.xml:be_users.options_file_mounts', 0)
223 ),
224 'default' => '3'
225 )
226 ),
227 'fileoper_perms' => array(
228 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms',
229 'config' => array(
230 'type' => 'check',
231 'items' => array(
232 array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_general', 0),
233 array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_unzip', 0),
234 array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms', 0),
235 array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms_copy', 0),
236 array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms_delete', 0)
237 ),
238 'default' => '0'
239 )
240 ),
241 'workspace_perms' => array(
242 'label' => 'LLL:EXT:lang/locallang_tca.xml:workspace_perms',
243 'config' => array(
244 'type' => 'check',
245 'items' => array(
246 array('LLL:EXT:lang/locallang_tca.xml:workspace_perms_live', 0)
247 ),
248 'default' => 1
249 )
250 ),
251 'starttime' => array(
252 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
253 'config' => array(
254 'type' => 'input',
255 'size' => '13',
256 'max' => '20',
257 'eval' => 'datetime',
258 'default' => '0'
259 )
260 ),
261 'endtime' => array(
262 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
263 'config' => array(
264 'type' => 'input',
265 'size' => '13',
266 'max' => '20',
267 'eval' => 'datetime',
268 'default' => '0',
269 'range' => array(
270 'upper' => mktime(0, 0, 0, 12, 31, 2020)
271 )
272 )
273 ),
274 'lang' => array(
275 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.lang',
276 'config' => array(
277 'type' => 'select',
278 'items' => array(
279 array('English', '')
280 )
281 )
282 ),
283 'userMods' => array(
284 'label' => 'LLL:EXT:lang/locallang_tca.xml:userMods',
285 'config' => array(
286 'type' => 'select',
287 'special' => 'modListUser',
288 'size' => '5',
289 'autoSizeMax' => 50,
290 'maxitems' => '100',
291 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
292 'iconsInOptionTags' => 1
293 )
294 ),
295 'allowed_languages' => array(
296 'label' => 'LLL:EXT:lang/locallang_tca.xml:allowed_languages',
297 'config' => array(
298 'type' => 'select',
299 'special' => 'languages',
300 'maxitems' => '1000',
301 'renderMode' => 'checkbox'
302 )
303 ),
304 'TSconfig' => array(
305 'label' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig',
306 'config' => array(
307 'type' => 'text',
308 'cols' => '40',
309 'rows' => '5',
310 'wizards' => array(
311 '_PADDING' => 4,
312 '0' => array(
313 'type' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('tsconfig_help') ? 'popup' : '',
314 'title' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig_title',
315 'script' => 'wizard_tsconfig.php?mode=beuser',
316 'icon' => 'wizard_tsconfig.gif',
317 'JSopenParams' => 'height=500,width=780,status=0,menubar=0,scrollbars=1'
318 )
319 ),
320 'softref' => 'TSconfig'
321 ),
322 'defaultExtras' => 'fixed-font : enable-tab'
323 ),
324 'createdByAction' => array(
325 'config' => array(
326 'type' => 'passthrough'
327 )
328 ),
329 'lastlogin' => array(
330 'label' => 'LLL:EXT:lang/locallang_general.php:LGL.lastlogin',
331 'config' => array(
332 'type' => 'input',
333 'readOnly' => '1',
334 'size' => '12',
335 'eval' => 'datetime',
336 'default' => 0
337 )
338 )
339 ),
340 'types' => array(
341 '0' => array('showitem' => 'disable;;;;1-1-1, username;;;;2-2-2, password, usergroup;;;;3-3-3, admin;;;;1-1-1, realName;;;;3-3-3, email, lang, lastlogin;;;;1-1-1,
342 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.rights, userMods;;;;2-2-2, allowed_languages,
343 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.mounts_and_workspaces, workspace_perms;;;;1-1-1, db_mountpoints;;;;2-2-2, options, file_mountpoints;;;;3-3-3, fileoper_perms,
344 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.options, lockToDomain;;;;1-1-1, disableIPlock, TSconfig;;;;2-2-2,
345 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.access, starttime;;;;1-1-1,endtime,
346 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.extended'),
347 '1' => array('showitem' => 'disable;;;;1-1-1, username;;;;2-2-2, password, usergroup;;;;3-3-3, admin;;;;1-1-1, realName;;;;3-3-3, email, lang, lastlogin;;;;1-1-1,
348 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.options, disableIPlock;;;;1-1-1, TSconfig;;;;2-2-2, db_mountpoints;;;;3-3-3, options, file_mountpoints;;;;4-4-4,
349 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.access, starttime;;;;1-1-1,endtime,
350 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.extended')
351 )
352 );
353 // Populate available languages
354 /**
355 * @var $locales t3lib_l10n_locales
356 */
357 $locales = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Localization\\Locales');
358 $languageItems = $locales->getLanguages();
359 unset($languageItems['default']);
360 asort($languageItems);
361 foreach ($languageItems as $locale => $name) {
362 $TCA['be_users']['columns']['lang']['config']['items'][] = array($name, $locale);
363 }
364 /**
365 * Backend usergroups - Much permission criterias are based on membership
366 * of backend groups.
367 */
368 $TCA['be_groups'] = array(
369 'ctrl' => $TCA['be_groups']['ctrl'],
370 'interface' => array(
371 'showRecordFieldList' => 'title, db_mountpoints, file_mountpoints, fileoper_perms, inc_access_lists, tables_select, tables_modify, pagetypes_select, non_exclude_fields, groupMods, lockToDomain, description'
372 ),
373 'columns' => array(
374 'title' => array(
375 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.title',
376 'config' => array(
377 'type' => 'input',
378 'size' => '25',
379 'max' => '50',
380 'eval' => 'trim,required'
381 )
382 ),
383 'db_mountpoints' => array(
384 'label' => 'LLL:EXT:lang/locallang_tca.xml:db_mountpoints',
385 'config' => array(
386 'type' => 'group',
387 'internal_type' => 'db',
388 'allowed' => 'pages',
389 'size' => '3',
390 'maxitems' => 25,
391 'autoSizeMax' => 10,
392 'show_thumbs' => '1',
393 'wizards' => array(
394 'suggest' => array(
395 'type' => 'suggest'
396 )
397 )
398 )
399 ),
400 'file_mountpoints' => array(
401 'label' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints',
402 'config' => array(
403 'type' => 'select',
404 'foreign_table' => 'sys_filemounts',
405 'foreign_table_where' => ' AND sys_filemounts.pid=0 ORDER BY sys_filemounts.title',
406 'size' => '3',
407 'maxitems' => 25,
408 'autoSizeMax' => 10,
409 'iconsInOptionTags' => 1,
410 'wizards' => array(
411 '_PADDING' => 1,
412 '_VERTICAL' => 1,
413 'edit' => array(
414 'type' => 'popup',
415 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_edit_title',
416 'script' => 'wizard_edit.php',
417 'popup_onlyOpenIfSelected' => 1,
418 'icon' => 'edit2.gif',
419 'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1'
420 ),
421 'add' => array(
422 'type' => 'script',
423 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_add_title',
424 'icon' => 'add.gif',
425 'params' => array(
426 'table' => 'sys_filemounts',
427 'pid' => '0',
428 'setValue' => 'prepend'
429 ),
430 'script' => 'wizard_add.php'
431 ),
432 'list' => array(
433 'type' => 'script',
434 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_list_title',
435 'icon' => 'list.gif',
436 'params' => array(
437 'table' => 'sys_filemounts',
438 'pid' => '0'
439 ),
440 'script' => 'wizard_list.php'
441 )
442 )
443 )
444 ),
445 'fileoper_perms' => array(
446 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms',
447 'config' => array(
448 'type' => 'check',
449 'items' => array(
450 array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_general', 0),
451 array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_unzip', 0),
452 array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms', 0),
453 array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms_copy', 0),
454 array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms_delete', 0)
455 ),
456 'default' => '7'
457 )
458 ),
459 'workspace_perms' => array(
460 'label' => 'LLL:EXT:lang/locallang_tca.xml:workspace_perms',
461 'config' => array(
462 'type' => 'check',
463 'items' => array(
464 array('LLL:EXT:lang/locallang_tca.xml:workspace_perms_live', 0)
465 ),
466 'default' => 0
467 )
468 ),
469 'pagetypes_select' => array(
470 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.pagetypes_select',
471 'config' => array(
472 'type' => 'select',
473 'special' => 'pagetypes',
474 'size' => '5',
475 'autoSizeMax' => 50,
476 'maxitems' => 20,
477 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
478 'iconsInOptionTags' => 1
479 )
480 ),
481 'tables_modify' => array(
482 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.tables_modify',
483 'config' => array(
484 'type' => 'select',
485 'special' => 'tables',
486 'size' => '5',
487 'autoSizeMax' => 50,
488 'maxitems' => 100,
489 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
490 'iconsInOptionTags' => 1
491 )
492 ),
493 'tables_select' => array(
494 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.tables_select',
495 'config' => array(
496 'type' => 'select',
497 'special' => 'tables',
498 'size' => '5',
499 'autoSizeMax' => 50,
500 'maxitems' => 100,
501 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
502 'iconsInOptionTags' => 1
503 )
504 ),
505 'non_exclude_fields' => array(
506 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.non_exclude_fields',
507 'config' => array(
508 'type' => 'select',
509 'special' => 'exclude',
510 'size' => '25',
511 'maxitems' => 1000,
512 'autoSizeMax' => 50,
513 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
514 'itemListStyle' => 'width:500px'
515 )
516 ),
517 'explicit_allowdeny' => array(
518 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.explicit_allowdeny',
519 'config' => array(
520 'type' => 'select',
521 'special' => 'explicitValues',
522 'maxitems' => 1000,
523 'renderMode' => 'checkbox'
524 )
525 ),
526 'allowed_languages' => array(
527 'label' => 'LLL:EXT:lang/locallang_tca.xml:allowed_languages',
528 'config' => array(
529 'type' => 'select',
530 'special' => 'languages',
531 'maxitems' => 1000,
532 'renderMode' => 'checkbox'
533 )
534 ),
535 'custom_options' => array(
536 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.custom_options',
537 'config' => array(
538 'type' => 'select',
539 'special' => 'custom',
540 'maxitems' => 1000,
541 'renderMode' => 'checkbox'
542 )
543 ),
544 'hidden' => array(
545 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
546 'config' => array(
547 'type' => 'check',
548 'default' => '0'
549 )
550 ),
551 'lockToDomain' => array(
552 'label' => 'LLL:EXT:lang/locallang_tca.xml:lockToDomain',
553 'config' => array(
554 'type' => 'input',
555 'size' => '20',
556 'eval' => 'trim',
557 'max' => '50',
558 'softref' => 'substitute'
559 )
560 ),
561 'groupMods' => array(
562 'label' => 'LLL:EXT:lang/locallang_tca.xml:userMods',
563 'config' => array(
564 'type' => 'select',
565 'special' => 'modListGroup',
566 'size' => '5',
567 'autoSizeMax' => 50,
568 'maxitems' => 100,
569 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
570 'iconsInOptionTags' => 1
571 )
572 ),
573 'inc_access_lists' => array(
574 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.inc_access_lists',
575 'config' => array(
576 'type' => 'check',
577 'default' => '0'
578 )
579 ),
580 'description' => array(
581 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.description',
582 'config' => array(
583 'type' => 'text',
584 'rows' => 5,
585 'cols' => 30
586 )
587 ),
588 'TSconfig' => array(
589 'label' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig',
590 'config' => array(
591 'type' => 'text',
592 'cols' => '40',
593 'rows' => '5',
594 'wizards' => array(
595 '_PADDING' => 4,
596 '0' => array(
597 'type' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('tsconfig_help') ? 'popup' : '',
598 'title' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig_title',
599 'script' => 'wizard_tsconfig.php?mode=beuser',
600 'icon' => 'wizard_tsconfig.gif',
601 'JSopenParams' => 'height=500,width=780,status=0,menubar=0,scrollbars=1'
602 )
603 ),
604 'softref' => 'TSconfig'
605 ),
606 'defaultExtras' => 'fixed-font : enable-tab'
607 ),
608 'hide_in_lists' => array(
609 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.hide_in_lists',
610 'config' => array(
611 'type' => 'check',
612 'default' => 0
613 )
614 ),
615 'subgroup' => array(
616 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.subgroup',
617 'config' => array(
618 'type' => 'select',
619 'foreign_table' => 'be_groups',
620 'foreign_table_where' => 'AND NOT(be_groups.uid = ###THIS_UID###) AND be_groups.hidden=0 ORDER BY be_groups.title',
621 'size' => '5',
622 'autoSizeMax' => 50,
623 'maxitems' => 20,
624 'iconsInOptionTags' => 1
625 )
626 )
627 ),
628 'types' => array(
629 '0' => array('showitem' => 'hidden;;;;1-1-1, title;;;;2-2-2, description, subgroup;;;;3-3-3,
630 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.base_rights, inc_access_lists;;;;1-1-1,
631 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.mounts_and_workspaces, workspace_perms;;;;1-1-1, db_mountpoints;;;;2-2-2, file_mountpoints;;;;3-3-3, fileoper_perms,
632 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.options, lockToDomain;;;;1-1-1, hide_in_lists;;;;2-2-2, TSconfig;;;;3-3-3,
633 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.extended'),
634 '1' => array('showitem' => 'hidden;;;;1-1-1, title;;;;2-2-2, description, subgroup;;;;3-3-3,
635 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.base_rights, inc_access_lists;;;;1-1-1, groupMods, tables_select, tables_modify, pagetypes_select, non_exclude_fields, explicit_allowdeny , allowed_languages;;;;2-2-2, custom_options;;;;3-3-3,
636 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.mounts_and_workspaces, workspace_perms;;;;1-1-1, db_mountpoints;;;;2-2-2, file_mountpoints;;;;3-3-3, fileoper_perms,
637 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.options, lockToDomain;;;;1-1-1, hide_in_lists;;;;2-2-2, TSconfig;;;;3-3-3,
638 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.extended')
639 )
640 );
641 /**
642 * System filemounts - Defines filepaths on the server which can be mounted for users so they can upload and manage files online by eg. the Filelist module
643 */
644 $TCA['sys_filemounts'] = array(
645 'ctrl' => $TCA['sys_filemounts']['ctrl'],
646 'interface' => array(
647 'showRecordFieldList' => 'title,hidden,path,base'
648 ),
649 'columns' => array(
650 'title' => array(
651 'label' => 'LLL:EXT:lang/locallang_tca.xml:sys_filemounts.title',
652 'config' => array(
653 'type' => 'input',
654 'size' => '20',
655 'max' => '30',
656 'eval' => 'required,trim'
657 )
658 ),
659 'hidden' => array(
660 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
661 'config' => array(
662 'type' => 'check'
663 )
664 ),
665 'base' => array(
666 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.baseStorage',
667 'config' => array(
668 'type' => 'select',
669 'foreign_table' => 'sys_file_storage',
670 'size' => 1,
671 'maxitems' => 1
672 )
673 ),
674 'path' => array(
675 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.folder',
676 'config' => array(
677 'type' => 'select',
678 'items' => array(),
679 'itemsProcFunc' => 'typo3/sysext/core/Classes/Resource/Service/UserFileMountService.php:TYPO3\CMS\Core\Resource\Service\UserFileMountService->renderTceformsSelectDropdown',
680 )
681 )
682 ),
683 'types' => array(
684 '0' => array('showitem' => '--palette--;;mount, base, path')
685 ),
686 'palettes' => array(
687 'mount' => array('showitem' => 'title,hidden', 'canNotCollapse' => 1)
688 )
689 );
690 /**
691 * tca-record collections
692 */
693 $TCA['sys_collection'] = array(
694 'ctrl' => $TCA['sys_collection']['ctrl'],
695 'interface' => array(
696 'showRecordFieldList' => 'title, description, table_name, items'
697 ),
698 'feInterface' => $TCA['sys_collection']['feInterface'],
699 'columns' => array(
700 't3ver_label' => array(
701 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.versionLabel',
702 'config' => array(
703 'type' => 'input',
704 'size' => '30',
705 'max' => '30'
706 )
707 ),
708 'sys_language_uid' => array(
709 'exclude' => 1,
710 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.language',
711 'config' => array(
712 'type' => 'select',
713 'foreign_table' => 'sys_language',
714 'foreign_table_where' => 'ORDER BY sys_language.title',
715 'items' => array(
716 array('LLL:EXT:lang/locallang_general.xml:LGL.allLanguages', -1),
717 array('LLL:EXT:lang/locallang_general.xml:LGL.default_value', 0)
718 )
719 )
720 ),
721 'l10n_parent' => array(
722 'displayCond' => 'FIELD:sys_language_uid:>:0',
723 'exclude' => 1,
724 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.l18n_parent',
725 'config' => array(
726 'type' => 'select',
727 'items' => array(
728 array('', 0)
729 ),
730 'foreign_table' => 'sys_file_collection',
731 'foreign_table_where' => 'AND sys_file_collection.pid=###CURRENT_PID### AND sys_file_collection.sys_language_uid IN (-1,0)'
732 )
733 ),
734 'l10n_diffsource' => array(
735 'config' => array(
736 'type' => 'passthrough'
737 )
738 ),
739 'hidden' => array(
740 'exclude' => 1,
741 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.hidden',
742 'config' => array(
743 'type' => 'check',
744 'default' => '0'
745 )
746 ),
747 'starttime' => array(
748 'exclude' => 1,
749 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
750 'config' => array(
751 'type' => 'input',
752 'size' => '8',
753 'max' => '20',
754 'eval' => 'date',
755 'default' => '0',
756 'checkbox' => '0'
757 )
758 ),
759 'endtime' => array(
760 'exclude' => 1,
761 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
762 'config' => array(
763 'type' => 'input',
764 'size' => '8',
765 'max' => '20',
766 'eval' => 'date',
767 'checkbox' => '0',
768 'default' => '0',
769 'range' => array(
770 'upper' => mktime(3, 14, 7, 1, 19, 2038),
771 'lower' => mktime(0, 0, 0, date('m') - 1, date('d'), date('Y'))
772 )
773 )
774 ),
775 'fe_group' => array(
776 'exclude' => 1,
777 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.fe_group',
778 'config' => array(
779 'type' => 'select',
780 'items' => array(
781 array('', 0),
782 array('LLL:EXT:lang/locallang_general.xml:LGL.hide_at_login', -1),
783 array('LLL:EXT:lang/locallang_general.xml:LGL.any_login', -2),
784 array('LLL:EXT:lang/locallang_general.xml:LGL.usergroups', '--div--')
785 ),
786 'foreign_table' => 'fe_groups'
787 )
788 ),
789 'table_name' => array(
790 'exclude' => 0,
791 'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection.table_name',
792 'config' => array(
793 'type' => 'select',
794 'special' => 'tables'
795 )
796 ),
797 'items' => array(
798 'exclude' => 0,
799 'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection.items',
800 'config' => array(
801 'type' => 'group',
802 'internal_type' => 'db',
803 'prepend_tname' => TRUE,
804 'allowed' => '*',
805 'MM' => 'sys_collection_entries',
806 'MM_hasUidField' => TRUE,
807 'multiple' => TRUE
808 )
809 ),
810 'title' => array(
811 'exclude' => 0,
812 'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection.title',
813 'config' => array(
814 'type' => 'input',
815 'size' => '60',
816 'eval' => 'required'
817 )
818 ),
819 'description' => array(
820 'exclude' => 0,
821 'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection.description',
822 'config' => array(
823 'type' => 'text',
824 'cols' => '60',
825 'rows' => '5'
826 )
827 ),
828 'type' => array(
829 'exclude' => 0,
830 'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection.type',
831 'config' => array(
832 'type' => 'select',
833 'items' => array(
834 array('LLL:EXT:lang/locallang_tca.xlf:sys_collection.type.static', 'static')
835 ),
836 'default' => 'static'
837 )
838 )
839 ),
840 'types' => array(
841 'static' => array('showitem' => 'title;;1,type, description,table_name, items')
842 ),
843 'palettes' => array(
844 '1' => array('showitem' => 'starttime, endtime, fe_group, sys_language_uid, l10n_parent, l10n_diffsource, hidden')
845 )
846 );
847 /**
848 * System log history - keeps a trail of record edits
849 */
850 $TCA['sys_history'] = array(
851 'ctrl' => $TCA['sys_history']['ctrl'],
852 'columns' => array(
853 'sys_log_uid' => array(
854 'label' => 'sys_log_uid',
855 'config' => array(
856 'type' => 'input'
857 )
858 ),
859 'history_data' => array(
860 'label' => 'history_data',
861 'config' => array(
862 'type' => 'input'
863 )
864 ),
865 'fieldlist' => array(
866 'label' => 'fieldlist',
867 'config' => array(
868 'type' => 'input'
869 )
870 ),
871 'recuid' => array(
872 'label' => 'recuid',
873 'config' => array(
874 'type' => 'input'
875 )
876 ),
877 'tablename' => array(
878 'label' => 'tablename',
879 'config' => array(
880 'type' => 'input'
881 )
882 ),
883 'tstamp' => array(
884 'label' => 'tstamp',
885 'config' => array(
886 'type' => 'input'
887 )
888 ),
889 'history_files' => array(
890 'label' => 'history_files',
891 'config' => array(
892 'type' => 'input'
893 )
894 ),
895 'snapshot' => array(
896 'label' => 'snapshot',
897 'config' => array(
898 'type' => 'input'
899 )
900 )
901 ),
902 'types' => array(
903 '1' => array(
904 'showitem' => 'sys_log_uid, history_data, fieldlist, recuid, tablename, tstamp, history_files, snapshot'
905 )
906 )
907 );
908 /**
909 * System languages - Defines possible languages used for translation of records in the system
910 */
911 $TCA['sys_language'] = array(
912 'ctrl' => $TCA['sys_language']['ctrl'],
913 'interface' => array(
914 'showRecordFieldList' => 'hidden,title'
915 ),
916 'columns' => array(
917 'title' => array(
918 'label' => 'LLL:EXT:lang/locallang_general.php:LGL.language',
919 'config' => array(
920 'type' => 'input',
921 'size' => '35',
922 'max' => '80',
923 'eval' => 'trim,required'
924 )
925 ),
926 'hidden' => array(
927 'label' => 'LLL:EXT:lang/locallang_general.php:LGL.disable',
928 'exclude' => 1,
929 'config' => array(
930 'type' => 'check',
931 'default' => '0'
932 )
933 ),
934 'static_lang_isocode' => array(
935 'exclude' => 1,
936 'label' => 'LLL:EXT:lang/locallang_tca.php:sys_language.isocode',
937 'displayCond' => 'EXT:static_info_tables:LOADED:true',
938 'config' => array(
939 'type' => 'select',
940 'items' => array(
941 array('', 0)
942 ),
943 'foreign_table' => 'static_languages',
944 'foreign_table_where' => 'AND static_languages.pid=0 ORDER BY static_languages.lg_name_en',
945 'size' => 1,
946 'minitems' => 0,
947 'maxitems' => 1
948 )
949 ),
950 'flag' => array(
951 'label' => 'LLL:EXT:lang/locallang_tca.php:sys_language.flag',
952 'config' => array(
953 'type' => 'select',
954 'items' => array(
955 array('', 0, '')
956 ),
957 'selicon_cols' => 16,
958 'size' => 1,
959 'minitems' => 0,
960 'maxitems' => 1
961 )
962 )
963 ),
964 'types' => array(
965 '1' => array('showitem' => 'hidden;;;;1-1-1,title;;;;2-2-2,static_lang_isocode,flag')
966 )
967 );
968 /**
969 * System log
970 */
971 $TCA['sys_log'] = array(
972 'ctrl' => $TCA['sys_log']['ctrl'],
973 'columns' => array(
974 'tstamp' => array(
975 'label' => 'tstamp',
976 'config' => array(
977 'type' => 'input'
978 )
979 ),
980 'userid' => array(
981 'label' => 'userid',
982 'config' => array(
983 'type' => 'input'
984 )
985 ),
986 'action' => array(
987 'label' => 'action',
988 'config' => array(
989 'type' => 'input'
990 )
991 ),
992 'recuid' => array(
993 'label' => 'recuid',
994 'config' => array(
995 'type' => 'input'
996 )
997 ),
998 'tablename' => array(
999 'label' => 'tablename',
1000 'config' => array(
1001 'type' => 'input'
1002 )
1003 ),
1004 'recpid' => array(
1005 'label' => 'recpid',
1006 'config' => array(
1007 'type' => 'input'
1008 )
1009 ),
1010 'error' => array(
1011 'label' => 'error',
1012 'config' => array(
1013 'type' => 'input'
1014 )
1015 ),
1016 'details' => array(
1017 'label' => 'details',
1018 'config' => array(
1019 'type' => 'input'
1020 )
1021 ),
1022 'type' => array(
1023 'label' => 'type',
1024 'config' => array(
1025 'type' => 'input'
1026 )
1027 ),
1028 'detail_nr' => array(
1029 'label' => 'detail_nr',
1030 'config' => array(
1031 'type' => 'input'
1032 )
1033 ),
1034 'IP' => array(
1035 'label' => 'IP',
1036 'config' => array(
1037 'type' => 'input'
1038 )
1039 ),
1040 'log_data' => array(
1041 'label' => 'log_data',
1042 'config' => array(
1043 'type' => 'input'
1044 )
1045 ),
1046 'event_pid' => array(
1047 'label' => 'event_pid',
1048 'config' => array(
1049 'type' => 'input'
1050 )
1051 ),
1052 'workspace' => array(
1053 'label' => 'workspace',
1054 'config' => array(
1055 'type' => 'input'
1056 )
1057 ),
1058 'NEWid' => array(
1059 'label' => 'NEWid',
1060 'config' => array(
1061 'type' => 'input'
1062 )
1063 )
1064 ),
1065 'types' => array(
1066 '1' => array(
1067 'showitem' => 'tstamp, userid, action, recuid, tablename, recpid, error, details, type, details_nr, IP, log_data, event_pid, workspace, NEWid'
1068 )
1069 )
1070 );
1071 /**
1072 * System News (displayed on Login screen)
1073 */
1074 $TCA['sys_news'] = array(
1075 'ctrl' => $TCA['sys_news']['ctrl'],
1076 'interface' => array(
1077 'showRecordFieldList' => 'hidden,title,content,starttime,endtime'
1078 ),
1079 'columns' => array(
1080 'hidden' => array(
1081 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
1082 'exclude' => 1,
1083 'config' => array(
1084 'type' => 'check',
1085 'default' => '0'
1086 )
1087 ),
1088 'starttime' => array(
1089 'exclude' => 1,
1090 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
1091 'config' => array(
1092 'type' => 'input',
1093 'size' => '13',
1094 'max' => '20',
1095 'eval' => 'datetime',
1096 'default' => '0'
1097 )
1098 ),
1099 'endtime' => array(
1100 'exclude' => 1,
1101 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
1102 'config' => array(
1103 'type' => 'input',
1104 'size' => '13',
1105 'max' => '20',
1106 'eval' => 'datetime',
1107 'default' => '0'
1108 )
1109 ),
1110 'title' => array(
1111 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.title',
1112 'config' => array(
1113 'type' => 'input',
1114 'size' => '30',
1115 'max' => '255',
1116 'eval' => 'required'
1117 )
1118 ),
1119 'content' => array(
1120 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.text',
1121 'config' => array(
1122 'type' => 'text',
1123 'cols' => '48',
1124 'rows' => '5',
1125 'wizards' => array(
1126 '_PADDING' => 4,
1127 '_VALIGN' => 'middle',
1128 'RTE' => array(
1129 'notNewRecords' => 1,
1130 'RTEonly' => 1,
1131 'type' => 'script',
1132 'title' => 'LLL:EXT:cms/locallang_ttc.php:bodytext.W.RTE',
1133 'icon' => 'wizard_rte2.gif',
1134 'script' => 'wizard_rte.php'
1135 )
1136 )
1137 )
1138 )
1139 ),
1140 'types' => array(
1141 '1' => array('showitem' => '
1142 hidden, title, content;;9;richtext:rte_transform[flag=rte_enabled|mode=ts_css];3-3-3,
1143 --div--;LLL:EXT:lang/locallang_tca.xml:sys_news.tabs.access, starttime, endtime')
1144 )
1145 );
1146 ?>