[TASK] Index for "pages" table is still not optimal
[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 of TYPO3: be_users, be_groups and sys_filemounts
29 *
30 * Revised for TYPO3 3.6 July/2003 by Kasper Skårhøj
31 *
32 * @author Kasper Skårhøj <kasperYYYY@typo3.com>
33 * @see tables.php, tables.sql
34 */
35
36
37 /**
38 * Backend users - Those who login into the TYPO3 administration backend
39 */
40 $TCA['be_users'] = array(
41 'ctrl' => $TCA['be_users']['ctrl'],
42 'interface' => array(
43 'showRecordFieldList' => 'username,usergroup,db_mountpoints,file_mountpoints,admin,options,fileoper_perms,userMods,lockToDomain,realName,email,disable,starttime,endtime,lastlogin'
44 ),
45 'columns' => array(
46 'username' => array(
47 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.username',
48 'config' => array(
49 'type' => 'input',
50 'size' => '20',
51 'max' => '50',
52 'eval' => 'nospace,lower,unique,required'
53 )
54 ),
55 'password' => array(
56 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.password',
57 'config' => array(
58 'type' => 'input',
59 'size' => '20',
60 'max' => '40',
61 'eval' => 'required,md5,password'
62 )
63 ),
64 'usergroup' => array(
65 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup',
66 'config' => array(
67 'type' => 'select',
68 'foreign_table' => 'be_groups',
69 'foreign_table_where' => 'ORDER BY be_groups.title',
70 'size' => '5',
71 'maxitems' => '20',
72 # 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
73 'iconsInOptionTags' => 1,
74 'wizards' => array(
75 '_PADDING' => 1,
76 '_VERTICAL' => 1,
77 'edit' => array(
78 'type' => 'popup',
79 'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_edit_title',
80 'script' => 'wizard_edit.php',
81 'popup_onlyOpenIfSelected' => 1,
82 'icon' => 'edit2.gif',
83 'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1',
84 ),
85 'add' => array(
86 'type' => 'script',
87 'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_add_title',
88 'icon' => 'add.gif',
89 'params' => array(
90 'table' => 'be_groups',
91 'pid' => '0',
92 'setValue' => 'prepend'
93 ),
94 'script' => 'wizard_add.php',
95 ),
96 'list' => array(
97 'type' => 'script',
98 'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_list_title',
99 'icon' => 'list.gif',
100 'params' => array(
101 'table' => 'be_groups',
102 'pid' => '0',
103 ),
104 'script' => 'wizard_list.php',
105 )
106 )
107 )
108 ),
109 'lockToDomain' => array(
110 'label' => 'LLL:EXT:lang/locallang_tca.xml:lockToDomain',
111 'config' => array(
112 'type' => 'input',
113 'size' => '20',
114 'eval' => 'trim',
115 'max' => '50',
116 'softref' => 'substitute'
117 )
118 ),
119 'db_mountpoints' => array(
120 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options_db_mounts',
121 'config' => array(
122 'type' => 'group',
123 'internal_type' => 'db',
124 'allowed' => 'pages',
125 'size' => '3',
126 'maxitems' => '10',
127 'autoSizeMax' => 10,
128 'show_thumbs' => '1',
129 'wizards' => array(
130 'suggest' => array(
131 'type' => 'suggest',
132 ),
133 ),
134 )
135 ),
136 'file_mountpoints' => array(
137 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options_file_mounts',
138 'config' => array(
139 'type' => 'select',
140 'foreign_table' => 'sys_filemounts',
141 'foreign_table_where' => ' AND sys_filemounts.pid=0 ORDER BY sys_filemounts.title',
142 'size' => '3',
143 'maxitems' => '10',
144 'autoSizeMax' => 10,
145 'iconsInOptionTags' => 1,
146 'wizards' => array(
147 '_PADDING' => 1,
148 '_VERTICAL' => 1,
149 'edit' => array(
150 'type' => 'popup',
151 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_edit_title',
152 'script' => 'wizard_edit.php',
153 'icon' => 'edit2.gif',
154 'popup_onlyOpenIfSelected' => 1,
155 'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1',
156 ),
157 'add' => array(
158 'type' => 'script',
159 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_add_title',
160 'icon' => 'add.gif',
161 'params' => array(
162 'table' => 'sys_filemounts',
163 'pid' => '0',
164 'setValue' => 'prepend'
165 ),
166 'script' => 'wizard_add.php',
167 ),
168 'list' => array(
169 'type' => 'script',
170 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_list_title',
171 'icon' => 'list.gif',
172 'params' => array(
173 'table' => 'sys_filemounts',
174 'pid' => '0',
175 ),
176 'script' => 'wizard_list.php',
177 )
178 )
179 )
180 ),
181 'email' => array(
182 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.email',
183 'config' => array(
184 'type' => 'input',
185 'size' => '20',
186 'eval' => 'trim',
187 'max' => '80',
188 'softref' => 'email[subst]'
189 )
190 ),
191 'realName' => array(
192 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.name',
193 'config' => array(
194 'type' => 'input',
195 'size' => '20',
196 'eval' => 'trim',
197 'max' => '80'
198 )
199 ),
200 'disable' => array(
201 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
202 'config' => array(
203 'type' => 'check'
204 )
205 ),
206 'disableIPlock' => array(
207 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.disableIPlock',
208 'config' => array(
209 'type' => 'check'
210 )
211 ),
212 'admin' => array(
213 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.admin',
214 'config' => array(
215 'type' => 'check',
216 'default' => '0'
217 )
218 ),
219 'options' => array(
220 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options',
221 'config' => array(
222 'type' => 'check',
223 'items' => array(
224 array('LLL:EXT:lang/locallang_tca.xml:be_users.options_db_mounts', 0),
225 array('LLL:EXT:lang/locallang_tca.xml:be_users.options_file_mounts', 0)
226 ),
227 'default' => '3'
228 )
229 ),
230 'fileoper_perms' => array(
231 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms',
232 'config' => array(
233 'type' => 'check',
234 'items' => array(
235 array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_general', 0),
236 array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_unzip', 0),
237 array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms', 0),
238 array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms_copy', 0),
239 array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms_delete', 0),
240 ),
241 'default' => '0'
242 )
243 ),
244 'workspace_perms' => array(
245 'label' => 'LLL:EXT:lang/locallang_tca.xml:workspace_perms',
246 'config' => array(
247 'type' => 'check',
248 'items' => array(
249 array('LLL:EXT:lang/locallang_tca.xml:workspace_perms_live', 0),
250 ),
251 'default' => 1
252 )
253 ),
254 'starttime' => array(
255 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
256 'config' => array(
257 'type' => 'input',
258 'size' => '13',
259 'max' => '20',
260 'eval' => 'datetime',
261 'default' => '0',
262 )
263 ),
264 'endtime' => array(
265 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
266 'config' => array(
267 'type' => 'input',
268 'size' => '13',
269 'max' => '20',
270 'eval' => 'datetime',
271 'default' => '0',
272 'range' => array(
273 'upper' => mktime(0, 0, 0, 12, 31, 2020),
274 )
275 )
276 ),
277 'lang' => array(
278 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.lang',
279 'config' => array(
280 'type' => 'select',
281 'items' => array(
282 array('English', ''),
283 // Other languages are dynamically populated below
284 )
285 )
286 ),
287 'userMods' => array(
288 'label' => 'LLL:EXT:lang/locallang_tca.xml:userMods',
289 'config' => array(
290 'type' => 'select',
291 'special' => 'modListUser',
292 'size' => '5',
293 'autoSizeMax' => 50,
294 'maxitems' => '100',
295 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
296 'iconsInOptionTags' => 1,
297 )
298 ),
299 'allowed_languages' => array(
300 'label' => 'LLL:EXT:lang/locallang_tca.xml:allowed_languages',
301 'config' => array(
302 'type' => 'select',
303 'special' => 'languages',
304 'maxitems' => '1000',
305 'renderMode' => 'checkbox',
306 )
307 ),
308 'TSconfig' => array(
309 'label' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig',
310 'config' => array(
311 'type' => 'text',
312 'cols' => '40',
313 'rows' => '5',
314 'wizards' => array(
315 '_PADDING' => 4,
316 '0' => array(
317 'type' => t3lib_extMgm::isLoaded('tsconfig_help') ? 'popup' : '',
318 'title' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig_title',
319 'script' => 'wizard_tsconfig.php?mode=beuser',
320 'icon' => 'wizard_tsconfig.gif',
321 'JSopenParams' => 'height=500,width=780,status=0,menubar=0,scrollbars=1',
322 )
323 ),
324 'softref' => 'TSconfig'
325 ),
326 'defaultExtras' => 'fixed-font : enable-tab',
327 ),
328 'createdByAction' => array(
329 'config' => array(
330 'type' => 'passthrough'
331 )
332 ),
333 'lastlogin' => array(
334 'label' => 'LLL:EXT:lang/locallang_general.php:LGL.lastlogin',
335 'config' => array(
336 'type' => 'input',
337 'readOnly' => '1',
338 'size' => '12',
339 'eval' => 'datetime',
340 'default' => 0,
341 )
342 )
343 ),
344 'types' => array(
345 '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,
346 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.rights, userMods;;;;2-2-2, allowed_languages,
347 --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,
348 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.options, lockToDomain;;;;1-1-1, disableIPlock, TSconfig;;;;2-2-2,
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 '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,
353 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.options, disableIPlock;;;;1-1-1, TSconfig;;;;2-2-2, db_mountpoints;;;;3-3-3, file_mountpoints;;;;4-4-4,
354 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.access, starttime;;;;1-1-1,endtime,
355 --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.extended'
356 )
357 ),
358 );
359
360 // Populate available languages
361 /** @var $locales t3lib_l10n_locales */
362 $locales = t3lib_div::makeInstance('t3lib_l10n_Locales');
363 $languageItems = $locales->getLanguages();
364
365 unset($languageItems['default']);
366 asort($languageItems);
367
368 foreach ($languageItems as $locale => $name) {
369 $TCA['be_users']['columns']['lang']['config']['items'][] = array($name, $locale);
370 }
371
372 /**
373 * Backend usergroups - Much permission criterias are based on membership of backend groups.
374 */
375 $TCA['be_groups'] = array(
376 'ctrl' => $TCA['be_groups']['ctrl'],
377 'interface' => array(
378 'showRecordFieldList' => 'title, db_mountpoints, file_mountpoints, fileoper_perms, inc_access_lists, tables_select, tables_modify, pagetypes_select, non_exclude_fields, groupMods, lockToDomain, description'
379 ),
380 'columns' => array(
381 'title' => array(
382 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.title',
383 'config' => array(
384 'type' => 'input',
385 'size' => '25',
386 'max' => '50',
387 'eval' => 'trim,required'
388 )
389 ),
390 'db_mountpoints' => array(
391 'label' => 'LLL:EXT:lang/locallang_tca.xml:db_mountpoints',
392 'config' => array(
393 'type' => 'group',
394 'internal_type' => 'db',
395 'allowed' => 'pages',
396 'size' => '3',
397 'maxitems' => 20,
398 'autoSizeMax' => 10,
399 'show_thumbs' => '1',
400 'wizards' => array(
401 'suggest' => array(
402 'type' => 'suggest',
403 ),
404 ),
405 )
406 ),
407 'file_mountpoints' => array(
408 'label' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints',
409 'config' => array(
410 'type' => 'select',
411 'foreign_table' => 'sys_filemounts',
412 'foreign_table_where' => ' AND sys_filemounts.pid=0 ORDER BY sys_filemounts.title',
413 'size' => '3',
414 'maxitems' => 20,
415 'autoSizeMax' => 10,
416 'iconsInOptionTags' => 1,
417 'wizards' => array(
418 '_PADDING' => 1,
419 '_VERTICAL' => 1,
420 'edit' => array(
421 'type' => 'popup',
422 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_edit_title',
423 'script' => 'wizard_edit.php',
424 'popup_onlyOpenIfSelected' => 1,
425 'icon' => 'edit2.gif',
426 'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1',
427 ),
428 'add' => array(
429 'type' => 'script',
430 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_add_title',
431 'icon' => 'add.gif',
432 'params' => array(
433 'table' => 'sys_filemounts',
434 'pid' => '0',
435 'setValue' => 'prepend'
436 ),
437 'script' => 'wizard_add.php',
438 ),
439 'list' => array(
440 'type' => 'script',
441 'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_list_title',
442 'icon' => 'list.gif',
443 'params' => array(
444 'table' => 'sys_filemounts',
445 'pid' => '0',
446 ),
447 'script' => 'wizard_list.php',
448 )
449 )
450 )
451 ),
452 'fileoper_perms' => array(
453 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms',
454 'config' => array(
455 'type' => 'check',
456 'items' => array(
457 array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_general', 0),
458 array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_unzip', 0),
459 array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms', 0),
460 array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms_copy', 0),
461 array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms_delete', 0),
462 ),
463 'default' => '7'
464 )
465 ),
466 'workspace_perms' => array(
467 'label' => 'LLL:EXT:lang/locallang_tca.xml:workspace_perms',
468 'config' => array(
469 'type' => 'check',
470 'items' => array(
471 array('LLL:EXT:lang/locallang_tca.xml:workspace_perms_live', 0),
472 ),
473 'default' => 0
474 )
475 ),
476 'pagetypes_select' => array(
477 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.pagetypes_select',
478 'config' => array(
479 'type' => 'select',
480 'special' => 'pagetypes',
481 'size' => '5',
482 'autoSizeMax' => 50,
483 'maxitems' => 20,
484 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
485 'iconsInOptionTags' => 1,
486 )
487 ),
488 'tables_modify' => array(
489 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.tables_modify',
490 'config' => array(
491 'type' => 'select',
492 'special' => 'tables',
493 'size' => '5',
494 'autoSizeMax' => 50,
495 'maxitems' => 100,
496 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
497 'iconsInOptionTags' => 1,
498 )
499 ),
500 'tables_select' => array(
501 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.tables_select',
502 'config' => array(
503 'type' => 'select',
504 'special' => 'tables',
505 'size' => '5',
506 'autoSizeMax' => 50,
507 'maxitems' => 100,
508 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
509 'iconsInOptionTags' => 1,
510 )
511 ),
512 'non_exclude_fields' => array(
513 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.non_exclude_fields',
514 'config' => array(
515 'type' => 'select',
516 'special' => 'exclude',
517 'size' => '25',
518 'maxitems' => 1000,
519 'autoSizeMax' => 50,
520 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
521 'itemListStyle' => 'width:500px',
522 )
523 ),
524 'explicit_allowdeny' => array(
525 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.explicit_allowdeny',
526 'config' => array(
527 'type' => 'select',
528 'special' => 'explicitValues',
529 'maxitems' => 1000,
530 'renderMode' => 'checkbox',
531 )
532 ),
533 'allowed_languages' => array(
534 'label' => 'LLL:EXT:lang/locallang_tca.xml:allowed_languages',
535 'config' => array(
536 'type' => 'select',
537 'special' => 'languages',
538 'maxitems' => 1000,
539 'renderMode' => 'checkbox',
540 )
541 ),
542 'custom_options' => array(
543 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.custom_options',
544 'config' => array(
545 'type' => 'select',
546 'special' => 'custom',
547 'maxitems' => 1000,
548 'renderMode' => 'checkbox',
549 )
550 ),
551 'hidden' => array(
552 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
553 'config' => array(
554 'type' => 'check',
555 'default' => '0'
556 )
557 ),
558 'lockToDomain' => array(
559 'label' => 'LLL:EXT:lang/locallang_tca.xml:lockToDomain',
560 'config' => array(
561 'type' => 'input',
562 'size' => '20',
563 'eval' => 'trim',
564 'max' => '50',
565 'softref' => 'substitute'
566 )
567 ),
568 'groupMods' => array(
569 'label' => 'LLL:EXT:lang/locallang_tca.xml:userMods',
570 'config' => array(
571 'type' => 'select',
572 'special' => 'modListGroup',
573 'size' => '5',
574 'autoSizeMax' => 50,
575 'maxitems' => 100,
576 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
577 'iconsInOptionTags' => 1,
578 )
579 ),
580 'inc_access_lists' => array(
581 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.inc_access_lists',
582 'config' => array(
583 'type' => 'check',
584 'default' => '0'
585 )
586 ),
587 'description' => array(
588 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.description',
589 'config' => array(
590 'type' => 'text',
591 'rows' => 5,
592 'cols' => 30
593 )
594 ),
595 'TSconfig' => array(
596 'label' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig',
597 'config' => array(
598 'type' => 'text',
599 'cols' => '40',
600 'rows' => '5',
601 'wizards' => array(
602 '_PADDING' => 4,
603 '0' => array(
604 'type' => t3lib_extMgm::isLoaded('tsconfig_help') ? 'popup' : '',
605 'title' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig_title',
606 'script' => 'wizard_tsconfig.php?mode=beuser',
607 'icon' => 'wizard_tsconfig.gif',
608 'JSopenParams' => 'height=500,width=780,status=0,menubar=0,scrollbars=1',
609 )
610 ),
611 'softref' => 'TSconfig'
612 ),
613 'defaultExtras' => 'fixed-font : enable-tab',
614 ),
615 'hide_in_lists' => array(
616 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.hide_in_lists',
617 'config' => array(
618 'type' => 'check',
619 'default' => 0
620 )
621 ),
622 'subgroup' => array(
623 'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.subgroup',
624 'config' => array(
625 'type' => 'select',
626 'foreign_table' => 'be_groups',
627 'foreign_table_where' => 'AND NOT(be_groups.uid = ###THIS_UID###) AND be_groups.hidden=0 ORDER BY be_groups.title',
628 'size' => '5',
629 'autoSizeMax' => 50,
630 'maxitems' => 20,
631 'iconsInOptionTags' => 1,
632 )
633 )
634 ),
635 'types' => array(
636 '0' => array('showitem' => 'hidden;;;;1-1-1, title;;;;2-2-2, description, subgroup;;;;3-3-3,
637 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.base_rights, inc_access_lists;;;;1-1-1,
638 --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,
639 --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,
640 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.extended'
641 ),
642 '1' => array('showitem' => 'hidden;;;;1-1-1, title;;;;2-2-2, description, subgroup;;;;3-3-3,
643 --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,
644 --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,
645 --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,
646 --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.extended'
647 )
648 )
649 );
650
651
652 /**
653 * 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
654 */
655 $TCA['sys_filemounts'] = array(
656 'ctrl' => $TCA['sys_filemounts']['ctrl'],
657 'interface' => array(
658 'showRecordFieldList' => 'title,hidden,path,base'
659 ),
660 'columns' => array(
661 'title' => array(
662 'label' => 'LLL:EXT:lang/locallang_tca.xml:sys_filemounts.title',
663 'config' => array(
664 'type' => 'input',
665 'size' => '20',
666 'max' => '30',
667 'eval' => 'required,trim'
668 )
669 ),
670 'path' => array(
671 'label' => 'LLL:EXT:lang/locallang_tca.xml:sys_filemounts.path',
672 'config' => array(
673 'type' => 'input',
674 'size' => '40',
675 'max' => '120',
676 'eval' => 'required,trim',
677 'softref' => 'substitute'
678 )
679 ),
680 'hidden' => array(
681 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
682 'config' => array(
683 'type' => 'check'
684 )
685 ),
686 'base' => array(
687 'label' => 'LLL:EXT:lang/locallang_tca.xml:sys_filemounts.base',
688 'config' => array(
689 'type' => 'radio',
690 'items' => array(
691 array('LLL:EXT:lang/locallang_tca.xml:sys_filemounts.base_absolute', 0),
692 array('LLL:EXT:lang/locallang_tca.xml:sys_filemounts.base_relative', 1)
693 ),
694 'default' => 0
695 )
696 )
697 ),
698 'types' => array(
699 '0' => array('showitem' => 'hidden;;;;1-1-1,title;;;;3-3-3,path,base')
700 )
701 );
702
703
704 /**
705 * System languages - Defines possible languages used for translation of records in the system
706 */
707 $TCA['sys_language'] = array(
708 'ctrl' => $TCA['sys_language']['ctrl'],
709 'interface' => array(
710 'showRecordFieldList' => 'hidden,title'
711 ),
712 'columns' => array(
713 'title' => array(
714 'label' => 'LLL:EXT:lang/locallang_general.php:LGL.language',
715 'config' => array(
716 'type' => 'input',
717 'size' => '35',
718 'max' => '80',
719 'eval' => 'trim,required'
720 )
721 ),
722 'hidden' => array(
723 'label' => 'LLL:EXT:lang/locallang_general.php:LGL.disable',
724 'exclude' => 1,
725 'config' => array(
726 'type' => 'check',
727 'default' => '0'
728 )
729 ),
730 'static_lang_isocode' => array(
731 'exclude' => 1,
732 'label' => 'LLL:EXT:lang/locallang_tca.php:sys_language.isocode',
733 'displayCond' => 'EXT:static_info_tables:LOADED:true',
734 'config' => array(
735 'type' => 'select',
736 'items' => array(
737 array('', 0),
738 ),
739 'foreign_table' => 'static_languages',
740 'foreign_table_where' => 'AND static_languages.pid=0 ORDER BY static_languages.lg_name_en',
741 'size' => 1,
742 'minitems' => 0,
743 'maxitems' => 1,
744 )
745 ),
746 'flag' => array(
747 'label' => 'LLL:EXT:lang/locallang_tca.php:sys_language.flag',
748 'config' => array(
749 'type' => 'select',
750 'items' => array(
751 array('', 0, ''),
752 ),
753 'selicon_cols' => 16,
754 'size' => 1,
755 'minitems' => 0,
756 'maxitems' => 1,
757 )
758 )
759 ),
760 'types' => array(
761 '1' => array('showitem' => 'hidden;;;;1-1-1,title;;;;2-2-2,static_lang_isocode,flag')
762 )
763 );
764
765
766 /**
767 * System News (displayed on Login screen)
768 */
769 $TCA['sys_news'] = array(
770 'ctrl' => $TCA['sys_news']['ctrl'],
771 'interface' => array(
772 'showRecordFieldList' => 'hidden,title,content,starttime,endtime'
773 ),
774 'columns' => array(
775 'hidden' => array(
776 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
777 'exclude' => 1,
778 'config' => array(
779 'type' => 'check',
780 'default' => '0'
781 )
782 ),
783 'starttime' => array(
784 'exclude' => 1,
785 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
786 'config' => array(
787 'type' => 'input',
788 'size' => '13',
789 'max' => '20',
790 'eval' => 'datetime',
791 'default' => '0'
792 )
793 ),
794 'endtime' => array(
795 'exclude' => 1,
796 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
797 'config' => array(
798 'type' => 'input',
799 'size' => '13',
800 'max' => '20',
801 'eval' => 'datetime',
802 'default' => '0'
803 )
804 ),
805 'title' => array(
806 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.title',
807 'config' => array(
808 'type' => 'input',
809 'size' => '30',
810 'max' => '255',
811 'eval' => 'required'
812 )
813 ),
814 'content' => array(
815 'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.text',
816 'config' => array(
817 'type' => 'text',
818 'cols' => '48',
819 'rows' => '5',
820 'wizards' => array(
821 '_PADDING' => 4,
822 '_VALIGN' => 'middle',
823 'RTE' => array(
824 'notNewRecords' => 1,
825 'RTEonly' => 1,
826 'type' => 'script',
827 'title' => 'LLL:EXT:cms/locallang_ttc.php:bodytext.W.RTE',
828 'icon' => 'wizard_rte2.gif',
829 'script' => 'wizard_rte.php'
830 ),
831 ),
832 ),
833 ),
834 ),
835 'types' => array(
836 '1' => array('showitem' => '
837 hidden, title, content;;9;richtext:rte_transform[flag=rte_enabled|mode=ts_css];3-3-3,
838 --div--;LLL:EXT:lang/locallang_tca.xml:sys_news.tabs.access, starttime, endtime'
839 )
840 )
841 );
842
843 ?>