Revert "[TASK] Move t3lib/stddb files to ext:core" 47/18247/3
authorChristian Kuhn <lolli@schwarzbu.ch>
Wed, 13 Feb 2013 16:13:58 +0000 (17:13 +0100)
committerChristian Kuhn <lolli@schwarzbu.ch>
Wed, 13 Feb 2013 16:19:20 +0000 (17:19 +0100)
This reverts commit ef90adcee123ebc2d47c94380cc75e26c176668a

Change-Id: I96ed7987e90addfeb44afe9577ee58ff5dab3344
Related: #45107
Related: #45220
Reviewed-on: https://review.typo3.org/18247
Reviewed-by: Christian Kuhn
Tested-by: Christian Kuhn
29 files changed:
t3lib/stddb/tables.php [new file with mode: 0644]
t3lib/stddb/tbl_be.php [new file with mode: 0644]
t3lib/stddb/tbl_pages.php [new file with mode: 0644]
t3lib/stddb/tca_sys_category.php [new file with mode: 0644]
t3lib/stddb/tca_sys_file.php [new file with mode: 0644]
t3lib/stddb/tca_sys_file_collection.php [new file with mode: 0644]
t3lib/stddb/tca_sys_file_reference.php [new file with mode: 0644]
t3lib/stddb/tca_sys_file_storage.php [new file with mode: 0644]
typo3/init.php
typo3/sysext/backend/Classes/Utility/IconUtility.php
typo3/sysext/core/Classes/Core/Bootstrap.php
typo3/sysext/core/Classes/Utility/ExtensionManagementUtility.php
typo3/sysext/core/Configuration/TCA/BeGroups.php [deleted file]
typo3/sysext/core/Configuration/TCA/BeUsers.php [deleted file]
typo3/sysext/core/Configuration/TCA/Pages.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysCategory.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysCollection.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysFile.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysFileCollection.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysFileReference.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysFileStorage.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysFilemounts.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysHistory.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysLanguage.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysLog.php [deleted file]
typo3/sysext/core/Configuration/TCA/SysNews.php [deleted file]
typo3/sysext/core/ext_tables.php [deleted file]
typo3/sysext/frontend/Classes/Controller/TypoScriptFrontendController.php
typo3/sysext/install/Classes/Installer.php

