Bug #15388
closedBad usability of multi-FE-groups
0%
Description
The group-select-box has two items that are mutually exclusive: hide-at-login and show-at-any-login.
Currently you can select them both at once together with the groups.
I think this is not a small cosmetical problem, but a real usability error.
As both boxes next to each other are very broad I suggest, removing the group-select. It could be replaced by a wizard. This wizard has three radio buttons: hide-at-login, show-at-any-login, show-for-selected-groups and a select box with all available groups. To apply the changes there is an ok/apply button.
(issue imported from #M2226)
Files
Updated by Martin Kutschker over 18 years ago
Another solution is to add a new feature to the type="select" named "exclusiveKeys". Here you can list (for classic multiple selector boxes) a comma delimited list of keys that exclude all other keys when set.
I think it makes only sense if maxitems>1 and renderMode is not set.
To add some JS code that does the trick on the client side this form rendering function is affected:
class.t3lib_tceforms.php:getSingleField_typeSelect_multiple()
To enforce this on serevr side I think here are some changes needed:
class.t3lib_tcemain.php:checkValue_group_select
Shouldn't be too hard to do and is perhaps reusable for other parts of the Core or some extensions.
Updated by Martin Kutschker over 18 years ago
The attachment "exclusievKeys.patch" implements the suggested changes to the TCA, the form rendering and the form submission handling.
Updated by Martin Kutschker over 18 years ago
I've uploaded a new version with cosmetical changes and another oen by Michael Stucki that applies the new TCA features to the access fields of "pages" and "tt_content".
Updated by Martin Kutschker over 18 years ago
IMPORTANT: Somehow I dorked the commit. The bug is not fixed in 4.0! Please use 4.0.1 or later, if it is an issue for you.
Updated by Michael Stucki over 18 years ago
Ah, now I understand! I noticed this two days ago and wanted to investigate it later... Thanks for taking care of it!