Issue Details (XML | Word | Printable)

Key: MDL-8313
Type: Improvement Improvement
Status: Resolved Resolved
Resolution: Fixed
Priority: Minor Minor
Assignee: Tim Hunt
Reporter: Sam Marshall
Votes: 2
Watchers: 2
Operations

Add/Edit UI Mockup to this issue
If you were logged in you would be able to see more operations.
Moodle

Define role should have a basic mode that only uses checkboxes

Created: 26/Jan/07 01:31 AM   Updated: 18/Nov/08 04:09 PM
Return to search
Component/s: Roles
Affects Version/s: 1.8
Fix Version/s: 2.0

Issue Links:
Relates
 

Participants: Sam Marshall and Tim Hunt
Security Level: None
Resolved date: 18/Nov/08
Affected Branches: MOODLE_18_STABLE
Fixed Branches: MOODLE_20_STABLE


 Description  « Hide
The role system, with its four types of permission (allow/inherit/prevent/prohibit) is very difficult to understand and can cause serious confusion, mostly with people choosing 'prevent' or 'prohibit' when they shouldn't. In most cases you only ever need to choose 'Allow', or leave it at 'Inherit'. The other two are needed for rarer special cases.

I suggest that there should be a basic view for the 'define role' screen which shows checkboxes instead of the radio buttons as follows:

* If the capability is set to 'Allow', it shows a ticked checkbox
* If the capability is set to 'Inherit', it shows an unticked checkbox
* If the capability is set to something else, it shows the word 'Prevent' or 'Prohibit', with no option to change (unless you switch into advanced mode).

When you switch into advanced mode it displays as now.

This would make the role interface significantly easier to understand.

(Note that the OU may possibly have time to implement this. If moodle hq would like us to, please let me know.)

 All   Comments   Change History   Version Control      Sort Order: Ascending order - Click to sort in descending order
Petr Skoda made changes - 15/Feb/07 06:39 AM
Field Original Value New Value
Link This issue has been marked as being related by MDL-8524 [ MDL-8524 ]
Tim Hunt made changes - 27/Oct/08 05:29 PM
Assignee Martin Dougiamas [ dougiamas ] Tim Hunt [ timhunt ]
Tim Hunt made changes - 28/Oct/08 06:51 PM
Fix Version/s 2.0 [ 10122 ]
tjhunt committed 2 files to 'Moodle CVS' - 14/Nov/08 12:28 PM
role override ui: MDL-8313 refactor the page in preparation for making an non-advanced mode.
MODIFY admin/roles/override.php   Rev. 1.60    (+39 -168 lines)
MODIFY admin/roles/lib.php   Rev. 1.2    (+201 -19 lines)
tjhunt committed 7 files to 'Moodle CVS' - 14/Nov/08 02:46 PM
role override ui: MDL-8313 basic mode + toggle + usability improvements

* Basic mode just hides the prohobit column. Sadly that is all we can do.
* Button to toggle in and out of advanced mode, with user_perference.
* The permission you are selected is now on the page as a label, rather than just being in a tool-tip. (Not pretty, but helpful, I think. I may change my mind on this.)
* You can click anywhere in the table cell, rather than having to hit the radio button exactly.
* Brief instructions at the top of the page.
* Submit buttons both top and bottom of the page.
MODIFY theme/standard/styles_layout.css   Rev. 1.632    (+16 -5 lines)
MODIFY admin/roles/override.php   Rev. 1.61    (+10 -6 lines)
MODIFY admin/roles/lib.php   Rev. 1.3    (+54 -12 lines)
MODIFY theme/standard/styles_fonts.css   Rev. 1.165    (+2 -1 lines)
MODIFY lang/en_utf8/role.php   Rev. 1.74    (+5 -1 lines)
MODIFY theme/standard/styles_color.css   Rev. 1.186    (+2 -1 lines)
MODIFY admin/roles/roles.js   Rev. 1.3    (+1 -1 lines)
tjhunt committed 4 files to 'Moodle CVS' - 14/Nov/08 07:38 PM
role manage ui: MDL-8313 Refactoring and clean-up prior to basic/adv manage page.
MODIFY admin/roles/override.php   Rev. 1.62    (+24 -20 lines)
MODIFY admin/roles/lib.php   Rev. 1.4    (+144 -71 lines)
MODIFY admin/roles/assign.php   Rev. 1.94    (+7 -3 lines)
MODIFY lib/accesslib.php   Rev. 1.537    (+24 -1 lines)
tjhunt committed 5 files to 'Moodle CVS' - 14/Nov/08 08:46 PM
role manage ui: MDL-8313 First version of the basic/advanced role define page.

