-
Notifications
You must be signed in to change notification settings - Fork 4
/
ext_tables.php
500 lines (468 loc) · 18.5 KB
/
ext_tables.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
<?php
if (!defined('TYPO3_MODE')) {
die('Access denied.');
}
if (TYPO3_MODE === 'BE') {
/**
* Registers a Backend Module
*/
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerModule(
'AgoraTeam.' . $_EXTKEY,
'web',
'forum',
'',
array(
'ForumAdmin' => 'list, new, create, edit, update, statistic,delete',
),
array(
'access' => 'user,group',
'icon' => 'EXT:' . $_EXTKEY . '/ext_icon.gif',
'labels' => 'LLL:EXT:' . $_EXTKEY . '/Resources/Private/Language/locallang_forum.xlf',
)
);
}
/*-----------------------------------------------------------------------
* Register plugins
*----------------------------------------------------------------------*/
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
$_EXTKEY,
'Forum',
'Forum'
);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
$_EXTKEY,
'Widgets',
'Widgets'
);
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
$_EXTKEY,
'Forumpages',
'Forumpages'
);
$pluginSignature = str_replace('_', '', $_EXTKEY) . '_widgets';
$GLOBALS['TCA']['tt_content']['types']['list']['subtypes_addlist'][$pluginSignature] = 'pi_flexform';
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue(
$pluginSignature,
'FILE:EXT:' . $_EXTKEY . '/Configuration/FlexForms/flexform_widgets.xml'
);
$pluginSignature = str_replace('_', '', $_EXTKEY) . '_forumpages';
$GLOBALS['TCA']['tt_content']['types']['list']['subtypes_addlist'][$pluginSignature] = 'pi_flexform';
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue(
$pluginSignature,
'FILE:EXT:' . $_EXTKEY . '/Configuration/FlexForms/flexform_forumpages.xml'
);
/*-----------------------------------------------------------------------
* Add static files
*----------------------------------------------------------------------*/
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile(
$_EXTKEY,
'Configuration/TypoScript/Main', 'Agora - TYPO3 Forum'
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile(
$_EXTKEY,
'Configuration/TypoScript/ExampleTemplate', 'Agora - TYPO3 Forum - Bootstrap Theme'
);
/*-----------------------------------------------------------------------
* TCA-Configurations
*----------------------------------------------------------------------*/
$GLOBALS['TCA']['tx_agora_domain_model_forum'] = array(
'ctrl' => array(
'title' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_forum',
'label' => 'title',
'tstamp' => 'tstamp',
'crdate' => 'crdate',
'cruser_id' => 'cruser_id',
'dividers2tabs' => TRUE,
'sortby' => 'sorting',
'versioningWS' => 2,
'versioning_followPages' => TRUE,
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'transOrigDiffSourceField' => 'l10n_diffsource',
'delete' => 'deleted',
'enablecolumns' => array(
'disabled' => 'hidden',
'starttime' => 'starttime',
'endtime' => 'endtime',
),
'searchFields' => 'title,description,public,parent,threads,groups_with_read_access,groups_with_write_access,
groups_with_modification_access,users_with_read_access,users_with_write_access,
users_with_modification_access,',
'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/Forum.php',
'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) .
'Resources/Public/Icons/tx_agora_domain_model_forum.gif'
),
);
$GLOBALS['TCA']['tx_agora_domain_model_post'] = array(
'ctrl' => array(
'title' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_post',
'label' => 'topic',
'tstamp' => 'tstamp',
'crdate' => 'crdate',
'cruser_id' => 'cruser_id',
'dividers2tabs' => TRUE,
'sortby' => 'publishing_date',
'versioningWS' => 2,
'versioning_followPages' => TRUE,
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'transOrigDiffSourceField' => 'l10n_diffsource',
'delete' => 'deleted',
'enablecolumns' => array(
'disabled' => 'hidden',
'starttime' => 'starttime',
'endtime' => 'endtime',
),
'searchFields' => 'topic,text,quoted_post,voting,attachments,creator,historical_versions,',
'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/Post.php',
'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) .
'Resources/Public/Icons/tx_agora_domain_model_post.gif'
),
);
$GLOBALS['TCA']['tx_agora_domain_model_thread'] = array(
'ctrl' => array(
'title' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_thread',
'label' => 'title',
'tstamp' => 'tstamp',
'crdate' => 'crdate',
'cruser_id' => 'cruser_id',
'dividers2tabs' => TRUE,
'sortby' => 'sorting',
'versioningWS' => 2,
'versioning_followPages' => TRUE,
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'transOrigDiffSourceField' => 'l10n_diffsource',
'delete' => 'deleted',
'enablecolumns' => array(
'disabled' => 'hidden',
'starttime' => 'starttime',
'endtime' => 'endtime',
),
'searchFields' => 'title,solved,closed,sticky,creator,posts,views,groups_with_read_access,
groups_with_write_access,groups_with_modification_access,users_with_read_access,
users_with_write_access,users_with_modification_access,',
'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/Thread.php',
'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) .
'Resources/Public/Icons/tx_agora_domain_model_thread.gif'
),
);
$GLOBALS['TCA']['tx_agora_domain_model_view'] = array(
'ctrl' => array(
'title' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_view',
'label' => 'thread',
'tstamp' => 'tstamp',
'crdate' => 'crdate',
'cruser_id' => 'cruser_id',
'dividers2tabs' => TRUE,
'versioningWS' => 2,
'versioning_followPages' => TRUE,
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'transOrigDiffSourceField' => 'l10n_diffsource',
'delete' => 'deleted',
'enablecolumns' => array(
'disabled' => 'hidden',
'starttime' => 'starttime',
'endtime' => 'endtime',
),
'searchFields' => 'thread,user,',
'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/View.php',
'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) .
'Resources/Public/Icons/tx_agora_domain_model_view.gif'
),
);
$GLOBALS['TCA']['tx_agora_domain_model_voting'] = array(
'ctrl' => array(
'title' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_voting',
'label' => 'question',
'tstamp' => 'tstamp',
'crdate' => 'crdate',
'cruser_id' => 'cruser_id',
'dividers2tabs' => TRUE,
'versioningWS' => 2,
'versioning_followPages' => TRUE,
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'transOrigDiffSourceField' => 'l10n_diffsource',
'delete' => 'deleted',
'enablecolumns' => array(
'disabled' => 'hidden',
'starttime' => 'starttime',
'endtime' => 'endtime',
),
'searchFields' => 'question,answers,',
'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/Voting.php',
'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) .
'Resources/Public/Icons/tx_agora_domain_model_voting.gif'
),
);
$GLOBALS['TCA']['tx_agora_domain_model_attachment'] = array(
'ctrl' => array(
'title' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_attachment',
'label' => 'title',
'tstamp' => 'tstamp',
'crdate' => 'crdate',
'cruser_id' => 'cruser_id',
'dividers2tabs' => TRUE,
'sortby' => 'sorting',
'versioningWS' => 2,
'versioning_followPages' => TRUE,
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'transOrigDiffSourceField' => 'l10n_diffsource',
'delete' => 'deleted',
'enablecolumns' => array(
'disabled' => 'hidden',
'starttime' => 'starttime',
'endtime' => 'endtime',
),
'searchFields' => 'title,file,',
'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) .
'Configuration/TCA/Attachment.php',
'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) .
'Resources/Public/Icons/tx_agora_domain_model_attachment.gif'
),
);
$GLOBALS['TCA']['tx_agora_domain_model_vote'] = array(
'ctrl' => array(
'title' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_vote',
'label' => 'voting',
'tstamp' => 'tstamp',
'crdate' => 'crdate',
'cruser_id' => 'cruser_id',
'dividers2tabs' => TRUE,
'versioningWS' => 2,
'versioning_followPages' => TRUE,
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'transOrigDiffSourceField' => 'l10n_diffsource',
'delete' => 'deleted',
'enablecolumns' => array(
'disabled' => 'hidden',
'starttime' => 'starttime',
'endtime' => 'endtime',
),
'searchFields' => 'voting,voting_answers,user,',
'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) . 'Configuration/TCA/Vote.php',
'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) .
'Resources/Public/Icons/tx_agora_domain_model_vote.gif'
),
);
$GLOBALS['TCA']['tx_agora_domain_model_votinganswer'] = array(
'ctrl' => array(
'title' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_votinganswer',
'label' => 'answer',
'tstamp' => 'tstamp',
'crdate' => 'crdate',
'cruser_id' => 'cruser_id',
'dividers2tabs' => TRUE,
'sortby' => 'sorting',
'versioningWS' => 2,
'versioning_followPages' => TRUE,
'languageField' => 'sys_language_uid',
'transOrigPointerField' => 'l10n_parent',
'transOrigDiffSourceField' => 'l10n_diffsource',
'delete' => 'deleted',
'enablecolumns' => array(
'disabled' => 'hidden',
'starttime' => 'starttime',
'endtime' => 'endtime',
),
'searchFields' => 'answer,',
'dynamicConfigFile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath($_EXTKEY) .
'Configuration/TCA/VotingAnswer.php',
'iconfile' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extRelPath($_EXTKEY) .
'Resources/Public/Icons/tx_agora_domain_model_votinganswer.gif'
),
);
// Hide none used tables
$GLOBALS['TCA']['tx_agora_domain_model_view']['ctrl']['hideTable'] = 1;
$GLOBALS['TCA']['tx_agora_domain_model_voting']['ctrl']['hideTable'] = 1;
$GLOBALS['TCA']['tx_agora_domain_model_attachment']['ctrl']['hideTable'] = 1;
$GLOBALS['TCA']['tx_agora_domain_model_vote']['ctrl']['hideTable'] = 1;
$GLOBALS['TCA']['tx_agora_domain_model_votinganswer']['ctrl']['hideTable'] = 1;
/*-----------------------------------------------------------------------
* AddLLrefForTCAdescr
*----------------------------------------------------------------------*/
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr(
'tx_agora_domain_model_forum',
'EXT:agora/Resources/Private/Language/locallang_csh_tx_agora_domain_model_forum.xlf'
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr(
'tx_agora_domain_model_thread',
'EXT:agora/Resources/Private/Language/locallang_csh_tx_agora_domain_model_thread.xlf'
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr(
'tx_agora_domain_model_post',
'EXT:agora/Resources/Private/Language/locallang_csh_tx_agora_domain_model_post.xlf'
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr(
'tx_agora_domain_model_votinganswer',
'EXT:agora/Resources/Private/Language/locallang_csh_tx_agora_domain_model_votinganswer.xlf'
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr(
'tx_agora_domain_model_vote',
'EXT:agora/Resources/Private/Language/locallang_csh_tx_agora_domain_model_vote.xlf'
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr(
'tx_agora_domain_model_attachment',
'EXT:agora/Resources/Private/Language/locallang_csh_tx_agora_domain_model_attachment.xlf'
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addLLrefForTCAdescr(
'tx_agora_domain_model_voting',
'EXT:agora/Resources/Private/Language/locallang_csh_tx_agora_domain_model_voting.xlf'
);
/*-----------------------------------------------------------------------
* AllowTablesOnStandardPages
*----------------------------------------------------------------------*/
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_agora_domain_model_forum');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_agora_domain_model_thread');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_agora_domain_model_post');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_agora_domain_model_view');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_agora_domain_model_vote');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_agora_domain_model_votinganswer');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_agora_domain_model_attachment');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::allowTableOnStandardPages('tx_agora_domain_model_voting');
/*-----------------------------------------------------------------------
* UserConfiguration
*----------------------------------------------------------------------*/
if (!isset($GLOBALS['TCA']['fe_users']['ctrl']['type'])) {
if (file_exists($GLOBALS['TCA']['fe_users']['ctrl']['dynamicConfigFile'])) {
require_once($GLOBALS['TCA']['fe_users']['ctrl']['dynamicConfigFile']);
}
$GLOBALS['TCA']['fe_users']['ctrl']['type'] = 'tx_extbase_type';
$tempColumns = array();
$tempColumns[$GLOBALS['TCA']['fe_users']['ctrl']['type']] = array(
'exclude' => 1,
'label' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora.tx_extbase_type',
'config' => array(
'type' => 'select',
'items' => array(),
'size' => 1,
'maxitems' => 1,
)
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_users', $tempColumns, 1);
}
if (!isset($GLOBALS['TCA']['fe_groups']['ctrl']['type'])) {
if (file_exists($GLOBALS['TCA']['fe_groups']['ctrl']['dynamicConfigFile'])) {
require_once($GLOBALS['TCA']['fe_groups']['ctrl']['dynamicConfigFile']);
}
$GLOBALS['TCA']['fe_groups']['ctrl']['type'] = 'tx_extbase_type';
$tempColumns = array();
$tempColumns[$GLOBALS['TCA']['fe_groups']['ctrl']['type']] = array(
'exclude' => 1,
'label' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora.tx_extbase_type',
'config' => array(
'type' => 'select',
'items' => array(),
'size' => 1,
'maxitems' => 1,
)
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_groups', $tempColumns, 1);
}
$GLOBALS['TCA']['fe_groups']['types']['Tx_Agora_Group']['showitem'] = $TCA['fe_groups']['types']['0']['showitem'] .
',--div--;LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_group,';
$GLOBALS['TCA']['fe_groups']['columns'][$TCA['fe_groups']['ctrl']['type']]['config']['items'][] = array(
'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:fe_groups.tx_extbase_type.Tx_Agora_Group',
'Tx_Agora_Group'
);
$tmpAgoraColumns = array(
'signiture' => array(
'exclude' => 1,
'label' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_user.signiture',
'config' => array(
'type' => 'text',
'cols' => 40,
'rows' => 15,
'eval' => 'trim'
)
),
'posts' => array(
'exclude' => 1,
'label' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_user.posts',
'config' => array(
'type' => 'inline',
'foreign_table' => 'tx_agora_domain_model_post',
'foreign_field' => 'user',
'maxitems' => 9999,
'appearance' => array(
'collapseAll' => 0,
'levelLinksPosition' => 'top',
'showSynchronizationLink' => 1,
'showPossibleLocalizationRecords' => 1,
'showAllLocalizationLink' => 1
),
),
),
'favorite_posts' => array(
'exclude' => 1,
'label' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_user.favorite_posts',
'config' => array(
'type' => 'select',
'foreign_table' => 'tx_agora_domain_model_post',
'MM' => 'tx_agora_feuser_post_mm',
'size' => 5,
'minitems' => 0,
'maxitems' => 9999,
'renderMode' => 'checkbox',
),
),
'observed_threads' => array(
'exclude' => 1,
'label' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_thread.user',
'config' => array(
'type' => 'select',
'foreign_table' => 'tx_agora_domain_model_thread',
'MM' => 'tx_agora_feuser_thread_mm',
'size' => 5,
'minitems' => 0,
'maxitems' => 9999,
'renderMode' => 'checkbox',
),
),
'spam_posts' => array(
'exclude' => 1,
'label' => 'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_user.spam_posts',
'config' => array(
'type' => 'inline',
'foreign_table' => 'tx_agora_domain_model_post',
'foreign_field' => 'user2',
'maxitems' => 9999,
'appearance' => array(
'collapseAll' => 0,
'levelLinksPosition' => 'top',
'showSynchronizationLink' => 1,
'showPossibleLocalizationRecords' => 1,
'showAllLocalizationLink' => 1
),
),
),
'view' => array(
'config' => array(
'type' => 'passthrough',
)
)
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('fe_users', $tmpAgoraColumns);
$GLOBALS['TCA']['fe_users']['types']['Tx_Agora_User']['showitem'] = $TCA['fe_users']['types']['0']['showitem'] .
',--div--;LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:tx_agora_domain_model_user,
signiture, posts, favorite_posts, observed_threads, spam_posts, groups';
$GLOBALS['TCA']['fe_users']['columns'][$TCA['fe_users']['ctrl']['type']]['config']['items'][] = array(
'LLL:EXT:agora/Resources/Private/Language/locallang_db.xlf:fe_users.tx_extbase_type.Tx_Agora_User',
'Tx_Agora_User'
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes(
'fe_users',
$GLOBALS['TCA']['fe_users']['ctrl']['type'],
'',
'after:' . $TCA['fe_users']['ctrl']['label']
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes(
'fe_groups',
$GLOBALS['TCA']['fe_groups']['ctrl']['type'],
'',
'after:' . $TCA['fe_groups']['ctrl']['label']
);