exclude fields not showing up in "allowed excludefields" if table property rootLevel = -1
The field "allowed excludefields" does not show fields of tables which have the property rootLevel = -1.
This behaviour is wrong because rootLevel = -1 means that the data can exist in both page tree and root. If it exists in the page tree it should be editable by non-admins and therefore the exclude fields should be listed in allowed excludefields.
I propose to change the comparison in t3lib/class.t3lib_befunc.php in the following way:
should be modified to
&& ($GLOBALS['TCA'][$table]['ctrl']['rootLevel'] != 1)
Updated by Daniel Goerz about 6 years ago
- Status changed from New to Closed
You can set
$GLOBALS['TCA']['my_table']['ctrl']['security']['ignoreRootLevelRestriction'] = TRUE
to have your exclude fields show up with rootLevel set to 1 oder -1. This is used throughout the core as well (e.g. for sys_file_reference table).
I'll close this issue for now. If you think this is the wrong descision, feel free to contact me or reopen the ticket with a further discription what appears to be buggy.