This is being separated from manage.php. This code is only partly working. It displays (most) of a role definition, but does not yet let you save changes. However, I wanted to commit it before going home on Friday night. Since this is new code, it won't break anything.
ADD admin/roles/define.php   Rev. 1.1    (+0 -0 lines)
MODIFY lang/en_utf8/role.php   Rev. 1.75    (+5 -2 lines)
MODIFY admin/roles/lib.php   Rev. 1.5    (+72 -7 lines)
MODIFY theme/standard/styles_layout.css   Rev. 1.633    (+1 -0 lines)
MODIFY theme/standard/styles_color.css   Rev. 1.187    (+1 -1 lines)
martignoni committed 1 file to 'Lang CVS' - 17/Nov/08 02:43 AM
MDL-8313, strings translated
MODIFY fr_utf8/role.php   Rev. 1.96    (+5 -1 lines)
martignoni committed 1 file to 'Lang CVS' - 17/Nov/08 02:47 AM
MDL-8313 more strings translated
MODIFY fr_utf8/role.php   Rev. 1.97    (+4 -1 lines)
Mitsuhiro Yoshida committed 2 files to 'Lang CVS' - 17/Nov/08 02:54 AM
MDL-8313 Translated new strings for role.
MODIFY ja_utf8/role.php   Rev. 1.80    (+8 -1 lines)
MODIFY ja_utf8/README   Rev. 1.867    (+1 -1 lines)
Tim Hunt made changes - 18/Nov/08 04:09 PM
Resolution Fixed [ 1 ]
Status Open [ 1 ] Resolved [ 5 ]
tjhunt committed 10 files to 'Moodle CVS' - 18/Nov/08 04:10 PM
manage roles: MDL-8313 Provide a basic mode for the manage roles page.

* New basic define roles mode, with just an Allow checkbox for each capability.
* Button to toggle this form to/from advanced mode.
* Also, a separate mode for viewing a role definition, rather than just showing disabled checkboxes.
* Now duplicating a role just takes to you a pre-populated add role form, so you can double-check things before saving the new role.
* Deleting a role is now logged.
* Role reordering code cleaned up.
* You can now no longer delete the last role that has admin permissions.
* This includes a general refactor of manage.php, which eliminates manage.html, and splits of define.php.
DEL admin/roles/Attic/manage.html   Rev. 1.45    (+0 -0 lines)
MODIFY admin/roles/manage.php   Rev. 1.69    (+166 -537 lines)
MODIFY lang/en_utf8/role.php   Rev. 1.76    (+6 -1 lines)
MODIFY theme/standard/styles_fonts.css   Rev. 1.166    (+1 -2 lines)
MODIFY theme/standard/styles_layout.css   Rev. 1.634    (+10 -13 lines)
MODIFY admin/roles/define.php   Rev. 1.2    (+82 -275 lines)
MODIFY theme/standard/styles_color.css   Rev. 1.188    (+1 -2 lines)
MODIFY lang/en_utf8/error.php   Rev. 1.143    (+4 -1 lines)
MODIFY admin/roles/lib.php   Rev. 1.7    (+311 -47 lines)
MODIFY lib/accesslib.php   Rev. 1.538    (+58 -74 lines)
tjhunt committed 1 file to 'Moodle CVS' - 18/Nov/08 04:53 PM
manage roles: MDL-8313 improve wording.
MODIFY admin/roles/manage.php   Rev. 1.70    (+2 -2 lines)
tjhunt committed 3 files to 'Moodle CVS' - 18/Nov/08 05:08 PM
manage roles: MDL-8313 fix bugs with safe overrides.
MODIFY admin/roles/lib.php   Rev. 1.8    (+2 -2 lines)
MODIFY lib/accesslib.php   Rev. 1.539    (+2 -3 lines)
MODIFY admin/roles/override.php   Rev. 1.63    (+3 -3 lines)
tjhunt committed 3 files to 'Moodle CVS' - 18/Nov/08 07:18 PM
manage roles: MDL-8313 face lift allow override/assign, and add securtiy checks!
MODIFY admin/roles/Attic/allowassign.php   Rev. 1.18    (+54 -63 lines)
MODIFY admin/roles/Attic/allowoverride.php   Rev. 1.19    (+53 -61 lines)
MODIFY admin/roles/manage.php   Rev. 1.71    (+1 -2 lines)
tjhunt committed 3 files to 'Moodle CVS' - 18/Nov/08 07:33 PM
manage roles: MDL-8313 face lift allow override/assign, add labels and tooltips to the checkboxes for usability and accessibility.
MODIFY admin/roles/Attic/allowoverride.php   Rev. 1.20    (+8 -2 lines)
MODIFY lang/en_utf8/role.php   Rev. 1.77    (+3 -1 lines)
MODIFY admin/roles/Attic/allowassign.php   Rev. 1.19    (+8 -2 lines)
Mitsuhiro Yoshida committed 4 files to 'Lang CVS' - 21/Nov/08 10:06 AM
MDL-8313 MDL-16966 Translated new strings for error messages and role.
Japanese translation 6 year anniversary :-)
MODIFY ja_utf8/moodle.php   Rev. 1.329    (+2 -1 lines)
MODIFY ja_utf8/error.php   Rev. 1.104    (+4 -1 lines)
MODIFY ja_utf8/README   Rev. 1.871    (+1 -1 lines)
MODIFY ja_utf8/role.php   Rev. 1.81    (+13 -4 lines)
tjhunt committed 1 file to 'Moodle CVS' - 24/Nov/08 05:19 PM
override roles: MDL-8313 followup - don't show capabilities you can't change the override of in basic mode.
MODIFY admin/roles/lib.php   Rev. 1.15    (+5 -1 lines)
martignoni committed 2 files to 'Lang CVS' - 30/Nov/08 04:07 AM
MDL-8313 More strings added
MODIFY fr_utf8/error.php   Rev. 1.148    (+4 -1 lines)
MODIFY fr_utf8/role.php   Rev. 1.98    (+6 -1 lines)
martignoni committed 1 file to 'Lang CVS' - 30/Nov/08 04:10 AM
MDL-8313 More strings
MODIFY fr_utf8/role.php   Rev. 1.99    (+3 -1 lines)