diff --git a/t3lib/stddb/tables.php b/t3lib/stddb/tables.php
new file mode 100644 (file)
index 0000000..b45f78a
--- /dev/null
@@ -0,0 +1,1042 @@
+<?php
+/***************************************************************
+ *  Copyright notice
+ *
+ *  (c) 1999-2011 Kasper Skårhøj (kasperYYYY@typo3.com)
+ *  All rights reserved
+ *
+ *  This script is part of the TYPO3 project. The TYPO3 project is
+ *  free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  The GNU General Public License can be found at
+ *  http://www.gnu.org/copyleft/gpl.html.
+ *  A copy is found in the textfile GPL.txt and important notices to the license
+ *  from the author is found in LICENSE.txt distributed with these scripts.
+ *
+ *
+ *  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!
+ ***************************************************************/
+/**
+ * Contains the initialization of global TYPO3 variables among
+ * which $TCA is the most significant.
+ *
+ * The list in order of appearance is: $PAGES_TYPES, $TCA,
+ * $TBE_MODULES, $TBE_STYLES, $FILEICONS
+ * These variables are first of all used in the backend but to some degree in
+ * the frontend as well. (See references)
+ * See the document "Inside TYPO3" for a description of each variable in
+ * addition to the comment associated with each.
+ *
+ * This file is included from "typo3/init.php" (backend) and "index_ts.php"
+ * (frontend) as the first file of a three-fold inclusion session
+ * (see references):
+ * 1) First this script is included.
+ * This should initialize the variables shown above.
+ * 2) Then either the concatenated ext_tables.php cache file of all extensions
+ * is loaded, or each ext_tables.php file of active extensions.
+ * 3) Finally if the constant "TYPO3_extTableDef_script" defines a file name
+ * from typo3conf/ it is included, also for overriding values (the old-school
+ * way before extensions came in). See bootstrap loadExtensionTables()
+ *
+ * Configuration in this file should NOT be edited directly. If you would like
+ * to alter or extend this information, please make an extension which does so.
+ * Thus you preserve backwards compatibility.
+ *
+ * Revised for TYPO3 3.6 July/2003 by Kasper Skårhøj
+ *
+ * @author Kasper Skårhøj <kasperYYYY@typo3.com>
+ */
+
+/**
+ * $PAGES_TYPES defines the various types of pages (field: doktype) the system
+ * can handle and what restrictions may apply to them.
+ * Here you can set the icon and especially you can define which tables are
+ * allowed on a certain pagetype (doktype)
+ * NOTE: The 'default' entry in the $PAGES_TYPES-array is the 'base' for all
+ * types, and for every type the entries simply overrides the entries in the 'default' type!
+ */
+$PAGES_TYPES = array(
+       (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_LINK => array(),
+       (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SHORTCUT => array(),
+       (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_BE_USER_SECTION => array(
+               'type' => 'web',
+               'allowedTables' => '*'
+       ),
+       (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_MOUNTPOINT => array(),
+       (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SPACER => array('type' => 'sys'),
+       (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SYSFOLDER => array(
+               //  Doktype 254 is a 'Folder' - a general purpose storage folder for whatever you like. In CMS context it's NOT a viewable page. Can contain any element.
+               'type' => 'sys',
+               'allowedTables' => '*'
+       ),
+       (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_RECYCLER => array(
+               // Doktype 255 is a recycle-bin.
+               'type' => 'sys',
+               'allowedTables' => '*'
+       ),
+       'default' => array(
+               'type' => 'web',
+               'allowedTables' => 'pages',
+               'onlyAllowedTables' => '0'
+       )
+);
+/**
+ * $TCA:
+ * This array configures TYPO3 to work with the tables from the database by
+ * assigning meta information about data types, relations etc. The global
+ * variable $TCA will contain the information needed to recognize and
+ * render each table in the backend
+ * See documentation 'Inside TYPO3' for the syntax and list of
+ * required tables/fields!
+ *
+ * The tables configured in this document (and backed up by "tbl_be.php")
+ * is the required minimum set of tables/field that any TYPO3 system MUST have.
+ * These tables are therefore a part of the TYPO3 core.
+ * The SQL definitions of these tables (and some more which are not defined in
+ * $TCA) is found in the file "tables.sql" Only the "pages" table is defined
+ * fully in this file - the others are only defined for the "ctrl" part and
+ * the columns are defined in detail in the associated file, "tbl_be.php"
+ *
+ * NOTE: The (default) icon for a table is defined 1) as a giffile named
+ * 'gfx/i/[tablename].gif' or 2) as the value of [table][ctrl][iconfile]
+ * NOTE: [table][ctrl][rootLevel] goes NOT for pages. Apart from that if
+ * rootLevel is TRUE, records can ONLY be created on rootLevel. If it's
+ * FALSE records can ONLY be created OUTSIDE rootLevel
+ */
+$TCA = array();
+/**
+ * Table "pages":
+ * The mandatory pages table. The backbone of the TYPO3 page tree structure.
+ * All other records configured in $TCA must have a field, "pid", which relates
+ * the record to a page record's "uid" field.
+ * Must be COMPLETELY configured in tables.php
+ */
+$TCA['pages'] = array(
+       'ctrl' => array(
+               'label' => 'title',
+               'tstamp' => 'tstamp',
+               'sortby' => 'sorting',
+               'title' => 'LLL:EXT:lang/locallang_tca.php:pages',
+               'type' => 'doktype',
+               'versioningWS' => 2,
+               'origUid' => 't3_origuid',
+               'delete' => 'deleted',
+               'crdate' => 'crdate',
+               'hideAtCopy' => 1,
+               'prependAtCopy' => 'LLL:EXT:lang/locallang_general.php:LGL.prependAtCopy',
+               'cruser_id' => 'cruser_id',
+               'editlock' => 'editlock',
+               'useColumnsForDefaultValues' => 'doktype,fe_group,hidden',
+               'dividers2tabs' => 1,
+               'enablecolumns' => array(
+                       'disabled' => 'hidden',
+                       'starttime' => 'starttime',
+                       'endtime' => 'endtime',
+                       'fe_group' => 'fe_group'
+               ),
+               'transForeignTable' => 'pages_language_overlay',
+               'typeicon_column' => 'doktype',
+               'typeicon_classes' => array(
+                       '1' => 'apps-pagetree-page-default',
+                       '1-hideinmenu' => 'apps-pagetree-page-not-in-menu',
+                       '1-root' => 'apps-pagetree-page-domain',
+                       '3' => 'apps-pagetree-page-shortcut-external',
+                       '3-hideinmenu' => 'apps-pagetree-page-shortcut-external-hideinmenu',
+                       '3-root' => 'apps-pagetree-page-shortcut-external-root',
+                       '4' => 'apps-pagetree-page-shortcut',
+                       '4-hideinmenu' => 'apps-pagetree-page-shortcut-hideinmenu',
+                       '4-root' => 'apps-pagetree-page-shortcut-root',
+                       '6' => 'apps-pagetree-page-backend-users',
+                       '6-hideinmenu' => 'apps-pagetree-page-backend-users-hideinmenu',
+                       '6-root' => 'apps-pagetree-page-backend-users-root',
+                       '7' => 'apps-pagetree-page-mountpoint',
+                       '7-hideinmenu' => 'apps-pagetree-page-mountpoint-hideinmenu',
+                       '7-root' => 'apps-pagetree-page-mountpoint-root',
+                       '199' => 'apps-pagetree-spacer',
+                       '199-hideinmenu' => 'apps-pagetree-spacer',
+                       '199-root' => 'apps-pagetree-page-domain',
+                       '254' => 'apps-pagetree-folder-default',
+                       '254-hideinmenu' => 'apps-pagetree-folder-default',
+                       '254-root' => 'apps-pagetree-page-domain',
+                       '255' => 'apps-pagetree-page-recycler',
+                       '255-hideinmenu' => 'apps-pagetree-page-recycler',
+                       'contains-shop' => 'apps-pagetree-folder-contains-shop',
+                       'contains-approve' => 'apps-pagetree-folder-contains-approve',
+                       'contains-fe_users' => 'apps-pagetree-folder-contains-fe_users',
+                       'contains-board' => 'apps-pagetree-folder-contains-board',
+                       'contains-news' => 'apps-pagetree-folder-contains-news',
+                       'default' => 'apps-pagetree-page-default'
+               ),
+               'typeicons' => array(
+                       '1' => 'pages.gif',
+                       '254' => 'sysf.gif',
+                       '255' => 'recycler.gif'
+               ),
+               'dynamicConfigFile' => 'T3LIB:tbl_pages.php',
+               'searchFields' => 'title,alias,nav_title,subtitle,url,keywords,description,abstract,author,author_email'
+       )
+);
+/**
+ * Table "be_users":
+ * Backend Users for TYPO3.
+ * This is only the 'header' part (ctrl). The full configuration is
+ * found in t3lib/stddb/tbl_be.php
+ */
+$TCA['be_users'] = array(
+       'ctrl' => array(
+               'label' => 'username',
+               'tstamp' => 'tstamp',
+               'title' => 'LLL:EXT:lang/locallang_tca.php:be_users',
+               'crdate' => 'crdate',
+               'cruser_id' => 'cruser_id',
+               'delete' => 'deleted',
+               'adminOnly' => 1,
+               // Only admin users can edit
+               'rootLevel' => 1,
+               'default_sortby' => 'ORDER BY admin, username',
+               'enablecolumns' => array(
+                       'disabled' => 'disable',
+                       'starttime' => 'starttime',
+                       'endtime' => 'endtime'
+               ),
+               'type' => 'admin',
+               'typeicon_column' => 'admin',
+               'typeicons' => array(
+                       '0' => 'be_users.gif',
+                       '1' => 'be_users_admin.gif'
+               ),
+               'typeicon_classes' => array(
+                       '0' => 'status-user-backend',
+                       '1' => 'status-user-admin',
+                       'default' => 'status-user-backend'
+               ),
+               'mainpalette' => '1',
+               'useColumnsForDefaultValues' => 'usergroup,lockToDomain,options,db_mountpoints,file_mountpoints,fileoper_perms,userMods',
+               'dividers2tabs' => TRUE,
+               'dynamicConfigFile' => 'T3LIB:tbl_be.php',
+               'versioningWS_alwaysAllowLiveEdit' => TRUE,
+               'searchFields' => 'username,email,realName'
+       )
+);
+/**
+ * Table "be_groups":
+ * Backend Usergroups for TYPO3.
+ * This is only the 'header' part (ctrl).
+ * The full configuration is found in t3lib/stddb/tbl_be.php
+ */
+$TCA['be_groups'] = array(
+       'ctrl' => array(
+               'label' => 'title',
+               'tstamp' => 'tstamp',
+               'crdate' => 'crdate',
+               'cruser_id' => 'cruser_id',
+               'delete' => 'deleted',
+               'default_sortby' => 'ORDER BY title',
+               'prependAtCopy' => 'LLL:EXT:lang/locallang_general.php:LGL.prependAtCopy',
+               'adminOnly' => 1,
+               'rootLevel' => 1,
+               'type' => 'inc_access_lists',
+               'typeicon_column' => 'inc_access_lists',
+               'typeicons' => array(
+                       '1' => 'be_groups_lists.gif'
+               ),
+               'typeicon_classes' => array(
+                       'default' => 'status-user-group-backend'
+               ),
+               'enablecolumns' => array(
+                       'disabled' => 'hidden'
+               ),
+               'title' => 'LLL:EXT:lang/locallang_tca.php:be_groups',
+               'useColumnsForDefaultValues' => 'lockToDomain, fileoper_perms',
+               'dividers2tabs' => TRUE,
+               'dynamicConfigFile' => 'T3LIB:tbl_be.php',
+               'versioningWS_alwaysAllowLiveEdit' => TRUE,
+               'searchFields' => 'title'
+       )
+);
+/**
+ * Table "sys_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
+ * This is only the 'header' part (ctrl). The full configuration is found
+ * in t3lib/stddb/tbl_be.php
+ */
+$TCA['sys_filemounts'] = array(
+       'ctrl' => array(
+               'label' => 'title',
+               'tstamp' => 'tstamp',
+               'sortby' => 'sorting',
+               'prependAtCopy' => 'LLL:EXT:lang/locallang_general.php:LGL.prependAtCopy',
+               'title' => 'LLL:EXT:lang/locallang_tca.php:sys_filemounts',
+               'adminOnly' => 1,
+               'rootLevel' => 1,
+               'delete' => 'deleted',
+               'enablecolumns' => array(
+                       'disabled' => 'hidden'
+               ),
+               'iconfile' => '_icon_ftp.gif',
+               'useColumnsForDefaultValues' => 'path,base',
+               'dynamicConfigFile' => 'T3LIB:tbl_be.php',
+               'versioningWS_alwaysAllowLiveEdit' => TRUE,
+               'searchFields' => 'title,path'
+       )
+);
+/**
+ * Table "sys_category":
+ * Represents all categories to be used for record categorization
+ */
+$TCA['sys_category'] = array(
+       'ctrl' => array(
+               'title' => 'LLL:EXT:lang/locallang_tca.xlf:sys_category',
+               'label' => 'title',
+               'tstamp' => 'tstamp',
+               'crdate' => 'crdate',
+               'cruser_id' => 'cruser_id',
+               'delete' => 'deleted',
+               'default_sortby' => 'ORDER BY title ASC',
+               'dividers2tabs' => TRUE,
+               'versioningWS' => 2,
+               'versioning_followPages' => TRUE,
+               'origUid' => 't3_origuid',
+               'languageField' => 'sys_language_uid',
+               'transOrigPointerField' => 'l10n_parent',
+               'transOrigDiffSourceField' => 'l10n_diffsource',
+               'searchFields' => 'title,description',
+               'enablecolumns' => array(
+                       'disabled' => 'hidden',
+                       'starttime' => 'starttime',
+                       'endtime' => 'endtime'
+               ),
+               'dynamicConfigFile' => 'T3LIB:tca_sys_category.php',
+               'typeicon_classes' => array(
+                       'default' => 'mimetypes-x-sys_category'
+               )
+       )
+);
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('sys_category');
+/**
+ * Table "sys_collection":
+ */
+$TCA['sys_collection'] = array(
+       'ctrl' => array(
+               'title' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection',
+               'label' => 'title',
+               'tstamp' => 'tstamp',
+               'crdate' => 'crdate',
+               'cruser_id' => 'cruser_id',
+               'versioningWS' => TRUE,
+               'origUid' => 't3_origuid',
+               'languageField' => 'sys_language_uid',
+               'transOrigPointerField' => 'l10n_parent',
+               'transOrigDiffSourceField' => 'l10n_diffsource',
+               'default_sortby' => 'ORDER BY crdate',
+               'delete' => 'deleted',
+               'type' => 'type',
+               'rootLevel' => -1,
+               'searchFields' => 'title,description',
+               'typeicon_column' => 'type',
+               'typeicon_classes' => array(
+                       'default' => 'apps-clipboard-list',
+                       'static' => 'apps-clipboard-list',
+                       'filter' => 'actions-system-tree-search-open'
+               ),
+               'enablecolumns' => array(
+                       'disabled' => 'hidden',
+                       'starttime' => 'starttime',
+                       'endtime' => 'endtime',
+                       'fe_group' => 'fe_group'
+               ),
+               'dynamicConfigFile' => 'T3LIB:tbl_be.php'
+       )
+);
+/**
+ * Table "sys_file_storage":
+ * defines a root-point of a file storage, that is like a mount point.
+ * each storage is attached to a driver (local, webdav, amazons3) and
+ * thus is the entry-point for all files
+ */
+$TCA['sys_file_storage'] = array(
+       'ctrl' => array(
+               'title' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage',
+               'label' => 'name',
+               'tstamp' => 'tstamp',
+               'crdate' => 'crdate',
+               'cruser_id' => 'cruser_id',
+               'default_sortby' => 'ORDER BY name',
+               'delete' => 'deleted',
+               'rootLevel' => TRUE,
+               'versioningWS_alwaysAllowLiveEdit' => TRUE,
+               // only have LIVE records of file storages
+               'enablecolumns' => array(
+                       'disabled' => 'hidden'
+               ),
+               'dividers2tabs' => TRUE,
+               'requestUpdate' => 'driver',
+               'iconfile' => '_icon_ftp.gif',
+               'dynamicConfigFile' => 'T3LIB:tca_sys_file_storage.php'
+       )
+);
+/**
+ * Table "sys_file":
+ * Represents all files that are tracked by TYPO3
+ * which are assets, single entries of files with additional metadata
+ */
+$TCA['sys_file'] = array(
+       'ctrl' => array(
+               'title' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file',
+               'label' => 'name',
+               'tstamp' => 'tstamp',
+               'crdate' => 'crdate',
+               'cruser_id' => 'cruser_id',
+               'type' => 'type',
+               'hideTable' => TRUE,
+               'rootLevel' => TRUE,
+               'versioningWS' => TRUE,
+               'origUid' => 't3_origuid',
+               'default_sortby' => 'ORDER BY crdate DESC',
+               'delete' => 'deleted',
+               'dividers2tabs' => TRUE,
+               'typeicon_column' => 'type',
+               'typeicon_classes' => array(
+                       '1' => 'mimetypes-text-text',
+                       '2' => 'mimetypes-media-image',
+                       '3' => 'mimetypes-media-audio',
+                       '4' => 'mimetypes-media-video',
+                       '5' => 'mimetypes-application',
+                       'default' => 'mimetypes-other-other'
+               ),
+               'security' => array(
+                       'ignoreWebMountRestriction' => TRUE,
+                       'ignoreRootLevelRestriction' => TRUE,
+               ),
+               'dynamicConfigFile' => 'T3LIB:tca_sys_file.php'
+       )
+);
+/**
+ * Table "sys_file_reference":
+ * Is a single usage of a sys_file record somewhere in the installation
+ * Is kind of like a MM-table between sys_file and e.g. tt_content:image that
+ * is shown up in TCA so additional metadata can be added for this specific
+ * kind of usage
+ */
+$TCA['sys_file_reference'] = array(
+       'ctrl' => array(
+               'title' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference',
+               'label' => 'uid',
+               'tstamp' => 'tstamp',
+               'crdate' => 'crdate',
+               'cruser_id' => 'cruser_id',
+               'type' => 'uid_local:type',
+               'hideTable' => TRUE,
+               'rootLevel' => TRUE,
+               'sortby' => 'sorting',
+               'delete' => 'deleted',
+               'versioningWS' => TRUE,
+               'languageField' => 'sys_language_uid',
+               'transOrigPointerField' => 'l10n_parent',
+               'transOrigDiffSourceField' => 'l10n_diffsource',
+               // records can and should be edited in workspaces
+               'shadowColumnsForNewPlaceholders' => 'tablenames,fieldname,uid_local,uid_foreign',
+               'enablecolumns' => array(
+                       'disabled' => 'hidden'
+               ),
+               'security' => array(
+                       'ignoreWebMountRestriction' => TRUE,
+                       'ignoreRootLevelRestriction' => TRUE,
+               ),
+               'dynamicConfigFile' => 'T3LIB:tca_sys_file_reference.php'
+       )
+);
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('sys_file_reference');
+/**
+ * Table "sys_file_collection":
+ * Represents a list of sys_file records
+ */
+$TCA['sys_file_collection'] = array(
+       'ctrl' => array(
+               'title' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_collection',
+               'label' => 'title',
+               'tstamp' => 'tstamp',
+               'crdate' => 'crdate',
+               'cruser_id' => 'cruser_id',
+               'versioningWS' => TRUE,
+               'origUid' => 't3_origuid',
+               'languageField' => 'sys_language_uid',
+               'transOrigPointerField' => 'l10n_parent',
+               'transOrigDiffSourceField' => 'l10n_diffsource',
+               'default_sortby' => 'ORDER BY crdate',
+               'delete' => 'deleted',
+               'rootlevel' => -1,
+               'type' => 'type',
+               'typeicon_column' => 'type',
+               'typeicon_classes' => array(
+                       'default' => 'apps-filetree-folder-media',
+                       'static' => 'apps-clipboard-images',
+                       'folder' => 'apps-filetree-folder-media'
+               ),
+               'enablecolumns' => array(
+                       'disabled' => 'hidden',
+                       'starttime' => 'starttime',
+                       'endtime' => 'endtime'
+               ),
+               'dynamicConfigFile' => 'T3LIB:tca_sys_file_collection.php'
+       )
+);
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('sys_file_collection');
+/**
+ * Table "sys_history":
+ * Holds history records, the config part is defined in t3lib/stddb/tbl_be.php
+ */
+$TCA['sys_history'] = array(
+       'ctrl' => array(
+               'title' => 'LLL:EXT:lang/locallang_tca.xlf:sys_history',
+               'label' => 'tablename',
+               'tstamp' => 'tstamp',
+               'adminOnly' => TRUE,
+               'rootLevel' => TRUE,
+               'hideTable' => TRUE,
+               'default_sortby' => 'uid DESC',
+               'dynamicConfigFile' => 'T3LIB:tbl_be.php'
+       )
+);
+/**
+ * Table "sys_languages":
+ * Defines possible languages used for translation of records in the system
+ * This is only the 'header' part (ctrl). The full configuration is found
+ * in t3lib/stddb/tbl_be.php
+ */
+$TCA['sys_language'] = array(
+       'ctrl' => array(
+               'label' => 'title',
+               'tstamp' => 'tstamp',
+               'default_sortby' => 'ORDER BY title',
+               'title' => 'LLL:EXT:lang/locallang_tca.php:sys_language',
+               'adminOnly' => 1,
+               'rootLevel' => 1,
+               'enablecolumns' => array(
+                       'disabled' => 'hidden'
+               ),
+               'typeicon_classes' => array(
+                       'default' => 'mimetypes-x-sys_language'
+               ),
+               'dynamicConfigFile' => 'T3LIB:tbl_be.php',
+               'versioningWS_alwaysAllowLiveEdit' => TRUE
+       )
+);
+/**
+ * Table "sys_log":
+ * Holds log records, the config part is defined in t3lib/stddb/tbl_be.php
+ */
+$TCA['sys_log'] = array(
+       'ctrl' => array(
+               'title' => 'LLL:EXT:lang/locallang_tca.xlf:sys_log',
+               'label' => 'details',
+               'tstamp' => 'tstamp',
+               'adminOnly' => TRUE,
+               'rootLevel' => TRUE,
+               'hideTable' => TRUE,
+               'default_sortby' => 'uid DESC',
+               'dynamicConfigFile' => 'T3LIB:tbl_be.php'
+       )
+);
+/**
+ * Table "sys_news":
+ * Holds news records to be displayed in the login screen
+ * This is only the 'header' part (ctrl). The full configuration is found
+ * in t3lib/stddb/tbl_be.php
+ */
+$TCA['sys_news'] = array(
+       'ctrl' => array(
+               'title' => 'LLL:EXT:lang/locallang_tca.xml:sys_news',
+               'label' => 'title',
+               'tstamp' => 'tstamp',
+               'crdate' => 'crdate',
+               'cruser_id' => 'cruser_id',
+               'adminOnly' => TRUE,
+               'rootLevel' => TRUE,
+               'delete' => 'deleted',
+               'enablecolumns' => array(
+                       'disabled' => 'hidden',
+                       'starttime' => 'starttime',
+                       'endtime' => 'endtime'
+               ),
+               'default_sortby' => 'crdate DESC',
+               'typeicon_classes' => array(
+                       'default' => 'mimetypes-x-sys_news'
+               ),
+               'dynamicConfigFile' => 'T3LIB:tbl_be.php',
+               'dividers2tabs' => TRUE
+       )
+);
+/**
+ * $TBE_MODULES contains the structure of the backend modules as they are
+ * arranged in main- and sub-modules. Every entry in this array represents a
+ * menu item on either first (key) or second level (value from list) in the
+ * left menu in the TYPO3 backend
+ * For information about adding modules to TYPO3 you should consult the
+ * documentation found in "Inside TYPO3"
+ */
+$TBE_MODULES = array(
+       'web' => 'list',
+       'file' => '',
+       'user' => '',
+       'tools' => '',
+       'help' => ''
+);
+// Register the pagetree core navigation component
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addCoreNavigationComponent('web', 'typo3-pagetree');
+/**
+ * $TBE_STYLES configures backend styles and colors; Basically this contains
+ * all the values that can be used to create new skins for TYPO3.
+ * For information about making skins to TYPO3 you should consult the
+ * documentation found in "Inside TYPO3"
+ */
+$TBE_STYLES = array(
+       'colorschemes' => array(
+               '0' => '#E4E0DB,#CBC7C3,#EDE9E5'
+       ),
+       'borderschemes' => array(
+               '0' => array('border:solid 1px black;', 5)
+       )
+);
+/**
+ * Setting up $TCA_DESCR - Context Sensitive Help (CSH)
+ * For information about using the CSH API in TYPO3 you should consult the
+ * documentation found in "Inside TYPO3"
+ */
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('pages', 'EXT:lang/locallang_csh_pages.xml');
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('be_users', 'EXT:lang/locallang_csh_be_users.xml');
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('be_groups', 'EXT:lang/locallang_csh_be_groups.xml');
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('sys_filemounts', 'EXT:lang/locallang_csh_sysfilem.xml');
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('sys_language', 'EXT:lang/locallang_csh_syslang.xml');
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('sys_news', 'EXT:lang/locallang_csh_sysnews.xml');
+// General Core
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('xMOD_csh_corebe', 'EXT:lang/locallang_csh_corebe.xml');
+// Extension manager
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('_MOD_tools_em', 'EXT:lang/locallang_csh_em.xml');
+// Web > Info
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('_MOD_web_info', 'EXT:lang/locallang_csh_web_info.xml');
+// Web > Func
+\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr('_MOD_web_func', 'EXT:lang/locallang_csh_web_func.xml');
+// Labels for TYPO3 4.5 and greater.
+// These labels override the ones set above, while still falling back to the original labels
+// if no translation is available.
+$GLOBALS['TYPO3_CONF_VARS']['SYS']['locallangXMLOverride']['EXT:lang/locallang_csh_pages.xml'][] = 'EXT:lang/4.5/locallang_csh_pages.xml';
+$GLOBALS['TYPO3_CONF_VARS']['SYS']['locallangXMLOverride']['EXT:lang/locallang_csh_corebe.xml'][] = 'EXT:lang/4.5/locallang_csh_corebe.xml';
+/**
+ * $FILEICONS defines icons for the various file-formats
+ */
+$FILEICONS = array(
+       'txt' => 'txt.gif',
+       'pdf' => 'pdf.gif',
+       'doc' => 'doc.gif',
+       'ai' => 'ai.gif',
+       'bmp' => 'bmp.gif',
+       'tif' => 'tif.gif',
+       'htm' => 'htm.gif',
+       'html' => 'html.gif',
+       'pcd' => 'pcd.gif',
+       'gif' => 'gif.gif',
+       'jpg' => 'jpg.gif',
+       'jpeg' => 'jpg.gif',
+       'mpg' => 'mpg.gif',
+       'mpeg' => 'mpeg.gif',
+       'exe' => 'exe.gif',
+       'com' => 'exe.gif',
+       'zip' => 'zip.gif',
+       'tgz' => 'zip.gif',
+       'gz' => 'zip.gif',
+       'php3' => 'php3.gif',
+       'php4' => 'php3.gif',
+       'php5' => 'php3.gif',
+       'php6' => 'php3.gif',
+       'php' => 'php3.gif',
+       'ppt' => 'ppt.gif',
+       'ttf' => 'ttf.gif',
+       'pcx' => 'pcx.gif',
+       'png' => 'png.gif',
+       'tga' => 'tga.gif',
+       'class' => 'java.gif',
+       'sxc' => 'sxc.gif',
+       'sxw' => 'sxw.gif',
+       'xls' => 'xls.gif',
+       'swf' => 'swf.gif',
+       'swa' => 'flash.gif',
+       'dcr' => 'flash.gif',
+       'wav' => 'wav.gif',
+       'mp3' => 'mp3.gif',
+       'avi' => 'avi.gif',
+       'au' => 'au.gif',
+       'mov' => 'mov.gif',
+       '3ds' => '3ds.gif',
+       'csv' => 'csv.gif',
+       'ico' => 'ico.gif',
+       'max' => 'max.gif',
+       'ps' => 'ps.gif',
+       'tmpl' => 'tmpl.gif',
+       'xls' => 'xls.gif',
+       'fh3' => 'fh3.gif',
+       'inc' => 'inc.gif',
+       'mid' => 'mid.gif',
+       'psd' => 'psd.gif',
+       'xml' => 'xml.gif',
+       'rtf' => 'rtf.gif',
+       't3x' => 't3x.gif',
+       't3d' => 't3d.gif',
+       'cdr' => 'cdr.gif',
+       'dtd' => 'dtd.gif',
+       'sgml' => 'sgml.gif',
+       'ani' => 'ani.gif',
+       'css' => 'css.gif',
+       'eps' => 'eps.gif',
+       'js' => 'js.gif',
+       'wrl' => 'wrl.gif',
+       'default' => 'default.gif'
+);
+/**
+ * Backend sprite icon-names
+ */
+$GLOBALS['TBE_STYLES']['spriteIconApi']['coreSpriteImageNames'] = array(
+       'actions-document-close',
+       'actions-document-duplicates-select',
+       'actions-document-edit-access',
+       'actions-document-export-csv',
+       'actions-document-export-t3d',
+       'actions-document-history-open',
+       'actions-document-import-t3d',
+       'actions-document-info',
+       'actions-document-localize',
+       'actions-document-move',
+       'actions-document-new',
+       'actions-document-open',
+       'actions-document-open-read-only',
+       'actions-document-paste-after',
+       'actions-document-paste-into',
+       'actions-document-save',
+       'actions-document-save-close',
+       'actions-document-save-new',
+       'actions-document-save-view',
+       'actions-document-select',
+       'actions-document-synchronize',
+       'actions-document-view',
+       'actions-edit-add',
+       'actions-edit-copy',
+       'actions-edit-copy-release',
+       'actions-edit-cut',
+       'actions-edit-cut-release',
+       'actions-edit-delete',
+       'actions-edit-hide',
+       'actions-edit-insert-default',
+       'actions-edit-localize-status-high',
+       'actions-edit-localize-status-low',
+       'actions-edit-merge-localization',
+       'actions-edit-pick-date',
+       'actions-edit-rename',
+       'actions-edit-restore',
+       'actions-edit-undelete-edit',
+       'actions-edit-undo',
+       'actions-edit-unhide',
+       'actions-edit-upload',
+       'actions-input-clear',
+       'actions-insert-record',
+       'actions-insert-reference',
+       'actions-message-error-close',
+       'actions-message-information-close',
+       'actions-message-notice-close',
+       'actions-message-ok-close',
+       'actions-message-warning-close',
+       'actions-move-down',
+       'actions-move-left',
+       'actions-move-move',
+       'actions-move-right',
+       'actions-move-to-bottom',
+       'actions-move-to-top',
+       'actions-move-up',
+       'actions-page-move',
+       'actions-page-new',
+       'actions-page-open',
+       'actions-selection-delete',
+       'actions-system-backend-user-emulate',
+       'actions-system-backend-user-switch',
+       'actions-system-cache-clear',
+       'actions-system-cache-clear-impact-high',
+       'actions-system-cache-clear-impact-low',
+       'actions-system-cache-clear-impact-medium',
+       'actions-system-cache-clear-rte',
+       'actions-system-extension-configure',
+       'actions-system-extension-documentation',
+       'actions-system-extension-download',
+       'actions-system-extension-import',
+       'actions-system-extension-install',
+       'actions-system-extension-sqldump',
+       'actions-system-extension-uninstall',
+       'actions-system-extension-update',
+       'actions-system-help-open',
+       'actions-system-list-open',
+       'actions-system-options-view',
+       'actions-system-pagemodule-open',
+       'actions-system-refresh',
+       'actions-system-shortcut-new',
+       'actions-system-tree-search-open',
+       'actions-system-typoscript-documentation',
+       'actions-system-typoscript-documentation-open',
+       'actions-template-new',
+       'actions-version-document-remove',
+       'actions-version-page-open',
+       'actions-version-swap-version',
+       'actions-version-swap-workspace',
+       'actions-version-workspace-preview',
+       'actions-version-workspace-sendtostage',
+       'actions-view-go-back',
+       'actions-view-go-down',
+       'actions-view-go-forward',
+       'actions-view-go-up',
+       'actions-view-list-collapse',
+       'actions-view-list-expand',
+       'actions-view-paging-first',
+       'actions-view-paging-first-disabled',
+       'actions-view-paging-last',
+       'actions-view-paging-last-disabled',
+       'actions-view-paging-next',
+       'actions-view-paging-next-disabled',
+       'actions-view-paging-previous',
+       'actions-view-paging-previous-disabled',
+       'actions-view-table-collapse',
+       'actions-view-table-expand',
+       'actions-window-open',
+       'apps-clipboard-images',
+       'apps-clipboard-list',
+       'apps-filetree-folder-add',
+       'apps-filetree-folder-default',
+       'apps-filetree-folder-list',
+       'apps-filetree-folder-locked',
+       'apps-filetree-folder-media',
+       'apps-filetree-folder-news',
+       'apps-filetree-folder-opened',
+       'apps-filetree-folder-recycler',
+       'apps-filetree-folder-temp',
+       'apps-filetree-folder-user',
+       'apps-filetree-mount',
+       'apps-filetree-root',
+       'apps-irre-collapsed',
+       'apps-irre-expanded',
+       'apps-pagetree-backend-user',
+       'apps-pagetree-backend-user-hideinmenu',
+       'apps-pagetree-collapse',
+       'apps-pagetree-drag-copy-above',
+       'apps-pagetree-drag-copy-below',
+       'apps-pagetree-drag-move-above',
+       'apps-pagetree-drag-move-below',
+       'apps-pagetree-drag-move-between',
+       'apps-pagetree-drag-move-into',
+       'apps-pagetree-drag-new-between',
+       'apps-pagetree-drag-new-inside',
+       'apps-pagetree-drag-place-denied',
+       'apps-pagetree-expand',
+       'apps-pagetree-folder-contains-approve',
+       'apps-pagetree-folder-contains-board',
+       'apps-pagetree-folder-contains-fe_users',
+       'apps-pagetree-folder-contains-news',
+       'apps-pagetree-folder-contains-shop',
+       'apps-pagetree-folder-default',
+       'apps-pagetree-page-advanced',
+       'apps-pagetree-page-advanced-hideinmenu',
+       'apps-pagetree-page-advanced-root',
+       'apps-pagetree-page-backend-users',
+       'apps-pagetree-page-backend-users-hideinmenu',
+       'apps-pagetree-page-backend-users-root',
+       'apps-pagetree-page-default',
+       'apps-pagetree-page-domain',
+       'apps-pagetree-page-frontend-user',
+       'apps-pagetree-page-frontend-user-hideinmenu',
+       'apps-pagetree-page-frontend-user-root',
+       'apps-pagetree-page-frontend-users',
+       'apps-pagetree-page-frontend-users-hideinmenu',
+       'apps-pagetree-page-frontend-users-root',
+       'apps-pagetree-page-mountpoint',
+       'apps-pagetree-page-mountpoint-hideinmenu',
+       'apps-pagetree-page-mountpoint-root',
+       'apps-pagetree-page-no-icon-found',
+       'apps-pagetree-page-no-icon-found-hideinmenu',
+       'apps-pagetree-page-no-icon-found-root',
+       'apps-pagetree-page-not-in-menu',
+       'apps-pagetree-page-recycler',
+       'apps-pagetree-page-shortcut',
+       'apps-pagetree-page-shortcut-external',
+       'apps-pagetree-page-shortcut-external-hideinmenu',
+       'apps-pagetree-page-shortcut-external-root',
+       'apps-pagetree-page-shortcut-hideinmenu',
+       'apps-pagetree-page-shortcut-root',
+       'apps-pagetree-root',
+       'apps-pagetree-spacer',
+       'apps-tcatree-select-recursive',
+       'apps-toolbar-menu-actions',
+       'apps-toolbar-menu-cache',
+       'apps-toolbar-menu-opendocs',
+       'apps-toolbar-menu-search',
+       'apps-toolbar-menu-shortcut',
+       'apps-toolbar-menu-workspace',
+       'mimetypes-compressed',
+       'mimetypes-excel',
+       'mimetypes-media-audio',
+       'mimetypes-media-flash',
+       'mimetypes-media-image',
+       'mimetypes-media-video',
+       'mimetypes-other-other',
+       'mimetypes-pdf',
+       'mimetypes-powerpoint',
+       'mimetypes-text-css',
+       'mimetypes-text-csv',
+       'mimetypes-text-html',
+       'mimetypes-text-js',
+       'mimetypes-text-php',
+       'mimetypes-text-text',
+       'mimetypes-word',
+       'mimetypes-x-content-divider',
+       'mimetypes-x-content-domain',
+       'mimetypes-x-content-form',
+       'mimetypes-x-content-form-search',
+       'mimetypes-x-content-header',
+       'mimetypes-x-content-html',
+       'mimetypes-x-content-image',
+       'mimetypes-x-content-link',
+       'mimetypes-x-content-list-bullets',
+       'mimetypes-x-content-list-files',
+       'mimetypes-x-content-login',
+       'mimetypes-x-content-menu',
+       'mimetypes-x-content-multimedia',
+       'mimetypes-x-content-page-language-overlay',
+       'mimetypes-x-content-plugin',
+       'mimetypes-x-content-script',
+       'mimetypes-x-content-table',
+       'mimetypes-x-content-template',
+       'mimetypes-x-content-template-extension',
+       'mimetypes-x-content-template-static',
+       'mimetypes-x-content-text',
+       'mimetypes-x-content-text-picture',
+       'mimetypes-x-sys_action',
+       'mimetypes-x-sys_category',
+       'mimetypes-x-sys_language',
+       'mimetypes-x-sys_news',
+       'mimetypes-x-sys_workspace',
+       'mimetypes-x_belayout',
+       'status-dialog-error',
+       'status-dialog-information',
+       'status-dialog-notification',
+       'status-dialog-ok',
+       'status-dialog-warning',
+       'status-overlay-access-restricted',
+       'status-overlay-deleted',
+       'status-overlay-hidden',
+       'status-overlay-icon-missing',
+       'status-overlay-includes-subpages',
+       'status-overlay-locked',
+       'status-overlay-scheduled',
+       'status-overlay-scheduled-future-end',
+       'status-overlay-translated',
+       'status-status-checked',
+       'status-status-current',
+       'status-status-edit-read-only',
+       'status-status-icon-missing',
+       'status-status-locked',
+       'status-status-permission-denied',
+       'status-status-permission-granted',
+       'status-status-readonly',
+       'status-status-reference-hard',
+       'status-status-reference-soft',
+       'status-status-sorting-asc',
+       'status-status-sorting-desc',
+       'status-status-sorting-light-asc',
+       'status-status-sorting-light-desc',
+       'status-status-workspace-draft',
+       'status-system-extension-required',
+       'status-user-admin',
+       'status-user-backend',
+       'status-user-frontend',
+       'status-user-group-backend',
+       'status-user-group-frontend',
+       'status-version-1',
+       'status-version-2',
+       'status-version-3',
+       'status-version-4',
+       'status-version-5',
+       'status-version-6',
+       'status-version-7',
+       'status-version-8',
+       'status-version-9',
+       'status-version-10',
+       'status-version-11',
+       'status-version-12',
+       'status-version-13',
+       'status-version-14',
+       'status-version-15',
+       'status-version-16',
+       'status-version-17',
+       'status-version-18',
+       'status-version-19',
+       'status-version-20',
+       'status-version-21',
+       'status-version-22',
+       'status-version-23',
+       'status-version-24',
+       'status-version-25',
+       'status-version-26',
+       'status-version-27',
+       'status-version-28',
+       'status-version-29',
+       'status-version-30',
+       'status-version-31',
+       'status-version-32',
+       'status-version-33',
+       'status-version-34',
+       'status-version-35',
+       'status-version-36',
+       'status-version-37',
+       'status-version-38',
+       'status-version-39',
+       'status-version-40',
+       'status-version-41',
+       'status-version-42',
+       'status-version-43',
+       'status-version-44',
+       'status-version-45',
+       'status-version-46',
+       'status-version-47',
+       'status-version-48',
+       'status-version-49',
+       'status-version-50',
+       'status-version-no-version',
+       'status-warning-in-use',
+       'status-warning-lock'
+);
+
+$GLOBALS['TBE_STYLES']['spriteIconApi']['spriteIconRecordOverlayPriorities'] = array(
+       'deleted',
+       'hidden',
+       'starttime',
+       'endtime',
+       'futureendtime',
+       'fe_group',
+       'protectedSection'
+);
+$GLOBALS['TBE_STYLES']['spriteIconApi']['spriteIconRecordOverlayNames'] = array(
+       'hidden' => 'status-overlay-hidden',
+       'fe_group' => 'status-overlay-access-restricted',
+       'starttime' => 'status-overlay-scheduled',
+       'endtime' => 'status-overlay-scheduled',
+       'futureendtime' => 'status-overlay-scheduled-future-end',
+       'readonly' => 'status-overlay-locked',
+       'deleted' => 'status-overlay-deleted',
+       'missing' => 'status-overlay-missing',
+       'translated' => 'status-overlay-translated',
+       'protectedSection' => 'status-overlay-includes-subpages'
+);
+?>
\ No newline at end of file
diff --git a/t3lib/stddb/tbl_be.php b/t3lib/stddb/tbl_be.php
new file mode 100644 (file)
index 0000000..dd7b617
--- /dev/null
@@ -0,0 +1,1146 @@
+<?php
+/***************************************************************
+ *  Copyright notice
+ *
+ *  (c) 1999-2011 Kasper Skårhøj (kasperYYYY@typo3.com)
+ *  All rights reserved
+ *
+ *  This script is part of the TYPO3 project. The TYPO3 project is
+ *  free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  The GNU General Public License can be found at
+ *  http://www.gnu.org/copyleft/gpl.html.
+ *  A copy is found in the textfile GPL.txt and important notices to the license
+ *  from the author is found in LICENSE.txt distributed with these scripts.
+ *
+ *
+ *  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!
+ ***************************************************************/
+/**
+ * Contains the dynamic configuration of the fields in the core tables
+ * of TYPO3: be_users, be_groups and sys_filemounts
+ *
+ * Revised for TYPO3 3.6 July/2003 by Kasper Skårhøj
+ *
+ * @author Kasper Skårhøj <kasperYYYY@typo3.com>
+ */
+/**
+ * Backend users - Those who login into the TYPO3 administration backend
+ */
+$TCA['be_users'] = array(
+       'ctrl' => $TCA['be_users']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'username,usergroup,db_mountpoints,file_mountpoints,admin,options,fileoper_perms,userMods,lockToDomain,realName,email,disable,starttime,endtime,lastlogin'
+       ),
+       'columns' => array(
+               'username' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.username',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '20',
+                               'max' => '50',
+                               'eval' => 'nospace,lower,unique,required'
+                       )
+               ),
+               'password' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.password',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '20',
+                               'max' => '40',
+                               'eval' => 'required,md5,password'
+                       )
+               ),
+               'usergroup' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'be_groups',
+                               'foreign_table_where' => 'ORDER BY be_groups.title',
+                               'size' => '5',
+                               'maxitems' => '20',
+                               'iconsInOptionTags' => 1,
+                               'wizards' => array(
+                                       '_PADDING' => 1,
+                                       '_VERTICAL' => 1,
+                                       'edit' => array(
+                                               'type' => 'popup',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_edit_title',
+                                               'script' => 'wizard_edit.php',
+                                               'popup_onlyOpenIfSelected' => 1,
+                                               'icon' => 'edit2.gif',
+                                               'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1'
+                                       ),
+                                       'add' => array(
+                                               'type' => 'script',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_add_title',
+                                               'icon' => 'add.gif',
+                                               'params' => array(
+                                                       'table' => 'be_groups',
+                                                       'pid' => '0',
+                                                       'setValue' => 'prepend'
+                                               ),
+                                               'script' => 'wizard_add.php'
+                                       ),
+                                       'list' => array(
+                                               'type' => 'script',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_list_title',
+                                               'icon' => 'list.gif',
+                                               'params' => array(
+                                                       'table' => 'be_groups',
+                                                       'pid' => '0'
+                                               ),
+                                               'script' => 'wizard_list.php'
+                                       )
+                               )
+                       )
+               ),
+               'lockToDomain' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:lockToDomain',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '20',
+                               'eval' => 'trim',
+                               'max' => '50',
+                               'softref' => 'substitute'
+                       )
+               ),
+               'db_mountpoints' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options_db_mounts',
+                       'config' => array(
+                               'type' => 'group',
+                               'internal_type' => 'db',
+                               'allowed' => 'pages',
+                               'size' => '3',
+                               'maxitems' => 25,
+                               'autoSizeMax' => 10,
+                               'show_thumbs' => '1',
+                               'wizards' => array(
+                                       'suggest' => array(
+                                               'type' => 'suggest'
+                                       )
+                               )
+                       )
+               ),
+               'file_mountpoints' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options_file_mounts',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'sys_filemounts',
+                               'foreign_table_where' => ' AND sys_filemounts.pid=0 ORDER BY sys_filemounts.title',
+                               'size' => '3',
+                               'maxitems' => 25,
+                               'autoSizeMax' => 10,
+                               'iconsInOptionTags' => 1,
+                               'wizards' => array(
+                                       '_PADDING' => 1,
+                                       '_VERTICAL' => 1,
+                                       'edit' => array(
+                                               'type' => 'popup',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_edit_title',
+                                               'script' => 'wizard_edit.php',
+                                               'icon' => 'edit2.gif',
+                                               'popup_onlyOpenIfSelected' => 1,
+                                               'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1'
+                                       ),
+                                       'add' => array(
+                                               'type' => 'script',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_add_title',
+                                               'icon' => 'add.gif',
+                                               'params' => array(
+                                                       'table' => 'sys_filemounts',
+                                                       'pid' => '0',
+                                                       'setValue' => 'prepend'
+                                               ),
+                                               'script' => 'wizard_add.php'
+                                       ),
+                                       'list' => array(
+                                               'type' => 'script',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_list_title',
+                                               'icon' => 'list.gif',
+                                               'params' => array(
+                                                       'table' => 'sys_filemounts',
+                                                       'pid' => '0'
+                                               ),
+                                               'script' => 'wizard_list.php'
+                                       )
+                               )
+                       )
+               ),
+               'email' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.email',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '20',
+                               'eval' => 'trim',
+                               'max' => '80',
+                               'softref' => 'email[subst]'
+                       )
+               ),
+               'realName' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.name',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '20',
+                               'eval' => 'trim',
+                               'max' => '80'
+                       )
+               ),
+               'disable' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
+                       'config' => array(
+                               'type' => 'check'
+                       )
+               ),
+               'disableIPlock' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.disableIPlock',
+                       'config' => array(
+                               'type' => 'check'
+                       )
+               ),
+               'admin' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.admin',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => '0'
+                       )
+               ),
+               'options' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.options_db_mounts', 0),
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.options_file_mounts', 0)
+                               ),
+                               'default' => '3'
+                       )
+               ),
+               'fileoper_perms' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_general', 0),
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_unzip', 0),
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms', 0),
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms_copy', 0),
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms_delete', 0)
+                               ),
+                               'default' => '0'
+                       )
+               ),
+               'workspace_perms' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:workspace_perms',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_tca.xml:workspace_perms_live', 0)
+                               ),
+                               'default' => 1
+                       )
+               ),
+               'starttime' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '13',
+                               'max' => '20',
+                               'eval' => 'datetime',
+                               'default' => '0'
+                       )
+               ),
+               'endtime' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '13',
+                               'max' => '20',
+                               'eval' => 'datetime',
+                               'default' => '0',
+                               'range' => array(
+                                       'upper' => mktime(0, 0, 0, 12, 31, 2020)
+                               )
+                       )
+               ),
+               'lang' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.lang',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('English', '')
+                               )
+                       )
+               ),
+               'userMods' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:userMods',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'modListUser',
+                               'size' => '5',
+                               'autoSizeMax' => 50,
+                               'maxitems' => '100',
+                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
+                               'iconsInOptionTags' => 1
+                       )
+               ),
+               'allowed_languages' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:allowed_languages',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'languages',
+                               'maxitems' => '1000',
+                               'renderMode' => 'checkbox'
+                       )
+               ),
+               'TSconfig' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '40',
+                               'rows' => '5',
+                               'wizards' => array(
+                                       '_PADDING' => 4,
+                                       '0' => array(
+                                               'type' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('tsconfig_help') ? 'popup' : '',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig_title',
+                                               'script' => 'wizard_tsconfig.php?mode=beuser',
+                                               'icon' => 'wizard_tsconfig.gif',
+                                               'JSopenParams' => 'height=500,width=780,status=0,menubar=0,scrollbars=1'
+                                       )
+                               ),
+                               'softref' => 'TSconfig'
+                       ),
+                       'defaultExtras' => 'fixed-font : enable-tab'
+               ),
+               'createdByAction' => array(
+                       'config' => array(
+                               'type' => 'passthrough'
+                       )
+               ),
+               'lastlogin' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.lastlogin',
+                       'config' => array(
+                               'type' => 'input',
+                               'readOnly' => '1',
+                               'size' => '12',
+                               'eval' => 'datetime',
+                               'default' => 0
+                       )
+               )
+       ),
+       'types' => array(
+               '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,
+                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.rights, userMods;;;;2-2-2, allowed_languages,
+                       --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,
+                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.options, lockToDomain;;;;1-1-1, disableIPlock, TSconfig;;;;2-2-2,
+                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.access, starttime;;;;1-1-1,endtime,
+                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.extended'),
+               '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,
+                       --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,
+                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.access, starttime;;;;1-1-1,endtime,
+                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.extended')
+       )
+);
+// Populate available languages
+/**
+ * @var $locales t3lib_l10n_locales
+ */
+$locales = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Localization\\Locales');
+$languageItems = $locales->getLanguages();
+unset($languageItems['default']);
+asort($languageItems);
+foreach ($languageItems as $locale => $name) {
+       $TCA['be_users']['columns']['lang']['config']['items'][] = array($name, $locale);
+}
+/**
+ * Backend usergroups - Much permission criterias are based on membership
+ * of backend groups.
+ */
+$TCA['be_groups'] = array(
+       'ctrl' => $TCA['be_groups']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'title, db_mountpoints, file_mountpoints, fileoper_perms, inc_access_lists, tables_select, tables_modify, pagetypes_select, non_exclude_fields, groupMods, lockToDomain, description'
+       ),
+       'columns' => array(
+               'title' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.title',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '25',
+                               'max' => '50',
+                               'eval' => 'trim,required'
+                       )
+               ),
+               'db_mountpoints' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:db_mountpoints',
+                       'config' => array(
+                               'type' => 'group',
+                               'internal_type' => 'db',
+                               'allowed' => 'pages',
+                               'size' => '3',
+                               'maxitems' => 25,
+                               'autoSizeMax' => 10,
+                               'show_thumbs' => '1',
+                               'wizards' => array(
+                                       'suggest' => array(
+                                               'type' => 'suggest'
+                                       )
+                               )
+                       )
+               ),
+               'file_mountpoints' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'sys_filemounts',
+                               'foreign_table_where' => ' AND sys_filemounts.pid=0 ORDER BY sys_filemounts.title',
+                               'size' => '3',
+                               'maxitems' => 25,
+                               'autoSizeMax' => 10,
+                               'iconsInOptionTags' => 1,
+                               'wizards' => array(
+                                       '_PADDING' => 1,
+                                       '_VERTICAL' => 1,
+                                       'edit' => array(
+                                               'type' => 'popup',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_edit_title',
+                                               'script' => 'wizard_edit.php',
+                                               'popup_onlyOpenIfSelected' => 1,
+                                               'icon' => 'edit2.gif',
+                                               'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1'
+                                       ),
+                                       'add' => array(
+                                               'type' => 'script',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_add_title',
+                                               'icon' => 'add.gif',
+                                               'params' => array(
+                                                       'table' => 'sys_filemounts',
+                                                       'pid' => '0',
+                                                       'setValue' => 'prepend'
+                                               ),
+                                               'script' => 'wizard_add.php'
+                                       ),
+                                       'list' => array(
+                                               'type' => 'script',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_list_title',
+                                               'icon' => 'list.gif',
+                                               'params' => array(
+                                                       'table' => 'sys_filemounts',
+                                                       'pid' => '0'
+                                               ),
+                                               'script' => 'wizard_list.php'
+                                       )
+                               )
+                       )
+               ),
+               'fileoper_perms' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_general', 0),
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_unzip', 0),
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms', 0),
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms_copy', 0),
+                                       array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms_delete', 0)
+                               ),
+                               'default' => '7'
+                       )
+               ),
+               'workspace_perms' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:workspace_perms',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_tca.xml:workspace_perms_live', 0)
+                               ),
+                               'default' => 0
+                       )
+               ),
+               'pagetypes_select' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.pagetypes_select',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'pagetypes',
+                               'size' => '5',
+                               'autoSizeMax' => 50,
+                               'maxitems' => 20,
+                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
+                               'iconsInOptionTags' => 1
+                       )
+               ),
+               'tables_modify' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.tables_modify',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'tables',
+                               'size' => '5',
+                               'autoSizeMax' => 50,
+                               'maxitems' => 100,
+                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
+                               'iconsInOptionTags' => 1
+                       )
+               ),
+               'tables_select' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.tables_select',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'tables',
+                               'size' => '5',
+                               'autoSizeMax' => 50,
+                               'maxitems' => 100,
+                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
+                               'iconsInOptionTags' => 1
+                       )
+               ),
+               'non_exclude_fields' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.non_exclude_fields',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'exclude',
+                               'size' => '25',
+                               'maxitems' => 1000,
+                               'autoSizeMax' => 50,
+                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
+                               'itemListStyle' => 'width:500px'
+                       )
+               ),
+               'explicit_allowdeny' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.explicit_allowdeny',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'explicitValues',
+                               'maxitems' => 1000,
+                               'renderMode' => 'checkbox'
+                       )
+               ),
+               'allowed_languages' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:allowed_languages',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'languages',
+                               'maxitems' => 1000,
+                               'renderMode' => 'checkbox'
+                       )
+               ),
+               'custom_options' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.custom_options',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'custom',
+                               'maxitems' => 1000,
+                               'renderMode' => 'checkbox'
+                       )
+               ),
+               'hidden' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => '0'
+                       )
+               ),
+               'lockToDomain' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:lockToDomain',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '20',
+                               'eval' => 'trim',
+                               'max' => '50',
+                               'softref' => 'substitute'
+                       )
+               ),
+               'groupMods' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:userMods',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'modListGroup',
+                               'size' => '5',
+                               'autoSizeMax' => 50,
+                               'maxitems' => 100,
+                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
+                               'iconsInOptionTags' => 1
+                       )
+               ),
+               'inc_access_lists' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.inc_access_lists',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => '0'
+                       )
+               ),
+               'description' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.description',
+                       'config' => array(
+                               'type' => 'text',
+                               'rows' => 5,
+                               'cols' => 30
+                       )
+               ),
+               'TSconfig' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '40',
+                               'rows' => '5',
+                               'wizards' => array(
+                                       '_PADDING' => 4,
+                                       '0' => array(
+                                               'type' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('tsconfig_help') ? 'popup' : '',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig_title',
+                                               'script' => 'wizard_tsconfig.php?mode=beuser',
+                                               'icon' => 'wizard_tsconfig.gif',
+                                               'JSopenParams' => 'height=500,width=780,status=0,menubar=0,scrollbars=1'
+                                       )
+                               ),
+                               'softref' => 'TSconfig'
+                       ),
+                       'defaultExtras' => 'fixed-font : enable-tab'
+               ),
+               'hide_in_lists' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.hide_in_lists',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => 0
+                       )
+               ),
+               'subgroup' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.subgroup',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'be_groups',
+                               'foreign_table_where' => 'AND NOT(be_groups.uid = ###THIS_UID###) AND be_groups.hidden=0 ORDER BY be_groups.title',
+                               'size' => '5',
+                               'autoSizeMax' => 50,
+                               'maxitems' => 20,
+                               'iconsInOptionTags' => 1
+                       )
+               )
+       ),
+       'types' => array(
+               '0' => array('showitem' => 'hidden;;;;1-1-1, title;;;;2-2-2, description, subgroup;;;;3-3-3,
+                       --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.base_rights, inc_access_lists;;;;1-1-1,
+                       --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,
+                       --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,
+                       --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.extended'),
+               '1' => array('showitem' => 'hidden;;;;1-1-1, title;;;;2-2-2, description, subgroup;;;;3-3-3,
+                       --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,
+                       --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,
+                       --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,
+                       --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.extended')
+       )
+);
+/**
+ * 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
+ */
+$TCA['sys_filemounts'] = array(
+       'ctrl' => $TCA['sys_filemounts']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'title,hidden,path,base'
+       ),
+       'columns' => array(
+               'title' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.xml:sys_filemounts.title',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '20',
+                               'max' => '30',
+                               'eval' => 'required,trim'
+                       )
+               ),
+               'hidden' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
+                       'config' => array(
+                               'type' => 'check'
+                       )
+               ),
+               'base' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.baseStorage',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'sys_file_storage',
+                               'size' => 1,
+                               'maxitems' => 1
+                       )
+               ),
+               'path' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.folder',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(),
+                               'itemsProcFunc' => 'typo3/sysext/core/Classes/Resource/Service/UserFileMountService.php:TYPO3\CMS\Core\Resource\Service\UserFileMountService->renderTceformsSelectDropdown',
+                       )
+               )
+       ),
+       'types' => array(
+               '0' => array('showitem' => '--palette--;;mount, base, path')
+       ),
+       'palettes' => array(
+               'mount' => array('showitem' => 'title,hidden', 'canNotCollapse' => 1)
+       )
+);
+/**
+ * tca-record collections
+ */
+$TCA['sys_collection'] = array(
+       'ctrl' => $TCA['sys_collection']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'title, description, table_name, items'
+       ),
+       'feInterface' => $TCA['sys_collection']['feInterface'],
+       'columns' => array(
+               't3ver_label' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.versionLabel',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'max' => '30'
+                       )
+               ),
+               'sys_language_uid' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.language',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'sys_language',
+                               'foreign_table_where' => 'ORDER BY sys_language.title',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_general.xml:LGL.allLanguages', -1),
+                                       array('LLL:EXT:lang/locallang_general.xml:LGL.default_value', 0)
+                               )
+                       )
+               ),
+               'l10n_parent' => array(
+                       'displayCond' => 'FIELD:sys_language_uid:>:0',
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.l18n_parent',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('', 0)
+                               ),
+                               'foreign_table' => 'sys_file_collection',
+                               'foreign_table_where' => 'AND sys_file_collection.pid=###CURRENT_PID### AND sys_file_collection.sys_language_uid IN (-1,0)'
+                       )
+               ),
+               'l10n_diffsource' => array(
+                       'config' => array(
+                               'type' => 'passthrough'
+                       )
+               ),
+               'hidden' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.hidden',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => '0'
+                       )
+               ),
+               'starttime' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '8',
+                               'max' => '20',
+                               'eval' => 'date',
+                               'default' => '0',
+                               'checkbox' => '0'
+                       )
+               ),
+               'endtime' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '8',
+                               'max' => '20',
+                               'eval' => 'date',
+                               'checkbox' => '0',
+                               'default' => '0',
+                               'range' => array(
+                                       'upper' => mktime(3, 14, 7, 1, 19, 2038),
+                                       'lower' => mktime(0, 0, 0, date('m') - 1, date('d'), date('Y'))
+                               )
+                       )
+               ),
+               'fe_group' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.fe_group',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('', 0),
+                                       array('LLL:EXT:lang/locallang_general.xml:LGL.hide_at_login', -1),
+                                       array('LLL:EXT:lang/locallang_general.xml:LGL.any_login', -2),
+                                       array('LLL:EXT:lang/locallang_general.xml:LGL.usergroups', '--div--')
+                               ),
+                               'foreign_table' => 'fe_groups'
+                       )
+               ),
+               'table_name' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection.table_name',
+                       'config' => array(
+                               'type' => 'select',
+                               'special' => 'tables'
+                       )
+               ),
+               'items' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection.items',
+                       'config' => array(
+                               'type' => 'group',
+                               'internal_type' => 'db',
+                               'prepend_tname' => TRUE,
+                               'allowed' => '*',
+                               'MM' => 'sys_collection_entries',
+                               'MM_hasUidField' => TRUE,
+                               'multiple' => TRUE
+                       )
+               ),
+               'title' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection.title',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '60',
+                               'eval' => 'required'
+                       )
+               ),
+               'description' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection.description',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '60',
+                               'rows' => '5'
+                       )
+               ),
+               'type' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_collection.type',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_tca.xlf:sys_collection.type.static', 'static')
+                               ),
+                               'default' => 'static'
+                       )
+               )
+       ),
+       'types' => array(
+               'static' => array('showitem' => 'title;;1,type, description,table_name, items')
+       ),
+       'palettes' => array(
+               '1' => array('showitem' => 'starttime, endtime, fe_group, sys_language_uid, l10n_parent, l10n_diffsource, hidden')
+       )
+);
+/**
+ * System log history - keeps a trail of record edits
+ */
+$TCA['sys_history'] = array(
+       'ctrl' => $TCA['sys_history']['ctrl'],
+       'columns' => array(
+               'sys_log_uid' => array(
+                       'label' => 'sys_log_uid',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'history_data' => array(
+                       'label' => 'history_data',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'fieldlist' => array(
+                       'label' => 'fieldlist',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'recuid' => array(
+                       'label' => 'recuid',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'tablename' => array(
+                       'label' => 'tablename',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'tstamp' => array(
+                       'label' => 'tstamp',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'history_files' => array(
+                       'label' => 'history_files',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'snapshot' => array(
+                       'label' => 'snapshot',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               )
+       ),
+       'types' => array(
+               '1' => array(
+                       'showitem' => 'sys_log_uid, history_data, fieldlist, recuid, tablename, tstamp, history_files, snapshot'
+               )
+       )
+);
+/**
+ * System languages - Defines possible languages used for translation of records in the system
+ */
+$TCA['sys_language'] = array(
+       'ctrl' => $TCA['sys_language']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'hidden,title'
+       ),
+       'columns' => array(
+               'title' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.language',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '35',
+                               'max' => '80',
+                               'eval' => 'trim,required'
+                       )
+               ),
+               'hidden' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.disable',
+                       'exclude' => 1,
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => '0'
+                       )
+               ),
+               'static_lang_isocode' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_tca.php:sys_language.isocode',
+                       'displayCond' => 'EXT:static_info_tables:LOADED:true',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('', 0)
+                               ),
+                               'foreign_table' => 'static_languages',
+                               'foreign_table_where' => 'AND static_languages.pid=0 ORDER BY static_languages.lg_name_en',
+                               'size' => 1,
+                               'minitems' => 0,
+                               'maxitems' => 1
+                       )
+               ),
+               'flag' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.php:sys_language.flag',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('', 0, '')
+                               ),
+                               'selicon_cols' => 16,
+                               'size' => 1,
+                               'minitems' => 0,
+                               'maxitems' => 1
+                       )
+               )
+       ),
+       'types' => array(
+               '1' => array('showitem' => 'hidden;;;;1-1-1,title;;;;2-2-2,static_lang_isocode,flag')
+       )
+);
+/**
+ * System log
+ */
+$TCA['sys_log'] = array(
+       'ctrl' => $TCA['sys_log']['ctrl'],
+       'columns' => array(
+               'tstamp' => array(
+                       'label' => 'tstamp',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'userid' => array(
+                       'label' => 'userid',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'action' => array(
+                       'label' => 'action',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'recuid' => array(
+                       'label' => 'recuid',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'tablename' => array(
+                       'label' => 'tablename',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'recpid' => array(
+                       'label' => 'recpid',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'error' => array(
+                       'label' => 'error',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'details' => array(
+                       'label' => 'details',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'type' => array(
+                       'label' => 'type',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'detail_nr' => array(
+                       'label' => 'detail_nr',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'IP' => array(
+                       'label' => 'IP',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'log_data' => array(
+                       'label' => 'log_data',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'event_pid' => array(
+                       'label' => 'event_pid',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'workspace' => array(
+                       'label' => 'workspace',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               ),
+               'NEWid' => array(
+                       'label' => 'NEWid',
+                       'config' => array(
+                               'type' => 'input'
+                       )
+               )
+       ),
+       'types' => array(
+               '1' => array(
+                       'showitem' => 'tstamp, userid, action, recuid, tablename, recpid, error, details, type, details_nr, IP, log_data, event_pid, workspace, NEWid'
+               )
+       )
+);
+/**
+ * System News (displayed on Login screen)
+ */
+$TCA['sys_news'] = array(
+       'ctrl' => $TCA['sys_news']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'hidden,title,content,starttime,endtime'
+       ),
+       'columns' => array(
+               'hidden' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
+                       'exclude' => 1,
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => '0'
+                       )
+               ),
+               'starttime' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '13',
+                               'max' => '20',
+                               'eval' => 'datetime',
+                               'default' => '0'
+                       )
+               ),
+               'endtime' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '13',
+                               'max' => '20',
+                               'eval' => 'datetime',
+                               'default' => '0'
+                       )
+               ),
+               'title' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.title',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'max' => '255',
+                               'eval' => 'required'
+                       )
+               ),
+               'content' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.text',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '48',
+                               'rows' => '5',
+                               'wizards' => array(
+                                       '_PADDING' => 4,
+                                       '_VALIGN' => 'middle',
+                                       'RTE' => array(
+                                               'notNewRecords' => 1,
+                                               'RTEonly' => 1,
+                                               'type' => 'script',
+                                               'title' => 'LLL:EXT:cms/locallang_ttc.php:bodytext.W.RTE',
+                                               'icon' => 'wizard_rte2.gif',
+                                               'script' => 'wizard_rte.php'
+                                       )
+                               )
+                       )
+               )
+       ),
+       'types' => array(
+               '1' => array('showitem' => '
+                       hidden, title, content;;9;richtext:rte_transform[flag=rte_enabled|mode=ts_css];3-3-3,
+                       --div--;LLL:EXT:lang/locallang_tca.xml:sys_news.tabs.access, starttime, endtime')
+       )
+);
+?>
\ No newline at end of file
diff --git a/t3lib/stddb/tbl_pages.php b/t3lib/stddb/tbl_pages.php
new file mode 100644 (file)
index 0000000..e1bd3fd
--- /dev/null
@@ -0,0 +1,1067 @@
+<?php
+if (!defined('TYPO3_MODE')) {
+       die('Access denied.');
+}
+$TCA['pages'] = array(
+       'ctrl' => $TCA['pages']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'doktype,title,alias,hidden,starttime,endtime,fe_group,url,target,no_cache,shortcut,keywords,description,abstract,newUntil,lastUpdated,cache_timeout,cache_tags,backend_layout,backend_layout_next_level',
+               'maxDBListItems' => 30,
+               'maxSingleDBListItems' => 50
+       ),
+       'columns' => array(
+               'doktype' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.type',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.div.page',
+                                               '--div--'
+                                       ),
+                                       array(
+                                               'LLL:EXT:lang/locallang_tca.php:doktype.I.0',
+                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_DEFAULT,
+                                               'i/pages.gif'
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.4',
+                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_BE_USER_SECTION,
+                                               'i/be_users_section.gif'
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.div.link',
+                                               '--div--'
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.2',
+                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SHORTCUT,
+                                               'i/pages_shortcut.gif'
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.5',
+                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_MOUNTPOINT,
+                                               'i/pages_mountpoint.gif'
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.8',
+                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_LINK,
+                                               'i/pages_link.gif'
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.div.special',
+                                               '--div--'
+                                       ),
+                                       array(
+                                               'LLL:EXT:lang/locallang_tca.xml:doktype.I.folder',
+                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SYSFOLDER,
+                                               'i/sysf.gif'
+                                       ),
+                                       array(
+                                               'LLL:EXT:lang/locallang_tca.xml:doktype.I.2',
+                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_RECYCLER,
+                                               'i/recycler.gif'
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.7',
+                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SPACER,
+                                               'i/spacer_icon.gif'
+                                       )
+                               ),
+                               'default' => (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_DEFAULT,
+                               'iconsInOptionTags' => 1,
+                               'noIconsBelowSelect' => 1
+                       )
+               ),
+               'title' => array(
+                       'label' => 'LLL:EXT:lang/locallang_tca.php:title',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '50',
+                               'max' => '255',
+                               'eval' => 'trim,required'
+                       )
+               ),
+               'TSconfig' => array(
+                       'exclude' => 1,
+                       'label' => 'TSconfig:',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '40',
+                               'rows' => '5',
+                               'wizards' => array(
+                                       '_PADDING' => 4,
+                                       '0' => array(
+                                               'type' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('tsconfig_help') ? 'popup' : '',
+                                               'title' => 'TSconfig QuickReference',
+                                               'script' => 'wizard_tsconfig.php?mode=page',
+                                               'icon' => 'wizard_tsconfig.gif',
+                                               'JSopenParams' => 'height=500,width=780,status=0,menubar=0,scrollbars=1'
+                                       )
+                               ),
+                               'softref' => 'TSconfig'
+                       ),
+                       'defaultExtras' => 'fixed-font : enable-tab'
+               ),
+               'php_tree_stop' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_tca.php:php_tree_stop',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       '1' => array(
+                                               '0' => 'LLL:EXT:lang/locallang_core.xml:labels.enabled'
+                                       )
+                               )
+                       )
+               ),
+               'storage_pid' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_tca.php:storage_pid',
+                       'config' => array(
+                               'type' => 'group',
+                               'internal_type' => 'db',
+                               'allowed' => 'pages',
+                               'size' => '1',
+                               'maxitems' => '1',
+                               'minitems' => '0',
+                               'show_thumbs' => '1',
+                               'wizards' => array(
+                                       'suggest' => array(
+                                               'type' => 'suggest'
+                                       )
+                               )
+                       )
+               ),
+               'TYPO3\\CMS\\Impexp\\ImportExport_origuid' => array('config' => array('type' => 'passthrough')),
+               't3ver_label' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.versionLabel',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '23',
+                               'max' => '255'
+                       )
+               ),
+               'editlock' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_tca.php:editlock',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       '1' => array(
+                                               '0' => 'LLL:EXT:lang/locallang_core.xml:labels.enabled'
+                                       )
+                               )
+                       )
+               ),
+               'hidden' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.hidden',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => '1',
+                               'items' => array(
+                                       '1' => array(
+                                               '0' => 'LLL:EXT:cms/locallang_tca.xml:pages.hidden_checkbox_1_formlabel'
+                                       )
+                               )
+                       )
+               ),
+               'starttime' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '13',
+                               'max' => '20',
+                               'eval' => 'datetime',
+                               'default' => '0'
+                       )
+               ),
+               'endtime' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '13',
+                               'max' => '20',
+                               'eval' => 'datetime',
+                               'default' => '0',
+                               'range' => array(
+                                       'upper' => mktime(0, 0, 0, 12, 31, 2020)
+                               )
+                       )
+               ),
+               'layout' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.layout',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array(
+                                               'LLL:EXT:lang/locallang_general.xml:LGL.default_value',
+                                               '0'
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.layout.I.1',
+                                               '1'
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.layout.I.2',
+                                               '2'
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.layout.I.3',
+                                               '3'
+                                       )
+                               ),
+                               'default' => '0'
+                       )
+               ),
+               'url_scheme' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.url_scheme',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array(
+                                               'LLL:EXT:lang/locallang_general.xml:LGL.default_value',
+                                               0
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.url_scheme.http',
+                                               1
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.url_scheme.https',
+                                               2
+                                       )
+                               ),
+                               'default' => 0
+                       )
+               ),
+               'fe_group' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.fe_group',
+                       'config' => array(
+                               'type' => 'select',
+                               'size' => 7,
+                               'maxitems' => 20,
+                               'items' => array(
+                                       array(
+                                               'LLL:EXT:lang/locallang_general.xml:LGL.hide_at_login',
+                                               -1
+                                       ),
+                                       array(
+                                               'LLL:EXT:lang/locallang_general.xml:LGL.any_login',
+                                               -2
+                                       ),
+                                       array(
+                                               'LLL:EXT:lang/locallang_general.xml:LGL.usergroups',
+                                               '--div--'
+                                       )
+                               ),
+                               'exclusiveKeys' => '-1,-2',
+                               'foreign_table' => 'fe_groups',
+                               'foreign_table_where' => 'ORDER BY fe_groups.title'
+                       )
+               ),
+               'extendToSubpages' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.extendToSubpages',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       '1' => array(
+                                               '0' => 'LLL:EXT:lang/locallang_core.xml:labels.enabled'
+                                       )
+                               )
+                       )
+               ),
+               'nav_title' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.nav_title',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '50',
+                               'max' => '255',
+                               'eval' => 'trim'
+                       )
+               ),
+               'nav_hide' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.nav_hide',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       '1' => array(
+                                               '0' => 'LLL:EXT:cms/locallang_tca.xml:pages.nav_hide_checkbox_1_formlabel'
+                                       )
+                               )
+                       )
+               ),
+               'subtitle' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.subtitle',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '50',
+                               'max' => '255',
+                               'eval' => ''
+                       )
+               ),
+               'target' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.target',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '50',
+                               'max' => '80',
+                               'eval' => 'trim'
+                       )
+               ),
+               'alias' => array(
+                       'exclude' => 1,
+                       'displayCond' => 'VERSION:IS:false',
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.alias',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '50',
+                               'max' => '32',
+                               'eval' => 'nospace,alphanum_x,lower,unique',
+                               'softref' => 'notify'
+                       )
+               ),
+               'url' => array(
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.url',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '23',
+                               'max' => '255',
+                               'eval' => 'trim,required',
+                               'softref' => 'url'
+                       )
+               ),
+               'urltype' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.type',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array(
+                                               'LLL:EXT:lang/locallang_core.xml:labels.automatic',
+                                               '0'
+                                       ),
+                                       array(
+                                               'http://',
+                                               '1'
+                                       ),
+                                       array(
+                                               'https://',
+                                               '4'
+                                       ),
+                                       array(
+                                               'ftp://',
+                                               '2'
+                                       ),
+                                       array(
+                                               'mailto:',
+                                               '3'
+                                       )
+                               ),
+                               'default' => '1'
+                       )
+               ),
+               'lastUpdated' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.lastUpdated',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '13',
+                               'max' => '20',
+                               'eval' => 'datetime',
+                               'default' => '0'
+                       )
+               ),
+               'newUntil' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.newUntil',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '13',
+                               'max' => '20',
+                               'eval' => 'date',
+                               'default' => '0'
+                       )
+               ),
+               'cache_timeout' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array(
+                                               'LLL:EXT:lang/locallang_general.xml:LGL.default_value',
+                                               0
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout.I.1',
+                                               60
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout.I.2',
+                                               300
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout.I.3',
+                                               900
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout.I.4',
+                                               1800
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout.I.5',
+                                               3600
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout.I.6',
+                                               14400
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout.I.7',
+                                               86400
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout.I.8',
+                                               172800
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout.I.9',
+                                               604800
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout.I.10',
+                                               2678400
+                                       )
+                               ),
+                               'default' => '0'
+                       )
+               ),
+               'cache_tags' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.cache_tags',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'max' => '255',
+                               'eval' => ''
+                       )
+               ),
+               'no_cache' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.no_cache',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       '1' => array(
+                                               '0' => 'LLL:EXT:cms/locallang_tca.xml:pages.no_cache_checkbox_1_formlabel'
+                                       )
+                               )
+                       )
+               ),
+               'no_search' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.no_search',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       '1' => array(
+                                               '0' => 'LLL:EXT:cms/locallang_tca.xml:pages.no_search_checkbox_1_formlabel'
+                                       )
+                               )
+                       )
+               ),
+               'shortcut' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.shortcut_page',
+                       'config' => array(
+                               'type' => 'group',
+                               'internal_type' => 'db',
+                               'allowed' => 'pages',
+                               'size' => '1',
+                               'maxitems' => '1',
+                               'minitems' => '0',
+                               'show_thumbs' => '1',
+                               'wizards' => array(
+                                       'suggest' => array(
+                                               'type' => 'suggest'
+                                       )
+                               )
+                       )
+               ),
+               'shortcut_mode' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.shortcut_mode',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.shortcut_mode.I.0',
+                                               \TYPO3\CMS\Frontend\Page\PageRepository::SHORTCUT_MODE_NONE
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.shortcut_mode.I.1',
+                                               \TYPO3\CMS\Frontend\Page\PageRepository::SHORTCUT_MODE_FIRST_SUBPAGE
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.shortcut_mode.I.2',
+                                               \TYPO3\CMS\Frontend\Page\PageRepository::SHORTCUT_MODE_RANDOM_SUBPAGE
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.shortcut_mode.I.3',
+                                               \TYPO3\CMS\Frontend\Page\PageRepository::SHORTCUT_MODE_PARENT_PAGE
+                                       )
+                               ),
+                               'default' => '0'
+                       )
+               ),
+               'content_from_pid' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.content_from_pid',
+                       'config' => array(
+                               'type' => 'group',
+                               'internal_type' => 'db',
+                               'allowed' => 'pages',
+                               'size' => '1',
+                               'maxitems' => '1',
+                               'minitems' => '0',
+                               'show_thumbs' => '1',
+                               'wizards' => array(
+                                       'suggest' => array(
+                                               'type' => 'suggest'
+                                       )
+                               )
+                       )
+               ),
+               'mount_pid' => array(
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.mount_pid',
+                       'config' => array(
+                               'type' => 'group',
+                               'internal_type' => 'db',
+                               'allowed' => 'pages',
+                               'size' => '1',
+                               'maxitems' => '1',
+                               'minitems' => '0',
+                               'show_thumbs' => '1',
+                               'wizards' => array(
+                                       'suggest' => array(
+                                               'type' => 'suggest'
+                                       )
+                               )
+                       )
+               ),
+               'keywords' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.keywords',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '40',
+                               'rows' => '3'
+                       )
+               ),
+               'description' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.description',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '40',
+                               'rows' => '3'
+                       )
+               ),
+               'abstract' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.abstract',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '40',
+                               'rows' => '3'
+                       )
+               ),
+               'author' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.author',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '23',
+                               'eval' => 'trim',
+                               'max' => '80'
+                       )
+               ),
+               'author_email' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.email',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '23',
+                               'eval' => 'trim',
+                               'max' => '80',
+                               'softref' => 'email[subst]'
+                       )
+               ),
+               'media' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.media',
+                       'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('media')
+               ),
+               'is_siteroot' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.is_siteroot',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       '1' => array(
+                                               '0' => 'LLL:EXT:lang/locallang_core.xml:labels.enabled'
+                                       )
+                               )
+                       )
+               ),
+               'mount_pid_ol' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.mount_pid_ol',
+                       'config' => array(
+                               'type' => 'radio',
+                               'items' => array(
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.mount_pid_ol.I.0',
+                                               0
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.mount_pid_ol.I.1',
+                                               1
+                                       )
+                               )
+                       )
+               ),
+               'module' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.module',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array(
+                                               '',
+                                               '',
+                                               ''
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.module.I.4',
+                                               'fe_users',
+                                               'i/fe_users.gif'
+                                       )
+                               ),
+                               'default' => '',
+                               'iconsInOptionTags' => 1,
+                               'noIconsBelowSelect' => 1
+                       )
+               ),
+               'fe_login_mode' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.fe_login_mode',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.fe_login_mode.enable',
+                                               0
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.fe_login_mode.disableAll',
+                                               1
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.fe_login_mode.disableGroups',
+                                               3
+                                       ),
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.fe_login_mode.enableAgain',
+                                               2
+                                       )
+                               )
+                       )
+               ),
+               'l18n_cfg' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.l18n_cfg',
+                       'config' => array(
+                               'type' => 'check',
+                               'items' => array(
+                                       array(
+                                               'LLL:EXT:cms/locallang_tca.xml:pages.l18n_cfg.I.1',
+                                               ''
+                                       ),
+                                       array(
+                                               $GLOBALS['TYPO3_CONF_VARS']['FE']['hidePagesIfNotTranslatedByDefault'] ? 'LLL:EXT:cms/locallang_tca.xml:pages.l18n_cfg.I.2a' : 'LLL:EXT:cms/locallang_tca.xml:pages.l18n_cfg.I.2',
+                                               ''
+                                       )
+                               )
+                       )
+               ),
+               'backend_layout' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.backend_layout_formlabel',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'backend_layout',
+                               'foreign_table_where' => 'AND ( ( ###PAGE_TSCONFIG_ID### = 0 AND ###STORAGE_PID### = 0 ) OR ( backend_layout.pid = ###PAGE_TSCONFIG_ID### OR backend_layout.pid = ###STORAGE_PID### ) OR ( ###PAGE_TSCONFIG_ID### = 0 AND backend_layout.pid = ###THIS_UID### ) ) AND backend_layout.hidden = 0',
+                               'items' => array(
+                                       array('', 0),
+                                       array('LLL:EXT:cms/locallang_tca.xml:pages.backend_layout.none', -1)
+                               ),
+                               'selicon_cols' => 5,
+                               'size' => 1,
+                               'maxitems' => 1,
+                               'default' => ''
+                       )
+               ),
+               'backend_layout_next_level' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.backend_layout_next_level_formlabel',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'backend_layout',
+                               'foreign_table_where' => 'AND ( ( ###PAGE_TSCONFIG_ID### = 0 AND ###STORAGE_PID### = 0 ) OR ( backend_layout.pid = ###PAGE_TSCONFIG_ID### OR backend_layout.pid = ###STORAGE_PID### ) OR ( ###PAGE_TSCONFIG_ID### = 0 AND backend_layout.pid = ###THIS_UID### ) ) AND backend_layout.hidden = 0',
+                               'items' => array(
+                                       array('', 0),
+                                       array('LLL:EXT:cms/locallang_tca.xml:pages.backend_layout.none', -1)
+                               ),
+                               'selicon_cols' => 5,
+                               'size' => 1,
+                               'maxitems' => 1,
+                               'default' => ''
+                       )
+               )
+       ),
+       'types' => array(
+               // normal
+               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_DEFAULT => array(
+                       'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.standard;standard,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.title;title,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.access,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.visibility;visibility,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.access;access,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.metadata,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.abstract;abstract,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.metatags;metatags,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.editorial;editorial,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.appearance,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.layout;layout,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.replace;replace,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.behaviour,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.links;links,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.caching;caching,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.language;language,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.miscellaneous;miscellaneous,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.module;module,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.resources,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.media;media,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.storage;storage,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.config;config,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.extended,
+               '
+               ),
+               // external URL
+               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_LINK => array(
+                       'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.external;external,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.title;title,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.access,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.visibility;visibility,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.access;access,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.metadata,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.abstract;abstract,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.editorial;editorial,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.appearance,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.layout;layout,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.behaviour,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.links;links,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.language;language,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.miscellaneous;miscellaneous,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.resources,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.media;media,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.storage;storage,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.config;config,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.extended,
+               '
+               ),
+               // shortcut
+               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SHORTCUT => array(
+                       'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.shortcut;shortcut,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.shortcutpage;shortcutpage,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.title;title,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.access,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.visibility;visibility,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.access;access,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.metadata,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.abstract;abstract,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.editorial;editorial,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.appearance,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.layout;layout,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.behaviour,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.links;links,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.language;language,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.miscellaneous;miscellaneous,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.resources,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.media;media,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.storage;storage,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.config;config,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.extended,
+                               '
+               ),
+               // mount page
+               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_MOUNTPOINT => array(
+                       'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.mountpoint;mountpoint,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.mountpage;mountpage,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.title;title,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.access,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.visibility;visibility,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.access;access,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.metadata,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.abstract;abstract,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.editorial;editorial,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.appearance,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.layout;layout,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.behaviour,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.links;links,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.language;language,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.miscellaneous;miscellaneous,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.resources,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.media;media,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.config;config,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.extended,
+               '
+               ),
+               // spacer
+               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SPACER => array(
+                       'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.standard;standard,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.title;titleonly,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.access,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.visibility;visibility,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.access;access,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.behaviour,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.miscellaneous;adminsonly,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.extended,
+                       '
+               ),
+               // Folder
+               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SYSFOLDER => array(
+                       'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.standard;standard,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.title;titleonly,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.access,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.visibility;hiddenonly,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.behaviour,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.miscellaneous;adminsonly,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.module;module,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.resources,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.media;media,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.storage;storage,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.config;config,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.extended,
+               '
+               ),
+               // trash
+               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_RECYCLER => array(
+                       'showitem' => '--palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.standard;standard,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.title;titleonly,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.access,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.visibility;hiddenonly,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.behaviour,
+                                       --palette--;LLL:EXT:cms/locallang_tca.xml:pages.palettes.miscellaneous;adminsonly,
+                               --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.extended,
+               '
+               )
+       ),
+       'palettes' => array(
+               '1' => array(
+                       'showitem' => 'starttime, endtime, extendToSubpages'
+               ),
+               '2' => array(
+                       'showitem' => 'layout, lastUpdated, newUntil, no_search'
+               ),
+               '3' => array(
+                       'showitem' => 'alias, target, no_cache, cache_timeout, cache_tags, url_scheme'
+               ),
+               '5' => array(
+                       'showitem' => 'author, author_email',
+                       'canNotCollapse' => 1
+               ),
+               '6' => array(
+                       'showitem' => 'php_tree_stop, editlock'
+               ),
+               '7' => array(
+                       'showitem' => 'is_siteroot'
+               ),
+               '8' => array(
+                       'showitem' => 'backend_layout_next_level'
+               ),
+               'standard' => array(
+                       'showitem' => 'doktype;LLL:EXT:cms/locallang_tca.xml:pages.doktype_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'shortcut' => array(
+                       'showitem' => 'doktype;LLL:EXT:cms/locallang_tca.xml:pages.doktype_formlabel, shortcut_mode;LLL:EXT:cms/locallang_tca.xml:pages.shortcut_mode_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'shortcutpage' => array(
+                       'showitem' => 'shortcut;LLL:EXT:cms/locallang_tca.xml:pages.shortcut_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'mountpoint' => array(
+                       'showitem' => 'doktype;LLL:EXT:cms/locallang_tca.xml:pages.doktype_formlabel, mount_pid_ol;LLL:EXT:cms/locallang_tca.xml:pages.mount_pid_ol_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'mountpage' => array(
+                       'showitem' => 'mount_pid;LLL:EXT:cms/locallang_tca.xml:pages.mount_pid_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'external' => array(
+                       'showitem' => 'doktype;LLL:EXT:cms/locallang_tca.xml:pages.doktype_formlabel, urltype;LLL:EXT:cms/locallang_tca.xml:pages.urltype_formlabel, url;LLL:EXT:cms/locallang_tca.xml:pages.url_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'title' => array(
+                       'showitem' => 'title;LLL:EXT:cms/locallang_tca.xml:pages.title_formlabel, --linebreak--, nav_title;LLL:EXT:cms/locallang_tca.xml:pages.nav_title_formlabel, --linebreak--, subtitle;LLL:EXT:cms/locallang_tca.xml:pages.subtitle_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'titleonly' => array(
+                       'showitem' => 'title;LLL:EXT:cms/locallang_tca.xml:pages.title_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'visibility' => array(
+                       'showitem' => 'hidden;LLL:EXT:cms/locallang_tca.xml:pages.hidden_formlabel, nav_hide;LLL:EXT:cms/locallang_tca.xml:pages.nav_hide_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'hiddenonly' => array(
+                       'showitem' => 'hidden;LLL:EXT:cms/locallang_tca.xml:pages.hidden_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'access' => array(
+                       'showitem' => 'starttime;LLL:EXT:cms/locallang_tca.xml:pages.starttime_formlabel, endtime;LLL:EXT:cms/locallang_tca.xml:pages.endtime_formlabel, extendToSubpages;LLL:EXT:cms/locallang_tca.xml:pages.extendToSubpages_formlabel, --linebreak--, fe_group;LLL:EXT:cms/locallang_tca.xml:pages.fe_group_formlabel, --linebreak--, fe_login_mode;LLL:EXT:cms/locallang_tca.xml:pages.fe_login_mode_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'abstract' => array(
+                       'showitem' => 'abstract;LLL:EXT:cms/locallang_tca.xml:pages.abstract_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'metatags' => array(
+                       'showitem' => 'keywords;LLL:EXT:cms/locallang_tca.xml:pages.keywords_formlabel, --linebreak--, description;LLL:EXT:cms/locallang_tca.xml:pages.description_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'editorial' => array(
+                       'showitem' => 'author;LLL:EXT:cms/locallang_tca.xml:pages.author_formlabel, author_email;LLL:EXT:cms/locallang_tca.xml:pages.author_email_formlabel, lastUpdated;LLL:EXT:cms/locallang_tca.xml:pages.lastUpdated_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'layout' => array(
+                       'showitem' => 'layout;LLL:EXT:cms/locallang_tca.xml:pages.layout_formlabel, newUntil;LLL:EXT:cms/locallang_tca.xml:pages.newUntil_formlabel, --linebreak--, backend_layout;LLL:EXT:cms/locallang_tca.xml:pages.backend_layout_formlabel, backend_layout_next_level;LLL:EXT:cms/locallang_tca.xml:pages.backend_layout_next_level_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'module' => array(
+                       'showitem' => 'module;LLL:EXT:cms/locallang_tca.xml:pages.module_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'replace' => array(
+                       'showitem' => 'content_from_pid;LLL:EXT:cms/locallang_tca.xml:pages.content_from_pid_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'links' => array(
+                       'showitem' => 'alias;LLL:EXT:cms/locallang_tca.xml:pages.alias_formlabel, --linebreak--, target;LLL:EXT:cms/locallang_tca.xml:pages.target_formlabel, --linebreak--, url_scheme;LLL:EXT:cms/locallang_tca.xml:pages.url_scheme_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'caching' => array(
+                       'showitem' => 'cache_timeout;LLL:EXT:cms/locallang_tca.xml:pages.cache_timeout_formlabel, cache_tags, no_cache;LLL:EXT:cms/locallang_tca.xml:pages.no_cache_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'language' => array(
+                       'showitem' => 'l18n_cfg;LLL:EXT:cms/locallang_tca.xml:pages.l18n_cfg_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'miscellaneous' => array(
+                       'showitem' => 'is_siteroot;LLL:EXT:cms/locallang_tca.xml:pages.is_siteroot_formlabel, no_search;LLL:EXT:cms/locallang_tca.xml:pages.no_search_formlabel, editlock;LLL:EXT:cms/locallang_tca.xml:pages.editlock_formlabel, php_tree_stop;LLL:EXT:cms/locallang_tca.xml:pages.php_tree_stop_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'adminsonly' => array(
+                       'showitem' => 'editlock;LLL:EXT:cms/locallang_tca.xml:pages.editlock_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'media' => array(
+                       'showitem' => 'media;LLL:EXT:cms/locallang_tca.xml:pages.media_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'storage' => array(
+                       'showitem' => 'storage_pid;LLL:EXT:cms/locallang_tca.xml:pages.storage_pid_formlabel',
+                       'canNotCollapse' => 1
+               ),
+               'config' => array(
+                       'showitem' => 'TSconfig;LLL:EXT:cms/locallang_tca.xml:pages.TSconfig_formlabel',
+                       'canNotCollapse' => 1
+               )
+       )
+);
+// if the compat version is less than 4.2, pagetype 2 ("Advanced")
+// and pagetype 5 ("Not in menu") are added to TCA.
+if (!\TYPO3\CMS\Core\Utility\GeneralUtility::compat_version('4.2')) {
+       // Merging in CMS doktypes
+       array_splice($TCA['pages']['columns']['doktype']['config']['items'], 2, 0, array(
+               array(
+                       'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.0',
+                       '2',
+                       'i/pages.gif'
+               ),
+               array(
+                       'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.3',
+                       '5',
+                       'i/pages_notinmenu.gif'
+               )
+       ));
+       // setting the doktype 1 ("Standard") to show less fields
+       $TCA['pages']['types'][1] = array(
+               // standard
+               'showitem' => 'doktype;;2;;1-1-1, hidden, nav_hide, title;;3;;2-2-2, subtitle,
+                       --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.access,
+                               starttime, endtime, fe_group, extendToSubpages,
+                       --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.options,
+                               TSconfig;;6;nowrap;4-4-4, storage_pid;;7, l18n_cfg, backend_layout;;8,
+                       --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.extended,
+       '
+       );
+       // adding doktype 2 ("Advanced")
+       $TCA['pages']['types'][2] = array(
+               'showitem' => 'doktype;;2;;1-1-1, hidden, nav_hide, title;;3;;2-2-2, subtitle, nav_title,
+                       --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.metadata,
+                               abstract;;5;;3-3-3, keywords, description,
+                       --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.files,
+                               media,
+                       --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.access,
+                               starttime, endtime, fe_login_mode, fe_group, extendToSubpages,
+                       --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.options,
+                               TSconfig;;6;nowrap;6-6-6, storage_pid;;7, l18n_cfg, module, content_from_pid, backend_layout;;8,
+                       --div--;LLL:EXT:cms/locallang_tca.xml:pages.tabs.extended,
+       '
+       );
+}
+// keep old code (pre-FAL) for installations that haven't upgraded yet. please remove this code in TYPO3 7.0
+// @deprecated since TYPO3 6.0, please remove at earliest in TYPO3 6.2
+// existing installation - and files are merged, nothing to do
+if ((!isset($GLOBALS['TYPO3_CONF_VARS']['INSTALL']['wizardDone']['TYPO3\\CMS\\Install\\Updates\\TceformsUpdateWizard']) || !\TYPO3\CMS\Core\Utility\GeneralUtility::inList($GLOBALS['TYPO3_CONF_VARS']['INSTALL']['wizardDone']['TYPO3\\CMS\\Install\\Updates\\TceformsUpdateWizard'], 'pages:media')) && !\TYPO3\CMS\Core\Utility\GeneralUtility::compat_version('6.0')) {
+       \TYPO3\CMS\Core\Utility\GeneralUtility::deprecationLog('This installation hasn\'t been migrated to FAL for the field $TCA[pages][columns][media] yet. Please do so before TYPO3 v7.');
+       // existing installation and no upgrade wizard was executed - and files haven't been merged: use the old code
+       $TCA['pages']['columns']['media']['config'] = array(
+               'type' => 'group',
+               'internal_type' => 'file',
+               'allowed' => $GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext'] . ',html,htm,ttf,txt,css',
+               'max_size' => $GLOBALS['TYPO3_CONF_VARS']['BE']['maxFileSize'],
+               'uploadfolder' => 'uploads/media',
+               'show_thumbs' => '1',
+               'size' => '3',
+               'maxitems' => '100',
+               'minitems' => '0'
+       );
+}
+?>
\ No newline at end of file
diff --git a/t3lib/stddb/tca_sys_category.php b/t3lib/stddb/tca_sys_category.php
new file mode 100644 (file)
index 0000000..5f50637
--- /dev/null
@@ -0,0 +1,145 @@
+<?php
+if (!defined('TYPO3_MODE')) {
+       die('Access denied.');
+}
+$TCA['sys_category'] = array(
+       'ctrl' => $TCA['sys_category']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'title,description'
+       ),
+       'types' => array(
+               '1' => array('showitem' => 'title;;1, parent,description,--div--;LLL:EXT:lang/locallang_tca.xlf:sys_category.tabs.items,items,--div--;LLL:EXT:cms/locallang_ttc.xlf:tabs.access,starttime, endtime')
+       ),
+       'palettes' => array(
+               '1' => array('showitem' => 'sys_language_uid, l10n_parent, hidden')
+       ),
+       'columns' => array(
+               't3ver_label' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.versionLabel',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'max' => '30'
+                       )
+               ),
+               'sys_language_uid' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.language',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'sys_language',
+                               'foreign_table_where' => 'ORDER BY sys_language.title',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_general.php:LGL.allLanguages', -1),
+                                       array('LLL:EXT:lang/locallang_general.php:LGL.default_value', 0)
+                               )
+                       )
+               ),
+               'l10n_parent' => array(
+                       'displayCond' => 'FIELD:sys_language_uid:>:0',
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.l18n_parent',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('', 0)
+                               ),
+                               'foreign_table' => 'sys_category',
+                               'foreign_table_where' => 'AND sys_category.uid=###REC_FIELD_l10n_parent### AND sys_category.sys_language_uid IN (-1,0)'
+                       )
+               ),
+               'l10n_diffsource' => array(
+                       'config' => array(
+                               'type' => 'passthrough'
+                       )
+               ),
+               't3ver_label' => array(
+                       'displayCond' => 'FIELD:t3ver_label:REQ:true',
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.versionLabel',
+                       'config' => array(
+                               'type' => 'none',
+                               'cols' => 27
+                       )
+               ),
+               'hidden' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.hidden',
+                       'config' => array(
+                               'type' => 'check'
+                       )
+               ),
+               'starttime' => array(
+                       'exclude' => 1,
+                       'l10n_mode' => 'mergeIfNotBlank',
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.starttime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '10',
+                               'max' => '20',
+                               'eval' => 'datetime',
+                               'checkbox' => '0',
+                               'default' => '0'
+                       )
+               ),
+               'endtime' => array(
+                       'exclude' => 1,
+                       'l10n_mode' => 'mergeIfNotBlank',
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.endtime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '8',
+                               'max' => '20',
+                               'eval' => 'datetime',
+                               'checkbox' => '0',
+                               'default' => '0',
+                               'range' => array(
+                                       'upper' => mktime(0, 0, 0, 12, 31, date('Y') + 10),
+                                       'lower' => mktime(0, 0, 0, date('m') - 1, date('d'), date('Y'))
+                               )
+                       )
+               ),
+               'title' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_category.title',
+                       'config' => array(
+                               'type' => 'input',
+                               'width' => '200',
+                               'eval' => 'trim,required'
+                       )
+               ),
+               'description' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_category.description',
+                       'config' => array(
+                               'type' => 'text'
+                       )
+               ),
+               'parent' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_category.parent',
+                       'config' => array(
+                               'minitems' => 0,
+                               'maxitems' => 1,
+                               'type' => 'select',
+                               'renderMode' => 'tree',
+                               'foreign_table' => 'sys_category',
+                               'foreign_table_where' => ' ORDER BY sys_category.title ASC',
+                               'treeConfig' => array(
+                                       'parentField' => 'parent'
+                               )
+                       )
+               ),
+               'items' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_category.items',
+                       'config' => array(
+                               'type' => 'group',
+                               'internal_type' => 'db',
+                               'allowed' => '*',
+                               'MM' => 'sys_category_record_mm',
+                               'show_thumbs' => FALSE
+                       )
+               )
+       )
+);
+?>
\ No newline at end of file
diff --git a/t3lib/stddb/tca_sys_file.php b/t3lib/stddb/tca_sys_file.php
new file mode 100644 (file)
index 0000000..19c3a58
--- /dev/null
@@ -0,0 +1,142 @@
+<?php
+if (!defined('TYPO3_MODE')) {
+       die('Access denied.');
+}
+$TCA['sys_file'] = array(
+       'ctrl' => $TCA['sys_file']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'storage, name, description, alternative, type, mime_type, size, sha1'
+       ),
+       'feInterface' => $TCA['sys_file']['feInterface'],
+       'columns' => array(
+               't3ver_label' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.versionLabel',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'max' => '30'
+                       )
+               ),
+               'fileinfo' => array(
+                       'config' => array(
+                               'type' => 'user',
+                               'userFunc' => 'typo3/sysext/core/Classes/Resource/Hook/FileInfoHook.php:TYPO3\CMS\Core\Resource\Hook\FileInfoHook->renderFileInfo'
+                       )
+               ),
+               'storage' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file.storage',
+                       'config' => array(
+                               'readOnly' => 1,
+                               'type' => 'select',
+                               'items' => array(
+                                       array('', 0)
+                               ),
+                               'foreign_table' => 'sys_file_storage',
+                               'foreign_table_where' => 'ORDER BY sys_file_storage.name',
+                               'size' => 1,
+                               'minitems' => 0,
+                               'maxitems' => 1
+                       )
+               ),
+               'identifier' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file.identifier',
+                       'config' => array(
+                               'readOnly' => 1,
+                               'type' => 'input',
+                               'size' => '30'
+                       )
+               ),
+               'name' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file.name',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'eval' => 'required',
+                               'readOnly' => TRUE
+                       )
+               ),
+               'title' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file.title',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'placeholder' => '__row|name'
+                       )
+               ),
+               'description' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file.description',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '40',
+                               'rows' => '3'
+                       )
+               ),
+               'alternative' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file.alternative',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '40',
+                               'rows' => '3'
+                       )
+               ),
+               'type' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file.type',
+                       'config' => array(
+                               'readOnly' => 1,
+                               'type' => 'select',
+                               'size' => '1',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_tca.xlf:sys_file.type.unknown', 0),
+                                       array('LLL:EXT:lang/locallang_tca.xlf:sys_file.type.text', 1),
+                                       array('LLL:EXT:lang/locallang_tca.xlf:sys_file.type.image', 2),
+                                       array('LLL:EXT:lang/locallang_tca.xlf:sys_file.type.audio', 3),
+                                       array('LLL:EXT:lang/locallang_tca.xlf:sys_file.type.video', 4),
+                                       array('LLL:EXT:lang/locallang_tca.xlf:sys_file.type.software', 5)
+                               )
+                       )
+               ),
+               'mime_type' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file.mime_type',
+                       'config' => array(
+                               'readOnly' => 1,
+                               'type' => 'input',
+                               'size' => '30'
+                       )
+               ),
+               'sha1' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file.sha1',
+                       'config' => array(
+                               'readOnly' => 1,
+                               'type' => 'input',
+                               'size' => '30',
+                               'readOnly' => 1
+                       )
+               ),
+               'size' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file.size',
+                       'config' => array(
+                               'readOnly' => 1,
+                               'type' => 'input',
+                               'size' => '8',
+                               'max' => '30',
+                               'eval' => 'int',
+                               'default' => 0
+                       )
+               )
+       ),
+       'types' => array(
+               '1' => array('showitem' => 'fileinfo, name, title, description, alternative, storage')
+       ),
+       'palettes' => array()
+);
+?>
\ No newline at end of file
diff --git a/t3lib/stddb/tca_sys_file_collection.php b/t3lib/stddb/tca_sys_file_collection.php
new file mode 100644 (file)
index 0000000..4283540
--- /dev/null
@@ -0,0 +1,146 @@
+<?php
+if (!defined('TYPO3_MODE')) {
+       die('Access denied.');
+}
+$TCA['sys_file_collection'] = array(
+       'ctrl' => $TCA['sys_file_collection']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'sys_language_uid,l10n_parent,l10n_diffsource,hidden,starttime,endtime,files,title'
+       ),
+       'feInterface' => $TCA['sys_file_collection']['feInterface'],
+       'columns' => array(
+               't3ver_label' => array(
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.versionLabel',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'max' => '30'
+                       )
+               ),
+               'sys_language_uid' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.language',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'sys_language',
+                               'foreign_table_where' => 'ORDER BY sys_language.title',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_general.xml:LGL.allLanguages', -1),
+                                       array('LLL:EXT:lang/locallang_general.xml:LGL.default_value', 0)
+                               )
+                       )
+               ),
+               'l10n_parent' => array(
+                       'displayCond' => 'FIELD:sys_language_uid:>:0',
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.l18n_parent',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('', 0)
+                               ),
+                               'foreign_table' => 'sys_file_collection',
+                               'foreign_table_where' => 'AND sys_file_collection.pid=###CURRENT_PID### AND sys_file_collection.sys_language_uid IN (-1,0)'
+                       )
+               ),
+               'l10n_diffsource' => array(
+                       'config' => array(
+                               'type' => 'passthrough'
+                       )
+               ),
+               'hidden' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.hidden',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => '0'
+                       )
+               ),
+               'starttime' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '8',
+                               'max' => '20',
+                               'eval' => 'date',
+                               'default' => '0',
+                               'checkbox' => '0'
+                       )
+               ),
+               'endtime' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '8',
+                               'max' => '20',
+                               'eval' => 'date',
+                               'checkbox' => '0',
+                               'default' => '0',
+                               'range' => array(
+                                       'upper' => mktime(3, 14, 7, 1, 19, 2038),
+                                       'lower' => mktime(0, 0, 0, date('m') - 1, date('d'), date('Y'))
+                               )
+                       )
+               ),
+               'type' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_collection.type',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('Static selection of files', 'static'),
+                                       array('Folder from Storage', 'folder')
+                               )
+                       )
+               ),
+               'files' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_collection.files',
+                       'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig('files')
+               ),
+               'title' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_collection.title',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'eval' => 'required'
+                       )
+               ),
+               'storage' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_collection.storage',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('', 0)
+                               ),
+                               'foreign_table' => 'sys_file_storage',
+                               'foreign_table_where' => 'ORDER BY sys_file_storage.name',
+                               'size' => 1,
+                               'minitems' => 0,
+                               'maxitems' => 1
+                       )
+               ),
+               'folder' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_collection.folder',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(),
+                               'itemsProcFunc' => 'typo3/sysext/core/Classes/Resource/Service/UserFileMountService.php:TYPO3\CMS\Core\Resource\Service\UserFileMountService->renderTceformsSelectDropdown',
+                       )
+               )
+       ),
+       'types' => array(
+               '0' => array('showitem' => 'sys_language_uid;;;;1-1-1, l10n_parent, l10n_diffsource, title;;1, type, files'),
+               'static' => array('showitem' => 'sys_language_uid;;;;1-1-1, l10n_parent, l10n_diffsource, title;;1, type, files'),
+               'folder' => array('showitem' => 'sys_language_uid;;;;1-1-1, l10n_parent, l10n_diffsource, title;;1, type, storage, folder')
+       ),
+       'palettes' => array(
+               '1' => array('showitem' => 'hidden, starttime, endtime')
+       )
+);
+?>
\ No newline at end of file
diff --git a/t3lib/stddb/tca_sys_file_reference.php b/t3lib/stddb/tca_sys_file_reference.php
new file mode 100644 (file)
index 0000000..d5d8c7d
--- /dev/null
@@ -0,0 +1,240 @@
+<?php
+if (!defined('TYPO3_MODE')) {
+       die('Access denied.');
+}
+$TCA['sys_file_reference'] = array(
+       'ctrl' => $TCA['sys_file_reference']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'hidden,uid_local,uid_foreign,tablenames,fieldname,sorting_foreign,table_local,title,description'
+       ),
+       'feInterface' => $TCA['sys_file_reference']['feInterface'],
+       'columns' => array(
+               't3ver_label' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.versionLabel',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'max' => '30'
+                       )
+               ),
+               'sys_language_uid' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.language',
+                       'config' => array(
+                               'type' => 'select',
+                               'foreign_table' => 'sys_language',
+                               'foreign_table_where' => 'ORDER BY sys_language.title',
+                               'items' => array(
+                                       array('LLL:EXT:lang/locallang_general.php:LGL.allLanguages', -1),
+                                       array('LLL:EXT:lang/locallang_general.php:LGL.default_value', 0)
+                               )
+                       )
+               ),
+               'l10n_parent' => array(
+                       'displayCond' => 'FIELD:sys_language_uid:>:0',
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.l18n_parent',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('', 0)
+                               ),
+                               'foreign_table' => 'sys_file_reference',
+                               'foreign_table_where' => 'AND sys_file_reference.uid=###REC_FIELD_l10n_parent### AND sys_file_reference.sys_language_uid IN (-1,0)'
+                       )
+               ),
+               'l10n_diffsource' => array(
+                       'exclude' => 0,
+                       'config' => array(
+                               'type' => 'passthrough'
+                       )
+               ),
+               'hidden' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.hidden',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => '0'
+                       )
+               ),
+               'uid_local' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.uid_local',
+                       'config' => array(
+                               'type' => 'group',
+                               'internal_type' => 'db',
+                               'size' => 1,
+                               'maxitems' => 1,
+                               'minitems' => 0,
+                               'allowed' => 'sys_file'
+                       )
+               ),
+               'uid_foreign' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.uid_foreign',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(
+                                       array('', 0)
+                               ),
+                               'foreign_table' => 'tt_content',
+                               'foreign_table_where' => 'ORDER BY tt_content.uid',
+                               'size' => 1,
+                               'minitems' => 0,
+                               'maxitems' => 1
+                       )
+               ),
+               'tablenames' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.tablenames',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'eval' => 'trim'
+                       )
+               ),
+               'fieldname' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.fieldname',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30'
+                       )
+               ),
+               'sorting_foreign' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.sorting_foreign',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '4',
+                               'max' => '4',
+                               'eval' => 'int',
+                               'checkbox' => '0',
+                               'range' => array(
+                                       'upper' => '1000',
+                                       'lower' => '10'
+                               ),
+                               'default' => 0
+                       )
+               ),
+               'table_local' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.table_local',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '20',
+                               'default' => 'sys_file'
+                       )
+               ),
+               'title' => array(
+                       'l10n_mode' => 'mergeIfNotBlank',
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.title',
+                       'config' => array(
+                               'type' => 'input',
+                               'eval' => 'null',
+                               'size' => '20',
+                               'placeholder' => '__row|uid_local|title',
+                       )
+               ),
+               'link' => array(
+                       'l10n_mode' => 'mergeIfNotBlank',
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.link',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '20',
+                               'wizards' => array(
+                                       '_PADDING' => 2,
+                                       'link' => array(
+                                               'type' => 'popup',
+                                               'title' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.link',
+                                               'icon' => 'link_popup.gif',
+                                               'script' => 'browse_links.php?mode=wizard',
+                                               'JSopenParams' => 'height=300,width=500,status=0,menubar=0,scrollbars=1'
+                                       )
+                               )
+                       )
+               ),
+               'description' => array(
+                       // This is used for captions in the frontend
+                       'l10n_mode' => 'mergeIfNotBlank',
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.description',
+                       'config' => array(
+                               'type' => 'text',
+                               'eval' => 'null',
+                               'cols' => '20',
+                               'rows' => '5',
+                               'placeholder' => '__row|uid_local|description',
+                       )
+               ),
+               'alternative' => array(
+                       'l10n_mode' => 'mergeIfNotBlank',
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.alternative',
+                       'config' => array(
+                               'type' => 'input',
+                               'eval' => 'null',
+                               'size' => '20',
+                               'placeholder' => '__row|uid_local|alternative',
+                       ),
+               ),
+       ),
+       'types' => array(
+               // Note that at the moment we define the same fields for every media type.
+               // We leave the extensive definition of each type here anyway, to make clear that you can use it to differentiate between the types.
+               '0' => array(
+                       'showitem' => '
+                               --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.basicoverlayPalette;basicoverlayPalette,
+                               --palette--;;filePalette'
+               ),
+               \TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => array(
+                       'showitem' => '
+                               --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.basicoverlayPalette;basicoverlayPalette,
+                               --palette--;;filePalette'
+               ),
+               \TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => array(
+                       'showitem' => '
+                               --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.basicoverlayPalette;basicoverlayPalette,
+                               --palette--;;filePalette'
+               ),
+               \TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => array(
+                       'showitem' => '
+                               --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.basicoverlayPalette;basicoverlayPalette,
+                               --palette--;;filePalette'
+               ),
+               \TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => array(
+                       'showitem' => '
+                               --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.basicoverlayPalette;basicoverlayPalette,
+                               --palette--;;filePalette'
+               ),
+               \TYPO3\CMS\Core\Resource\File::FILETYPE_SOFTWARE => array(
+                       'showitem' => '
+                               --palette--;LLL:EXT:lang/locallang_tca.xlf:sys_file_reference.basicoverlayPalette;basicoverlayPalette,
+                               --palette--;;filePalette'
+               )
+       ),
+       'palettes' => array(
+               // used for basic overlays: having a file list etc
+               'basicoverlayPalette' => array(
+                       'showitem' => 'title,description',
+                       'canNotCollapse' => TRUE
+               ),
+               // used for everything that is an image (because it has a link and a alternative text)
+               'imageoverlayPalette' => array(
+                       'showitem' => '
+                               title,alternative;;;;3-3-3,--linebreak--,
+                               link,description
+                               ',
+                       'canNotCollapse' => TRUE
+               ),
+               // file palette, hidden but needs to be included all the time
+               'filePalette' => array(
+                       'showitem' => 'uid_local, hidden, sys_language_uid, l10n_parent',
+                       'isHiddenPalette' => TRUE
+               )
+       )
+);
+?>
\ No newline at end of file
diff --git a/t3lib/stddb/tca_sys_file_storage.php b/t3lib/stddb/tca_sys_file_storage.php
new file mode 100644 (file)
index 0000000..ddbbb8b
--- /dev/null
@@ -0,0 +1,114 @@
+<?php
+if (!defined('TYPO3_MODE')) {
+       die('Access denied.');
+}
+/**
+ * File storages
+ */
+$TCA['sys_file_storage'] = array(
+       'ctrl' => $TCA['sys_file_storage']['ctrl'],
+       'interface' => array(
+               'showRecordFieldList' => 'hidden,name,description,driver,processingfolder,configuration'
+       ),
+       'feInterface' => $TCA['sys_file_storage']['feInterface'],
+       'columns' => array(
+               'hidden' => array(
+                       'exclude' => 1,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage.hidden',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => '0'
+                       )
+               ),
+               'name' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage.name',
+                       'config' => array(
+                               'type' => 'input',
+                               'size' => '30',
+                               'eval' => 'required'
+                       )
+               ),
+               'description' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage.description',
+                       'config' => array(
+                               'type' => 'text',
+                               'cols' => '30',
+                               'rows' => '5'
+                       )
+               ),
+               'is_browsable' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage.is_browsable',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => 1
+                       )
+               ),
+               'is_public' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage.is_public',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => 1
+                       )
+               ),
+               'is_writable' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage.is_writable',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => 1
+                       )
+               ),
+               'is_online' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage.is_online',
+                       'config' => array(
+                               'type' => 'check',
+                               'default' => 1
+                       )
+               ),
+               'processingfolder' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage.processingfolder',
+                       'config' => array(
+                               'type' => 'input',
+                               'placeholder' => \TYPO3\CMS\Core\Resource\ResourceStorage::DEFAULT_ProcessingFolder,
+                               'size' => '20'
+                       )
+               ),
+               'driver' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage.driver',
+                       'config' => array(
+                               'type' => 'select',
+                               'items' => array(),
+                               'default' => ''
+                       )
+               ),
+               'configuration' => array(
+                       'exclude' => 0,
+                       'label' => 'LLL:EXT:lang/locallang_tca.xlf:sys_file_storage.configuration',
+                       'config' => array(
+                               'type' => 'flex',
+                               'ds_pointerField' => 'driver',
+                               'ds' => array()
+                       ),
+                       'displayCond' => 'REC:NEW:false'
+               )
+       ),
+       'types' => array(
+               '0' => array('showitem' => 'name, description, hidden, --div--;Configuration, driver, configuration, processingfolder, --div--;Access, --palette--;Capabilities;capabilities, is_online')
+       ),
+       'palettes' => array(
+               'capabilities' => array('showitem' => 'is_browsable, is_public, is_writable', 'canNotCollapse' => TRUE)
+       )
+);
+/**
+ * @var \TYPO3\CMS\Core\Resource\Driver\DriverRegistry $registry
+ */
+$registry = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Resource\\Driver\\DriverRegistry');
+$registry->addDriversToTCA();
+?>
\ No newline at end of file
index 156e56c..f3272ad 100644 (file)
@@ -43,6 +43,8 @@
  * - extracts and defines path's
  * - includes certain libraries
  * - authenticates the user
