Admin Control to Lock Course Starts and Ends Dates

Canvas Admins need the ability to lock course Starts and Ends dates from teachers at the account level without using unsupported custom Java Script.
Heart Please show your Canvas Admin some love and VOTE UP now! Heart
Need more details?....then read on...
The Issue: Teachers and school administration need all students to have similar experiences. 


Here are four scenarios that occur without control of the Course Dates:


1) Let's say the math teacher changes their Course Starts date to 2 weeks before the Term starts, but the biology teacher leaves the Course Starts date blank.  Student A can see their math course, but Student A cannot see their biology course. Student A will contact the Canvas Support to find out why they cannot see their biology course.  
2) Let's say Student B and Student C are friends take accounting 101 but not in the same section.  The section one teacher has changed the course Starts date to one week before the Term Date.  Student B can see their accounting 101 course but Student C cannot see their accounting 101 course. Student B has an advantage already over student C. Furthermore, Student C contacts Canvas Support to find out why they can't see their class.


3) Let say the teacher has accidentally changed the dates to be a 1-day course. See the screen capture below. The 30 students on day three are not able to see the course on their dashboard anymore and all contact Canvas Support.
Course dates are incorrectly entered
4) Let's say a new teacher has imported course content from a fellow seasoned teacher choosing the wrong dates for Adjust Events and Due Dates and now the course dates are two years outside the Term Dates. The teacher is not able to see the course on their dashboard and make a call to Canvas Support.  The course is off to bumpy start.:smileyplain:
:smileycheck: If you've experienced any of these scenarios please VOTE UP now.
Still need more persuasion?... keep reading...
The Problems with Controlling Courses:
1) The hierarchy of control of the course dates is confusing.  
Course, Term, and Assignment dates are confusing
I've gathered the guides and links below to try to understand the control of Course Starts and Course Ends dates. These guides are related to Term Dates, Course Start and Ends dates, Assignment Dates, and Copy/Import Course Content. If I have missed any please post them in a comment.

:smileycheck: If you find this documentation confusing VOTE UP now!

If you need more convincing...there's more to read...

2) The only way to remove teacher access is by using Custom Java Script which is NOT supported by Instructure. 

No more unsupported java script

Twice in the past year Canvas has made changes that has broken our custom Java Script. I submitted tickets with a cry for help, "Please provide us with the JavaScript object path to the Course Starts and Course Ends and their date pickers on the course Details tab within Course Settings."  
This is the response I received:

  " Hi all,
Thank you for contacting Canvas Support. Happy to help!
I have taken a look into this and I regret to inform that the JavaScript requested is not within our scope of Canvas Support.
In order to get assistance with CSS and JS, please access GitHub as these are not supported by Canvas Support.
I apologise for the inconvenience this may cause you.
If you have any further questions or anything else you need help with, please do not hesitate to contact us by replying to this email.
I look forward to hearing from you!
Have a great day!
Marco - L1 Tech Support
:smileycheck: If you struggle with custom Java Script in Canvas VOTE UP now! 
:smileycheck: If you don't know Java Script VOTE UP now!
The Solution
The solution could be a checkbox on the Term Details page, see mock-up below.
Force Dates
Or, the solution could be on the Account Settings page, see mock-up below.
Or, it could be how the Awesome Instructure Engineers design it!
:smileycheck: If you like any of these possible solutions and VOTE UP now! 

If I haven't convinced you to VOTE UP by now, and you made it all the way here at the bottom you deserve to be apart of this Idea. 


copying a course course not appearing transfer sample course to actual course course not on dashboard manage course course overrides accessing course where is my course
higher ed canvas admin admin issue power admin term dates course term term date term settings enrollment term assignment visibility due dates due date java script javascript ui hacks javascripts custom javascript guides incomplete guides community guides search canvas guides teacher dashboard not on dashboard course not on dashboard courses not on dashboard courses disappear from dashboard student dashboard dashboard  @sphinney   @tamara_becker  Canvas Admins


This idea has been developed and deployed to Canvas


For more information, please read through the  Canvas Deploy Notes (2021-04-14).

Instructure Alumni
Instructure Alumni

 @tamara_becker ‌, we've opened the idea for voting. It is one that has been suggested in the past (for those who would like to view the now-archived idea, please join the Cold Storage‌ group to view" modifiedtitle="true" title="Permission Addition to Lock...), but it did not receive robust support during its voting cycle. As time passes, priorities change, so perhaps your newly submitted idea will meet with stronger sentiment in this new round of voting.

Also, the images in the idea description are broken; if you'd like prospective voters to see them, please take a moment to edit the idea description and upload the image files directly.


Community Contributor

I currently maintain our custom JavaScript & CSS to hide these options (as well as several others like Delete This Course or Reset This Course buttons) from instructors & as you mentioned above, it is a serious pain in the rear to maintain with every browser update!

Community Champion

 @tamara_becker ,

Thanks for the very detailed, informative and entertaining post!  I voted up!  

I don't really like the fact that when we need something they suggest we do a Java Script to obtain what we need BUT when we need help their response is it's Unsupported and they can't help!!!  GRRRRR!

Good luck with this feature request, we too have issues with this.

Community Champion

 @tamara_becker ‌, thanks this is quite detailed!  These are great use cases!

Speaking of workarounds, in addition to hiding the boxes, we have another issue related to this.  The start date gets populated when they choose to adjust dates.   And, thanks to an update in the last year or so...even if we hide the dates, the wrong start date will still be there affecting student access - whether the box is checked to restrict_enrollments_to_course_dates or not!  

So, I'm working on a script right now that we will run on a schedule.  It will:  

1.  Query Canvas Data for courses with Start and End dates that meet certain criteria (given term, actual academic course and not a training or other resource site)

2.  Iterate through the query results and if there is a start or end date, run an api call to update the start and end dates to be blank, and change the restrict_enrollments_to_course_dates to false.  

Thanks for posting this!

Community Champion

  @Renee_Carney ‌:  Are any of the many newly-hired developers going to giving admins a little love? 

Maybe give us more control over user behavior and modernize our interface to make it more user-friendly? 

Maybe as a gift from the Christmas Panda???  

Christmas Santa Panda

Community Participant

I would add to also include the box at the admin level, so that admins can check the box or uncheck as needed for their institution.

"Students can only participate in the course between these dates."

Community Participant

"but it did not receive robust support during its voting cycle."

Yes because there is not many admins compared to student and faculty users. things like this really need to be looked at instead of dismissed due to the number of votes it receives. 

Community Participant

In the 3-20-2021 Release notes, there is an enhancement to the Course availability date on the Course Setting page.  While this won't present a huge problem for us because we have not used code to turn this date off for our instructors, I agree with other institutions that there should be a way to turn this off in permissions somewhere.  Our institutional policy is that the courses close to all students and faculty at the end of each Term. We control those dates on the TERMS page in Canvas. But it is overridden by instructors continuously even though we ask them not  to change these dates in the setting page. Even when they don't click the box below the dates that says:

"Students can only participate in the course between these dates.
When selected, the course is in a read-only state outside these dates."

The dates in the field affect course access for students. Please help us maintain control over the access to these courses without us having to check through the courses to make sure the dates have not been over-ridden.



Instructure Alumni
Instructure Alumni
Status changed to: Open
Community Participant

Hi there, I very much tend to agree that the hierarchy of dates in Canvas is confusing. So confusing that many institutions do have to resort to custom code to maintain a level of control of student access. I support any idea that makes this 'kinder' to admins and support teams, without negatively impacting student access.