[FEATURE] Split file permission for be_users and be_groups
[Packages/TYPO3.CMS.git] / typo3 / sysext / core / Configuration / TCA / be_groups.php
1 <?php
2 return array(
3 'ctrl' => array(
4 'label' => 'title',
5 'tstamp' => 'tstamp',
6 'crdate' => 'crdate',
7 'cruser_id' => 'cruser_id',
8 'delete' => 'deleted',
9 'default_sortby' => 'ORDER BY title',
10 'prependAtCopy' => 'LLL:EXT:lang/locallang_general.xlf:LGL.prependAtCopy',
11 'adminOnly' => 1,
12 'rootLevel' => 1,
13 'type' => 'inc_access_lists',
14 'typeicon_column' => 'inc_access_lists',
15 'typeicons' => array(
16 '1' => 'be_groups_lists.gif'
17 ),
18 'typeicon_classes' => array(
19 'default' => 'status-user-group-backend'
20 ),
21 'enablecolumns' => array(
22 'disabled' => 'hidden'
23 ),
24 'title' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups',
25 'useColumnsForDefaultValues' => 'lockToDomain, file_permissions',
26 'dividers2tabs' => TRUE,
27 'versioningWS_alwaysAllowLiveEdit' => TRUE,
28 'searchFields' => 'title'
29 ),
30 'interface' => array(
31 'showRecordFieldList' => 'title, db_mountpoints, file_mountpoints, file_permissions, inc_access_lists, tables_select, tables_modify, pagetypes_select, non_exclude_fields, groupMods, lockToDomain, description'
32 ),
33 'columns' => array(
34 'title' => array(
35 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.title',
36 'config' => array(
37 'type' => 'input',
38 'size' => '25',
39 'max' => '50',
40 'eval' => 'trim,required'
41 )
42 ),
43 'db_mountpoints' => array(
44 'label' => 'LLL:EXT:lang/locallang_tca.xlf:db_mountpoints',
45 'config' => array(
46 'type' => 'group',
47 'internal_type' => 'db',
48 'allowed' => 'pages',
49 'size' => '3',
50 'maxitems' => 25,
51 'autoSizeMax' => 10,
52 'show_thumbs' => '1',
53 'wizards' => array(
54 'suggest' => array(
55 'type' => 'suggest'
56 )
57 )
58 )
59 ),
60 'file_mountpoints' => array(
61 'label' => 'LLL:EXT:lang/locallang_tca.xlf:file_mountpoints',
62 'config' => array(
63 'type' => 'select',
64 'foreign_table' => 'sys_filemounts',
65 'foreign_table_where' => ' AND sys_filemounts.pid=0 ORDER BY sys_filemounts.title',
66 'size' => '3',
67 'maxitems' => 25,
68 'autoSizeMax' => 10,
69 'iconsInOptionTags' => 1,
70 'wizards' => array(
71 '_PADDING' => 1,
72 '_VERTICAL' => 1,
73 'edit' => array(
74 'type' => 'popup',
75 'title' => 'LLL:EXT:lang/locallang_tca.xlf:file_mountpoints_edit_title',
76 'script' => 'wizard_edit.php',
77 'popup_onlyOpenIfSelected' => 1,
78 'icon' => 'edit2.gif',
79 'JSopenParams' => 'height=350,width=580,status=0,menubar=0,scrollbars=1'
80 ),
81 'add' => array(
82 'type' => 'script',
83 'title' => 'LLL:EXT:lang/locallang_tca.xlf:file_mountpoints_add_title',
84 'icon' => 'add.gif',
85 'params' => array(
86 'table' => 'sys_filemounts',
87 'pid' => '0',
88 'setValue' => 'prepend'
89 ),
90 'script' => 'wizard_add.php'
91 ),
92 'list' => array(
93 'type' => 'script',
94 'title' => 'LLL:EXT:lang/locallang_tca.xlf:file_mountpoints_list_title',
95 'icon' => 'list.gif',
96 'params' => array(
97 'table' => 'sys_filemounts',
98 'pid' => '0'
99 ),
100 'script' => 'wizard_list.php'
101 )
102 )
103 )
104 ),
105 'file_permissions' => array(
106 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.fileoper_perms',
107 'config' => array(
108 'type' => 'select',
109 'items' => array(
110 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.folder', '--div--', 'apps-filetree-folder-default'),
111 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.folder_read', 'readFolder', 'apps-filetree-folder-default'),
112 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.folder_write', 'writeFolder', 'apps-filetree-folder-default'),
113 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.folder_add', 'addFolder', 'apps-filetree-folder-default'),
114 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.folder_rename', 'renameFolder', 'apps-filetree-folder-default'),
115 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.folder_move', 'moveFolder', 'apps-filetree-folder-default'),
116 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.folder_copy', 'copyFolder', 'apps-filetree-folder-default'),
117 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.folder_delete', 'deleteFolder', 'apps-filetree-folder-default'),
118 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.folder_recursivedelete', 'folder_recursivedelete', 'apps-filetree-folder-default'),
119 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.files', '--div--', 'mimetypes-other-other'),
120 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.files_read', 'readFile', 'mimetypes-other-other'),
121 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.files_write', 'writeFile', 'mimetypes-other-other'),
122 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.files_add', 'addFile', 'mimetypes-other-other'),
123 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.files_upload', 'files_upload', 'mimetypes-other-other'),
124 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.files_rename', 'renameFile', 'mimetypes-other-other'),
125 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.files_move', 'moveFile', 'mimetypes-other-other'),
126 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.files_copy', 'copyFile', 'mimetypes-other-other'),
127 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.fileoper_perms_unzip', 'unzipFile', 'mimetypes-other-other'),
128 array('LLL:EXT:lang/locallang_tca.xlf:be_groups.file_permissions.files_delete', 'deleteFile', 'mimetypes-other-other')
129 ),
130 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
131 'size' => 16,
132 'maxitems' => 16,
133 'itemListStyle' => 'width:500px',
134 'default' => 'readFolder,writeFolder,addFolder,renameFolder,moveFolder,deleteFolder,readFile,writeFile,addFile,renameFile,moveFile,files_copy,deleteFile'
135 )
136 ),
137 'workspace_perms' => array(
138 'label' => 'LLL:EXT:lang/locallang_tca.xlf:workspace_perms',
139 'config' => array(
140 'type' => 'check',
141 'items' => array(
142 array('LLL:EXT:lang/locallang_tca.xlf:workspace_perms_live', 0)
143 ),
144 'default' => 0
145 )
146 ),
147 'pagetypes_select' => array(
148 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.pagetypes_select',
149 'config' => array(
150 'type' => 'select',
151 'special' => 'pagetypes',
152 'size' => '5',
153 'autoSizeMax' => 50,
154 'maxitems' => 20,
155 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
156 'iconsInOptionTags' => 1
157 )
158 ),
159 'tables_modify' => array(
160 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.tables_modify',
161 'config' => array(
162 'type' => 'select',
163 'special' => 'tables',
164 'size' => '5',
165 'autoSizeMax' => 50,
166 'maxitems' => 100,
167 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
168 'iconsInOptionTags' => 1
169 )
170 ),
171 'tables_select' => array(
172 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.tables_select',
173 'config' => array(
174 'type' => 'select',
175 'special' => 'tables',
176 'size' => '5',
177 'autoSizeMax' => 50,
178 'maxitems' => 100,
179 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
180 'iconsInOptionTags' => 1
181 )
182 ),
183 'non_exclude_fields' => array(
184 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.non_exclude_fields',
185 'config' => array(
186 'type' => 'select',
187 'special' => 'exclude',
188 'size' => '25',
189 'maxitems' => 1000,
190 'autoSizeMax' => 50,
191 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
192 'itemListStyle' => 'width:500px'
193 )
194 ),
195 'explicit_allowdeny' => array(
196 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.explicit_allowdeny',
197 'config' => array(
198 'type' => 'select',
199 'special' => 'explicitValues',
200 'maxitems' => 1000,
201 'renderMode' => 'checkbox'
202 )
203 ),
204 'allowed_languages' => array(
205 'label' => 'LLL:EXT:lang/locallang_tca.xlf:allowed_languages',
206 'config' => array(
207 'type' => 'select',
208 'special' => 'languages',
209 'maxitems' => 1000,
210 'renderMode' => 'checkbox'
211 )
212 ),
213 'custom_options' => array(
214 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.custom_options',
215 'config' => array(
216 'type' => 'select',
217 'special' => 'custom',
218 'maxitems' => 1000,
219 'renderMode' => 'checkbox'
220 )
221 ),
222 'hidden' => array(
223 'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.disable',
224 'config' => array(
225 'type' => 'check',
226 'default' => '0'
227 )
228 ),
229 'lockToDomain' => array(
230 'label' => 'LLL:EXT:lang/locallang_tca.xlf:lockToDomain',
231 'config' => array(
232 'type' => 'input',
233 'size' => '20',
234 'eval' => 'trim',
235 'max' => '50',
236 'softref' => 'substitute'
237 )
238 ),
239 'groupMods' => array(
240 'label' => 'LLL:EXT:lang/locallang_tca.xlf:userMods',
241 'config' => array(
242 'type' => 'select',
243 'special' => 'modListGroup',
244 'size' => '5',
245 'autoSizeMax' => 50,
246 'maxitems' => 100,
247 'renderMode' => $GLOBALS['TYPO3_CONF_VARS']['BE']['accessListRenderMode'],
248 'iconsInOptionTags' => 1
249 )
250 ),
251 'inc_access_lists' => array(
252 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.inc_access_lists',
253 'config' => array(
254 'type' => 'check',
255 'default' => '0'
256 )
257 ),
258 'description' => array(
259 'label' => 'LLL:EXT:lang/locallang_general.xlf:LGL.description',
260 'config' => array(
261 'type' => 'text',
262 'rows' => 5,
263 'cols' => 30
264 )
265 ),
266 'TSconfig' => array(
267 'label' => 'LLL:EXT:lang/locallang_tca.xlf:TSconfig',
268 'config' => array(
269 'type' => 'text',
270 'cols' => '40',
271 'rows' => '5',
272 'softref' => 'TSconfig'
273 ),
274 'defaultExtras' => 'fixed-font : enable-tab'
275 ),
276 'hide_in_lists' => array(
277 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.hide_in_lists',
278 'config' => array(
279 'type' => 'check',
280 'default' => 0
281 )
282 ),
283 'subgroup' => array(
284 'label' => 'LLL:EXT:lang/locallang_tca.xlf:be_groups.subgroup',
285 'config' => array(
286 'type' => 'select',
287 'foreign_table' => 'be_groups',
288 'foreign_table_where' => 'AND NOT(be_groups.uid = ###THIS_UID###) AND be_groups.hidden=0 ORDER BY be_groups.title',
289 'size' => '5',
290 'autoSizeMax' => 50,
291 'maxitems' => 20,
292 'iconsInOptionTags' => 1
293 )
294 )
295 ),
296 'types' => array(
297 '0' => array('showitem' => 'hidden;;;;1-1-1, title;;;;2-2-2, description, subgroup;;;;3-3-3,
298 --div--;LLL:EXT:lang/locallang_tca.xlf:be_groups.tabs.base_rights, inc_access_lists;;;;1-1-1,
299 --div--;LLL:EXT:lang/locallang_tca.xlf:be_groups.tabs.mounts_and_workspaces, workspace_perms;;;;1-1-1, db_mountpoints;;;;2-2-2, file_mountpoints;;;;3-3-3, file_permissions,
300 --div--;LLL:EXT:lang/locallang_tca.xlf:be_groups.tabs.options, lockToDomain;;;;1-1-1, hide_in_lists;;;;2-2-2, TSconfig;;;;3-3-3,
301 --div--;LLL:EXT:lang/locallang_tca.xlf:be_groups.tabs.extended'),
302 '1' => array('showitem' => 'hidden;;;;1-1-1, title;;;;2-2-2, description, subgroup;;;;3-3-3,
303 --div--;LLL:EXT:lang/locallang_tca.xlf: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,
304 --div--;LLL:EXT:lang/locallang_tca.xlf:be_groups.tabs.mounts_and_workspaces, workspace_perms;;;;1-1-1, db_mountpoints;;;;2-2-2, file_mountpoints;;;;3-3-3, file_permissions,
305 --div--;LLL:EXT:lang/locallang_tca.xlf:be_groups.tabs.options, lockToDomain;;;;1-1-1, hide_in_lists;;;;2-2-2, TSconfig;;;;3-3-3,
306 --div--;LLL:EXT:lang/locallang_tca.xlf:be_groups.tabs.extended')
307 )
308 );