+ * - sets the configuration values (localconf.php)
+ * - includes tables.php that sets more values and possibly overrides others
  * - load the groupdata for the user and set filemounts / webmounts
  *
  * For a detailed description of this script, the scope of constants and variables in it,
index 9e2a898..f0ea614 100644 (file)
@@ -705,7 +705,7 @@ class IconUtility {
         * statuses, used for overlays.
         * You should not use this directly besides if you need classes for ExtJS iconCls.
         *
-        * see ext:core/Configuration/TCA/Pages.php for an example with the TCA table "pages"
+        * see t3lib/stddb/tables.php for an example with the TCA table "pages"
         *
         * @param string $table The TCA table
         * @param array $row The selected record
@@ -727,7 +727,7 @@ class IconUtility {
         * statuses, used for overlays.
         * You should not use this directly besides if you need it in tceforms/core classes
         *
-        * see ext:core/Configuration/TCA/Pages.php for an example with the TCA table "pages"
+        * see t3lib/stddb/tables.php for an example with the TCA table "pages"
         *
         * @param string $tableThe TCA table
         * @param array $row The selected record
@@ -810,7 +810,7 @@ class IconUtility {
         * We wanted to not have these icons blown over by tons of overlays, so this is limited
         * to just one.
         *
-        * see ext:core/Configuration/DefaultConfiguration.php for the default options, you will find
+        * see t3lib/stddb/DefaultSettings for the default options, you will find
         * $GLOBALS['TYPO3_CONF_VARS']['BE']['spriteIconRecordOverlayNames'] that shows
         * the list of CSS classes that will be used for the sprites, mapped to the statuses here
         *
index b137624..b6f7a6f 100644 (file)
@@ -625,7 +625,7 @@ class Bootstrap {
 
        /**
         * Unsetting reserved global variables:
-        * Those which are/can be set in "ext:core/ext_tables.php" file:
+        * Those which are/can be set in "stddb/tables.php" files:
         *
         * @return \TYPO3\CMS\Core\Core\Bootstrap
         */
@@ -791,6 +791,9 @@ class Bootstrap {
                global $TBE_MODULES, $TBE_MODULES_EXT, $TCA;
                global $PAGES_TYPES, $TBE_STYLES, $FILEICONS;
                global $_EXTKEY;
+               // Include standard tables.php file
+               require PATH_t3lib . 'stddb/tables.php';
+               \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::loadNewTcaColumnsConfigFiles();
                \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::loadExtTables($allowCaching);
                // Load additional ext tables script if the file exists
                $extTablesFile = PATH_typo3conf . TYPO3_extTableDef_script;
index 3e146ff..2ca6f88 100644 (file)
@@ -1720,6 +1720,9 @@ tt_content.' . $key . $prefix . ' {
                                if ($columnsConfigFile) {
                                        if (GeneralUtility::isAbsPath($columnsConfigFile)) {
                                                include($columnsConfigFile);
+                                       } elseif (strpos($columnsConfigFile, 'T3LIB:') === 0) {
+                                               // Resolve T3LIB prefix, internal core use only.
+                                               include(PATH_t3lib . 'stddb/' . substr($columnsConfigFile, 6));
                                        } else {
                                                throw new \RuntimeException(
                                                        'Columns configuration file not found',
diff --git a/typo3/sysext/core/Configuration/TCA/BeGroups.php b/typo3/sysext/core/Configuration/TCA/BeGroups.php
deleted file mode 100644 (file)
index 201c749..0000000
+++ /dev/null
@@ -1,301 +0,0 @@
-<?php
-return array(
-       'ctrl' => array(
-               'label' => 'title',
-               'tstamp' => 'tstamp',
-               'crdate' => 'crdate',
-               'cruser_id' => 'cruser_id',
-               'delete' => 'deleted',
-               'default_sortby' => 'ORDER BY title',
-               'prependAtCopy' => 'LLL:EXT:lang/locallang_general.php:LGL.prependAtCopy',
-               'adminOnly' => 1,
-               'rootLevel' => 1,
-               'type' => 'inc_access_lists',
-               'typeicon_column' => 'inc_access_lists',
-               'typeicons' => array(
-                       '1' => 'be_groups_lists.gif'
-               ),
-               'typeicon_classes' => array(
-                       'default' => 'status-user-group-backend'
-               ),
-               'enablecolumns' => array(
-                       'disabled' => 'hidden'
-               ),
-               'title' => 'LLL:EXT:lang/locallang_tca.php:be_groups',
-               'useColumnsForDefaultValues' => 'lockToDomain, fileoper_perms',
-               'dividers2tabs' => TRUE,
-               'versioningWS_alwaysAllowLiveEdit' => TRUE,
-               'searchFields' => 'title'
-       ),
-       'interface' => array(
-               'showRecordFieldList' => 'title, db_mountpoints, file_mountpoints, fileoper_perms, inc_access_lists, tables_select, tables_modify, pagetypes_select, non_exclude_fields, groupMods, lockToDomain, description'
-       ),
-       'columns' => array(
-               'title' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.title',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '25',
-                               'max' => '50',
-                               'eval' => 'trim,required'
-                       )
-               ),
-               'db_mountpoints' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:db_mountpoints',
-                       'config' => array(
-                               'type' => 'group',
-                               'internal_type' => 'db',
-                               'allowed' => 'pages',
-                               'size' => '3',
-                               'maxitems' => 25,
-                               'autoSizeMax' => 10,
-                               'show_thumbs' => '1',
-                               'wizards' => array(
-                                       'suggest' => array(
-                                               'type' => 'suggest'
-                                       )
-                               )
-                       )
-               ),
-               'file_mountpoints' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints',
-                       'config' => array(
-                               'type' => 'select',
-                               'foreign_table' => 'sys_filemounts',
-                               'foreign_table_where' => ' AND sys_filemounts.pid=0 ORDER BY sys_filemounts.title',
-                               'size' => '3',
-                               'maxitems' => 25,
-                               'autoSizeMax' => 10,
-                               'iconsInOptionTags' => 1,
-                               'wizards' => array(
-                                       '_PADDING' => 1,
-                                       '_VERTICAL' => 1,
-                                       'edit' => array(
-                                               'type' => 'popup',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_edit_title',
-                                               'script' => 'wizard_edit.php',
-                                               'popup_onlyOpenIfSelected' => 1,
-                                               'icon' => 'edit2.gif',
-                                               'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1'
-                                       ),
-                                       'add' => array(
-                                               'type' => 'script',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_add_title',
-                                               'icon' => 'add.gif',
-                                               'params' => array(
-                                                       'table' => 'sys_filemounts',
-                                                       'pid' => '0',
-                                                       'setValue' => 'prepend'
-                                               ),
-                                               'script' => 'wizard_add.php'
-                                       ),
-                                       'list' => array(
-                                               'type' => 'script',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_list_title',
-                                               'icon' => 'list.gif',
-                                               'params' => array(
-                                                       'table' => 'sys_filemounts',
-                                                       'pid' => '0'
-                                               ),
-                                               'script' => 'wizard_list.php'
-                                       )
-                               )
-                       )
-               ),
-               'fileoper_perms' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms',
-                       'config' => array(
-                               'type' => 'check',
-                               'items' => array(
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_general', 0),
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_unzip', 0),
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms', 0),
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms_copy', 0),
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_groups.fileoper_perms_diroper_perms_delete', 0)
-                               ),
-                               'default' => '7'
-                       )
-               ),
-               'workspace_perms' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:workspace_perms',
-                       'config' => array(
-                               'type' => 'check',
-                               'items' => array(
-                                       array('LLL:EXT:lang/locallang_tca.xml:workspace_perms_live', 0)
-                               ),
-                               'default' => 0
-                       )
-               ),
-               'pagetypes_select' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.pagetypes_select',
-                       'config' => array(
-                               'type' => 'select',
-                               'special' => 'pagetypes',
-                               'size' => '5',
-                               'autoSizeMax' => 50,
-                               'maxitems' => 20,
-                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
-                               'iconsInOptionTags' => 1
-                       )
-               ),
-               'tables_modify' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.tables_modify',
-                       'config' => array(
-                               'type' => 'select',
-                               'special' => 'tables',
-                               'size' => '5',
-                               'autoSizeMax' => 50,
-                               'maxitems' => 100,
-                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
-                               'iconsInOptionTags' => 1
-                       )
-               ),
-               'tables_select' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.tables_select',
-                       'config' => array(
-                               'type' => 'select',
-                               'special' => 'tables',
-                               'size' => '5',
-                               'autoSizeMax' => 50,
-                               'maxitems' => 100,
-                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
-                               'iconsInOptionTags' => 1
-                       )
-               ),
-               'non_exclude_fields' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.non_exclude_fields',
-                       'config' => array(
-                               'type' => 'select',
-                               'special' => 'exclude',
-                               'size' => '25',
-                               'maxitems' => 1000,
-                               'autoSizeMax' => 50,
-                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
-                               'itemListStyle' => 'width:500px'
-                       )
-               ),
-               'explicit_allowdeny' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.explicit_allowdeny',
-                       'config' => array(
-                               'type' => 'select',
-                               'special' => 'explicitValues',
-                               'maxitems' => 1000,
-                               'renderMode' => 'checkbox'
-                       )
-               ),
-               'allowed_languages' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:allowed_languages',
-                       'config' => array(
-                               'type' => 'select',
-                               'special' => 'languages',
-                               'maxitems' => 1000,
-                               'renderMode' => 'checkbox'
-                       )
-               ),
-               'custom_options' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.custom_options',
-                       'config' => array(
-                               'type' => 'select',
-                               'special' => 'custom',
-                               'maxitems' => 1000,
-                               'renderMode' => 'checkbox'
-                       )
-               ),
-               'hidden' => array(
-                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
-                       'config' => array(
-                               'type' => 'check',
-                               'default' => '0'
-                       )
-               ),
-               'lockToDomain' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:lockToDomain',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '20',
-                               'eval' => 'trim',
-                               'max' => '50',
-                               'softref' => 'substitute'
-                       )
-               ),
-               'groupMods' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:userMods',
-                       'config' => array(
-                               'type' => 'select',
-                               'special' => 'modListGroup',
-                               'size' => '5',
-                               'autoSizeMax' => 50,
-                               'maxitems' => 100,
-                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
-                               'iconsInOptionTags' => 1
-                       )
-               ),
-               'inc_access_lists' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.inc_access_lists',
-                       'config' => array(
-                               'type' => 'check',
-                               'default' => '0'
-                       )
-               ),
-               'description' => array(
-                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.description',
-                       'config' => array(
-                               'type' => 'text',
-                               'rows' => 5,
-                               'cols' => 30
-                       )
-               ),
-               'TSconfig' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig',
-                       'config' => array(
-                               'type' => 'text',
-                               'cols' => '40',
-                               'rows' => '5',
-                               'wizards' => array(
-                                       '_PADDING' => 4,
-                                       '0' => array(
-                                               'type' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('tsconfig_help') ? 'popup' : '',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig_title',
-                                               'script' => 'wizard_tsconfig.php?mode=beuser',
-                                               'icon' => 'wizard_tsconfig.gif',
-                                               'JSopenParams' => 'height=500,width=780,status=0,menubar=0,scrollbars=1'
-                                       )
-                               ),
-                               'softref' => 'TSconfig'
-                       ),
-                       'defaultExtras' => 'fixed-font : enable-tab'
-               ),
-               'hide_in_lists' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.hide_in_lists',
-                       'config' => array(
-                               'type' => 'check',
-                               'default' => 0
-                       )
-               ),
-               'subgroup' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_groups.subgroup',
-                       'config' => array(
-                               'type' => 'select',
-                               'foreign_table' => 'be_groups',
-                               'foreign_table_where' => 'AND NOT(be_groups.uid = ###THIS_UID###) AND be_groups.hidden=0 ORDER BY be_groups.title',
-                               'size' => '5',
-                               'autoSizeMax' => 50,
-                               'maxitems' => 20,
-                               'iconsInOptionTags' => 1
-                       )
-               )
-       ),
-       'types' => array(
-               '0' => array('showitem' => 'hidden;;;;1-1-1, title;;;;2-2-2, description, subgroup;;;;3-3-3,
-                       --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.base_rights, inc_access_lists;;;;1-1-1,
-                       --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,
-                       --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,
-                       --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.extended'),
-               '1' => array('showitem' => 'hidden;;;;1-1-1, title;;;;2-2-2, description, subgroup;;;;3-3-3,
-                       --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,
-                       --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,
-                       --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,
-                       --div--;LLL:EXT:lang/locallang_tca.xml:be_groups.tabs.extended')
-       )
-);
-?>
\ No newline at end of file
diff --git a/typo3/sysext/core/Configuration/TCA/BeUsers.php b/typo3/sysext/core/Configuration/TCA/BeUsers.php
deleted file mode 100644 (file)
index 765813f..0000000
+++ /dev/null
@@ -1,348 +0,0 @@
-<?php
-return array(
-       'ctrl' => array(
-               'label' => 'username',
-               'tstamp' => 'tstamp',
-               'title' => 'LLL:EXT:lang/locallang_tca.php:be_users',
-               'crdate' => 'crdate',
-               'cruser_id' => 'cruser_id',
-               'delete' => 'deleted',
-               'adminOnly' => 1, // Only admin users can edit
-               'rootLevel' => 1,
-               'default_sortby' => 'ORDER BY admin, username',
-               'enablecolumns' => array(
-                       'disabled' => 'disable',
-                       'starttime' => 'starttime',
-                       'endtime' => 'endtime'
-               ),
-               'type' => 'admin',
-               'typeicon_column' => 'admin',
-               'typeicons' => array(
-                       '0' => 'be_users.gif',
-                       '1' => 'be_users_admin.gif'
-               ),
-               'typeicon_classes' => array(
-                       '0' => 'status-user-backend',
-                       '1' => 'status-user-admin',
-                       'default' => 'status-user-backend'
-               ),
-               'mainpalette' => '1',
-               'useColumnsForDefaultValues' => 'usergroup,lockToDomain,options,db_mountpoints,file_mountpoints,fileoper_perms,userMods',
-               'dividers2tabs' => TRUE,
-               'versioningWS_alwaysAllowLiveEdit' => TRUE,
-               'searchFields' => 'username,email,realName'
-       ),
-       'interface' => array(
-               'showRecordFieldList' => 'username,usergroup,db_mountpoints,file_mountpoints,admin,options,fileoper_perms,userMods,lockToDomain,realName,email,disable,starttime,endtime,lastlogin'
-       ),
-       'columns' => array(
-               'username' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.username',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '20',
-                               'max' => '50',
-                               'eval' => 'nospace,lower,unique,required'
-                       )
-               ),
-               'password' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.password',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '20',
-                               'max' => '40',
-                               'eval' => 'required,md5,password'
-                       )
-               ),
-               'usergroup' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup',
-                       'config' => array(
-                               'type' => 'select',
-                               'foreign_table' => 'be_groups',
-                               'foreign_table_where' => 'ORDER BY be_groups.title',
-                               'size' => '5',
-                               'maxitems' => '20',
-                               'iconsInOptionTags' => 1,
-                               'wizards' => array(
-                                       '_PADDING' => 1,
-                                       '_VERTICAL' => 1,
-                                       'edit' => array(
-                                               'type' => 'popup',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_edit_title',
-                                               'script' => 'wizard_edit.php',
-                                               'popup_onlyOpenIfSelected' => 1,
-                                               'icon' => 'edit2.gif',
-                                               'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1'
-                                       ),
-                                       'add' => array(
-                                               'type' => 'script',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_add_title',
-                                               'icon' => 'add.gif',
-                                               'params' => array(
-                                                       'table' => 'be_groups',
-                                                       'pid' => '0',
-                                                       'setValue' => 'prepend'
-                                               ),
-                                               'script' => 'wizard_add.php'
-                                       ),
-                                       'list' => array(
-                                               'type' => 'script',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:be_users.usergroup_list_title',
-                                               'icon' => 'list.gif',
-                                               'params' => array(
-                                                       'table' => 'be_groups',
-                                                       'pid' => '0'
-                                               ),
-                                               'script' => 'wizard_list.php'
-                                       )
-                               )
-                       )
-               ),
-               'lockToDomain' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:lockToDomain',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '20',
-                               'eval' => 'trim',
-                               'max' => '50',
-                               'softref' => 'substitute'
-                       )
-               ),
-               'db_mountpoints' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options_db_mounts',
-                       'config' => array(
-                               'type' => 'group',
-                               'internal_type' => 'db',
-                               'allowed' => 'pages',
-                               'size' => '3',
-                               'maxitems' => 25,
-                               'autoSizeMax' => 10,
-                               'show_thumbs' => '1',
-                               'wizards' => array(
-                                       'suggest' => array(
-                                               'type' => 'suggest'
-                                       )
-                               )
-                       )
-               ),
-               'file_mountpoints' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options_file_mounts',
-                       'config' => array(
-                               'type' => 'select',
-                               'foreign_table' => 'sys_filemounts',
-                               'foreign_table_where' => ' AND sys_filemounts.pid=0 ORDER BY sys_filemounts.title',
-                               'size' => '3',
-                               'maxitems' => 25,
-                               'autoSizeMax' => 10,
-                               'iconsInOptionTags' => 1,
-                               'wizards' => array(
-                                       '_PADDING' => 1,
-                                       '_VERTICAL' => 1,
-                                       'edit' => array(
-                                               'type' => 'popup',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_edit_title',
-                                               'script' => 'wizard_edit.php',
-                                               'icon' => 'edit2.gif',
-                                               'popup_onlyOpenIfSelected' => 1,
-                                               'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1'
-                                       ),
-                                       'add' => array(
-                                               'type' => 'script',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_add_title',
-                                               'icon' => 'add.gif',
-                                               'params' => array(
-                                                       'table' => 'sys_filemounts',
-                                                       'pid' => '0',
-                                                       'setValue' => 'prepend'
-                                               ),
-                                               'script' => 'wizard_add.php'
-                                       ),
-                                       'list' => array(
-                                               'type' => 'script',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:file_mountpoints_list_title',
-                                               'icon' => 'list.gif',
-                                               'params' => array(
-                                                       'table' => 'sys_filemounts',
-                                                       'pid' => '0'
-                                               ),
-                                               'script' => 'wizard_list.php'
-                                       )
-                               )
-                       )
-               ),
-               'email' => array(
-                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.email',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '20',
-                               'eval' => 'trim',
-                               'max' => '80',
-                               'softref' => 'email[subst]'
-                       )
-               ),
-               'realName' => array(
-                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.name',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '20',
-                               'eval' => 'trim',
-                               'max' => '80'
-                       )
-               ),
-               'disable' => array(
-                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.disable',
-                       'config' => array(
-                               'type' => 'check'
-                       )
-               ),
-               'disableIPlock' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.disableIPlock',
-                       'config' => array(
-                               'type' => 'check'
-                       )
-               ),
-               'admin' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.admin',
-                       'config' => array(
-                               'type' => 'check',
-                               'default' => '0'
-                       )
-               ),
-               'options' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.options',
-                       'config' => array(
-                               'type' => 'check',
-                               'items' => array(
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.options_db_mounts', 0),
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.options_file_mounts', 0)
-                               ),
-                               'default' => '3'
-                       )
-               ),
-               'fileoper_perms' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms',
-                       'config' => array(
-                               'type' => 'check',
-                               'items' => array(
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_general', 0),
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_unzip', 0),
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms', 0),
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms_copy', 0),
-                                       array('LLL:EXT:lang/locallang_tca.xml:be_users.fileoper_perms_diroper_perms_delete', 0)
-                               ),
-                               'default' => '0'
-                       )
-               ),
-               'workspace_perms' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:workspace_perms',
-                       'config' => array(
-                               'type' => 'check',
-                               'items' => array(
-                                       array('LLL:EXT:lang/locallang_tca.xml:workspace_perms_live', 0)
-                               ),
-                               'default' => 1
-                       )
-               ),
-               'starttime' => array(
-                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '13',
-                               'max' => '20',
-                               'eval' => 'datetime',
-                               'default' => '0'
-                       )
-               ),
-               'endtime' => array(
-                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '13',
-                               'max' => '20',
-                               'eval' => 'datetime',
-                               'default' => '0',
-                               'range' => array(
-                                       'upper' => mktime(0, 0, 0, 12, 31, 2020)
-                               )
-                       )
-               ),
-               'lang' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:be_users.lang',
-                       'config' => array(
-                               'type' => 'select',
-                               'items' => array(
-                                       array('English', '')
-                               )
-                       )
-               ),
-               'userMods' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:userMods',
-                       'config' => array(
-                               'type' => 'select',
-                               'special' => 'modListUser',
-                               'size' => '5',
-                               'autoSizeMax' => 50,
-                               'maxitems' => '100',
-                               'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
-                               'iconsInOptionTags' => 1
-                       )
-               ),
-               'allowed_languages' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:allowed_languages',
-                       'config' => array(
-                               'type' => 'select',
-                               'special' => 'languages',
-                               'maxitems' => '1000',
-                               'renderMode' => 'checkbox'
-                       )
-               ),
-               'TSconfig' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig',
-                       'config' => array(
-                               'type' => 'text',
-                               'cols' => '40',
-                               'rows' => '5',
-                               'wizards' => array(
-                                       '_PADDING' => 4,
-                                       '0' => array(
-                                               'type' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('tsconfig_help') ? 'popup' : '',
-                                               'title' => 'LLL:EXT:lang/locallang_tca.xml:TSconfig_title',
-                                               'script' => 'wizard_tsconfig.php?mode=beuser',
-                                               'icon' => 'wizard_tsconfig.gif',
-                                               'JSopenParams' => 'height=500,width=780,status=0,menubar=0,scrollbars=1'
-                                       )
-                               ),
-                               'softref' => 'TSconfig'
-                       ),
-                       'defaultExtras' => 'fixed-font : enable-tab'
-               ),
-               'createdByAction' => array(
-                       'config' => array(
-                               'type' => 'passthrough'
-                       )
-               ),
-               'lastlogin' => array(
-                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.lastlogin',
-                       'config' => array(
-                               'type' => 'input',
-                               'readOnly' => '1',
-                               'size' => '12',
-                               'eval' => 'datetime',
-                               'default' => 0
-                       )
-               )
-       ),
-       'types' => array(
-               '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,
-                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.rights, userMods;;;;2-2-2, allowed_languages,
-                       --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,
-                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.options, lockToDomain;;;;1-1-1, disableIPlock, TSconfig;;;;2-2-2,
-                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.access, starttime;;;;1-1-1,endtime,
-                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.extended'),
-               '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,
-                       --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,
-                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.access, starttime;;;;1-1-1,endtime,
-                       --div--;LLL:EXT:lang/locallang_tca.xml:be_users.tabs.extended')
-       )
-);
-?>
\ No newline at end of file
diff --git a/typo3/sysext/core/Configuration/TCA/Pages.php b/typo3/sysext/core/Configuration/TCA/Pages.php
deleted file mode 100644 (file)
index a9bcd71..0000000
+++ /dev/null
@@ -1,1065 +0,0 @@
-<?php
-return array(
-       'ctrl' => array(
-               'label' => 'title',
-               'tstamp' => 'tstamp',
-               'sortby' => 'sorting',
-               'title' => 'LLL:EXT:lang/locallang_tca.php:pages',
-               'type' => 'doktype',
-               'versioningWS' => 2,
-               'origUid' => 't3_origuid',
-               'delete' => 'deleted',
-               'crdate' => 'crdate',
-               'hideAtCopy' => 1,
-               'prependAtCopy' => 'LLL:EXT:lang/locallang_general.php:LGL.prependAtCopy',
-               'cruser_id' => 'cruser_id',
-               'editlock' => 'editlock',
-               'useColumnsForDefaultValues' => 'doktype,fe_group,hidden',
-               'dividers2tabs' => 1,
-               'enablecolumns' => array(
-                       'disabled' => 'hidden',
-                       'starttime' => 'starttime',
-                       'endtime' => 'endtime',
-                       'fe_group' => 'fe_group'
-               ),
-               'transForeignTable' => 'pages_language_overlay',
-               'typeicon_column' => 'doktype',
-               'typeicon_classes' => array(
-                       '1' => 'apps-pagetree-page-default',
-                       '1-hideinmenu' => 'apps-pagetree-page-not-in-menu',
-                       '1-root' => 'apps-pagetree-page-domain',
-                       '3' => 'apps-pagetree-page-shortcut-external',
-                       '3-hideinmenu' => 'apps-pagetree-page-shortcut-external-hideinmenu',
-                       '3-root' => 'apps-pagetree-page-shortcut-external-root',
-                       '4' => 'apps-pagetree-page-shortcut',
-                       '4-hideinmenu' => 'apps-pagetree-page-shortcut-hideinmenu',
-                       '4-root' => 'apps-pagetree-page-shortcut-root',
-                       '6' => 'apps-pagetree-page-backend-users',
-                       '6-hideinmenu' => 'apps-pagetree-page-backend-users-hideinmenu',
-                       '6-root' => 'apps-pagetree-page-backend-users-root',
-                       '7' => 'apps-pagetree-page-mountpoint',
-                       '7-hideinmenu' => 'apps-pagetree-page-mountpoint-hideinmenu',
-                       '7-root' => 'apps-pagetree-page-mountpoint-root',
-                       '199' => 'apps-pagetree-spacer',
-                       '199-hideinmenu' => 'apps-pagetree-spacer',
-                       '199-root' => 'apps-pagetree-page-domain',
-                       '254' => 'apps-pagetree-folder-default',
-                       '254-hideinmenu' => 'apps-pagetree-folder-default',
-                       '254-root' => 'apps-pagetree-page-domain',
-                       '255' => 'apps-pagetree-page-recycler',
-                       '255-hideinmenu' => 'apps-pagetree-page-recycler',
-                       'contains-shop' => 'apps-pagetree-folder-contains-shop',
-                       'contains-approve' => 'apps-pagetree-folder-contains-approve',
-                       'contains-fe_users' => 'apps-pagetree-folder-contains-fe_users',
-                       'contains-board' => 'apps-pagetree-folder-contains-board',
-                       'contains-news' => 'apps-pagetree-folder-contains-news',
-                       'default' => 'apps-pagetree-page-default'
-               ),
-               'typeicons' => array(
-                       '1' => 'pages.gif',
-                       '254' => 'sysf.gif',
-                       '255' => 'recycler.gif'
-               ),
-               'searchFields' => 'title,alias,nav_title,subtitle,url,keywords,description,abstract,author,author_email'
-       ),
-       'interface' => array(
-               'showRecordFieldList' => 'doktype,title,alias,hidden,starttime,endtime,fe_group,url,target,no_cache,shortcut,keywords,description,abstract,newUntil,lastUpdated,cache_timeout,cache_tags,backend_layout,backend_layout_next_level',
-               'maxDBListItems' => 30,
-               'maxSingleDBListItems' => 50
-       ),
-       'columns' => array(
-               'doktype' => array(
-                       'exclude' => 1,
-                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.type',
-                       'config' => array(
-                               'type' => 'select',
-                               'items' => array(
-                                       array(
-                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.div.page',
-                                               '--div--'
-                                       ),
-                                       array(
-                                               'LLL:EXT:lang/locallang_tca.php:doktype.I.0',
-                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_DEFAULT,
-                                               'i/pages.gif'
-                                       ),
-                                       array(
-                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.4',
-                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_BE_USER_SECTION,
-                                               'i/be_users_section.gif'
-                                       ),
-                                       array(
-                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.div.link',
-                                               '--div--'
-                                       ),
-                                       array(
-                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.2',
-                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SHORTCUT,
-                                               'i/pages_shortcut.gif'
-                                       ),
-                                       array(
-                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.5',
-                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_MOUNTPOINT,
-                                               'i/pages_mountpoint.gif'
-                                       ),
-                                       array(
-                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.8',
-                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_LINK,
-                                               'i/pages_link.gif'
-                                       ),
-                                       array(
-                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.div.special',
-                                               '--div--'
-                                       ),
-                                       array(
-                                               'LLL:EXT:lang/locallang_tca.xml:doktype.I.folder',
-                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SYSFOLDER,
-                                               'i/sysf.gif'
-                                       ),
-                                       array(
-                                               'LLL:EXT:lang/locallang_tca.xml:doktype.I.2',
-                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_RECYCLER,
-                                               'i/recycler.gif'
-                                       ),
-                                       array(
-                                               'LLL:EXT:cms/locallang_tca.xml:pages.doktype.I.7',
-                                               (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_SPACER,
-                                               'i/spacer_icon.gif'
-                                       )
-                               ),
-                               'default' => (string) \TYPO3\CMS\Frontend\Page\PageRepository::DOKTYPE_DEFAULT,
-                               'iconsInOptionTags' => 1,
-                               'noIconsBelowSelect' => 1
-                       )
-               ),
-               'title' => array(
-                       'label' => 'LLL:EXT:lang/locallang_tca.php:title',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '50',
-                               'max' => '255',
-                               'eval' => 'trim,required'
-                       )
-               ),
-               'TSconfig' => array(
-                       'exclude' => 1,
-                       'label' => 'TSconfig:',
-                       'config' => array(
-                               'type' => 'text',
-                               'cols' => '40',
-                               'rows' => '5',
-                               'wizards' => array(
-                                       '_PADDING' => 4,
-                                       '0' => array(
-                                               'type' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('tsconfig_help') ? 'popup' : '',
-                                               'title' => 'TSconfig QuickReference',
-                                               'script' => 'wizard_tsconfig.php?mode=page',
-                                               'icon' => 'wizard_tsconfig.gif',
-                                               'JSopenParams' => 'height=500,width=780,status=0,menubar=0,scrollbars=1'
-                                       )
-                               ),
-                               'softref' => 'TSconfig'
-                       ),
-                       'defaultExtras' => 'fixed-font : enable-tab'
-               ),
-               'php_tree_stop' => array(
-                       'exclude' => 1,
-                       'label' => 'LLL:EXT:lang/locallang_tca.php:php_tree_stop',
-                       'config' => array(
-                               'type' => 'check',
-                               'items' => array(
-                                       '1' => array(
-                                               '0' => 'LLL:EXT:lang/locallang_core.xml:labels.enabled'
-                                       )
-                               )
-                       )
-               ),
-               'storage_pid' => array(
-                       'exclude' => 1,
-                       'label' => 'LLL:EXT:lang/locallang_tca.php:storage_pid',
-                       'config' => array(
-                               'type' => 'group',
-                               'internal_type' => 'db',
-                               'allowed' => 'pages',
-                               'size' => '1',
-                               'maxitems' => '1',
-                               'minitems' => '0',
-                               'show_thumbs' => '1',
-                               'wizards' => array(
-                                       'suggest' => array(
-                                               'type' => 'suggest'
-                                       )
-                               )
-                       )
-               ),
-               'TYPO3\\CMS\\Impexp\\ImportExport_origuid' => array('config' => array('type' => 'passthrough')),
-               't3ver_label' => array(
-                       'label' => 'LLL:EXT:lang/locallang_general.php:LGL.versionLabel',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '23',
-                               'max' => '255'
-                       )
-               ),
-               'editlock' => array(
-                       'exclude' => 1,
-                       'label' => 'LLL:EXT:lang/locallang_tca.php:editlock',
-                       'config' => array(
-                               'type' => 'check',
-                               'items' => array(
-                                       '1' => array(
-                                               '0' => 'LLL:EXT:lang/locallang_core.xml:labels.enabled'
-                                       )
-                               )
-                       )
-               ),
-               'hidden' => array(
-                       'exclude' => 1,
-                       'label' => 'LLL:EXT:cms/locallang_tca.xml:pages.hidden',
-                       'config' => array(
-                               'type' => 'check',
-                               'default' => '1',
-                               'items' => array(
-                                       '1' => array(
-                                               '0' => 'LLL:EXT:cms/locallang_tca.xml:pages.hidden_checkbox_1_formlabel'
-                                       )
-                               )
-                       )
-               ),
-               'starttime' => array(
-                       'exclude' => 1,
-                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.starttime',
-                       'config' => array(
-                               'type' => 'input',
-                               'size' => '13',
-                               'max' => '20',
-                               'eval' => 'datetime',
-                               'default' => '0'
-                       )
-               ),
-               'endtime' => array(
-                       'exclude' => 1,
-                       'label' => 'LLL:EXT:lang/locallang_general.xml:LGL.endtime',
-