openwebwork / webwork2

Course management front end for WeBWorK
http://webwork.maa.org/wiki/Main_Page
Other
145 stars 165 forks source link

Make the LMS Context ID configurable via the course configuration page. #2392

Closed drgrice1 closed 5 months ago

drgrice1 commented 6 months ago

This setting requires its own special ConfigObject submodule. To make this work well, the ConfigObject setup needed to be changed a bit. Settings from the course settings table also now have their own ConfigObject submodule (the courseTitle is the only setting that uses this though).

A new series of permissions controls all configuration settings. Each setting has its own permission. Each of these permissions have the form change_config_[var]. Note that the user must also have the permission modify_problem_sets to change configuration settings. If a configuration option is not specifically set for a setting, then the modify_problem_sets permission alone is sufficient to change a configuration setting. The only one of these permissions that is set by default is change_config_lms_context_id, and that is set to admin.

So the previous setting_table_courseTitle would now be change_config_courseTitle. That is not set by default since that is the same as modify_problem_sets, and so there is no point in it being set. However, there is an example of it in defaults.config.

drgrice1 commented 5 months ago

There was one change that didn't get into #2393. That is a change to the help text for this setting. So this pull request is now really only that fix.

pstaabp commented 5 months ago

Reviewed the help text. Looks good. Will merge.