Limit access to Course Settings access
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi there, I was wondering if anyone knew how to turn off the ability for TAs and Teachers to access and change the course settings. I can't see this anywhere in the permissions.
Our institution has set content and processes so we do not want anything in the settings to be changed by people other than admins. Any help appreciated.
Thanks
Cameron
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Are there specific course settings you're looking to disable? I don't think there is a way to disable it completely. I would first check the Canvas Permissions Documentation to see if some of the permissions can be disabled on a particular role to suit your needs.
Our institution had to restrict the ability for Teachers/TAs to access the Course Start/End Date fields and the Visibility Settings for each course. There were many issues discovered (which are too sensitive to go into detail for a public post), and this ability was a violation of some of our institution's policies. So we asked Instructure to create some custom JavaScript to hide these fields from anyone without an Admin role. I've posted it below. We're also considering hiding the 'Reset Course Content' button, so instructors have to call support to reset their courses completely.
$(document).ready(function () {
// Begin hiding settings from instructors at the course level
if(window.location.pathname.match(/^\/courses\/\d+\/settings/) && ENV.current_user_roles.indexOf('admin') < 0) {
$('label[for=course_start_at]').parent().parent().hide();
$('label[for=course_conclude_at]').parent().parent().hide();
$('label[for=course_public_syllabus]').parent().parent().hide();
$('label[for=course_is_public]').parent().parent().hide();
$('label[for=course_is_public_to_auth_users]').parent().parent().hide();
$('label[for=course_indexed]').parent().parent().hide();
}
// End hiding settings from instructors at the course level
});
I hope this helps. I would test it in your test instance prior to pushing it to production. (You have to upload it in the Theme Editor for the Root Account). You could take this code a step further and hide additional items in the Course Settings page. Or, you might be able to modify it to hide the 'Settings' button in the left-hand nav completely, from anyone other than an Admin; however, I would discuss this option with an Instructure Implementation Consultant before proceeding.