In the admin UI of our system we have two check boxes that represent permissions:
- View Foo
- Edit Food
Checking a check box means granting a permission. There is an important dependency that we are struggling to enforce at the UI level: Edit permission depends on the View permission. In other words it doesn't make sense to grant the Edit permission if View is not granted. We have considered these options:
- Edit check box is disabled while View is unchecked. Unchecking View automatically unchecks Edit.
- After checking Edit View automatically becomes checked and disabled. Unchecking Edit leaves View checked.
- After clicking Save an error message is displayed if the state is invalid.
There is disagreement in our team about the automatic checking/unchecking part. Some think it will irritate the user because he won't be fully in control. Is there some kind of research on the topic of dependant checkboxes? because we don't have the capacity to do A/B testing ourselves.