Adjust all assignment and quiz dates on a single page

The Problem:

Managing dates one item at a time is tedious when you are planning an entire semester. This is true for new classes, but also for existing classes since the ability to globally adjust imported dates never works for the way my institution designs new semesters.

 

I would like a spreadsheet format that shows all date related events on one page. I could then set up all events and synchronize them where necessary. This could be an online form, or the ability to download a csv template and reupload the dates.

 

I have attached a simplified snapshot of this kind of spreadsheet.

This idea has been developed and deployed to Canvas

Please read through the Ready Release Notes (2020-04-18) 

172 Comments
kansalak
Community Explorer

Thanks for sharing Due Dates API. It is simple and saved lot of time. Is there any easy way to change properties of quizzed for not allowing students to see their responses? I am beginner for API please share the auto script files which are easy to run.

Thanks

Ajay 

James
Community Champion

 @kansalak ​,

The best way to do this if you're not a programmer is to go through the web interface.

It is possible to create an interface that puts all of the options into tables with one quiz or assignment per row and all of the options across the top in columns. However, the options for quizzes are sometimes different from the options for assignments, so there would need to be two sheets. The options build off each other and Canvas has taken the time to make sure that you don't choose conflicting options. Writing the code to do that in a table form would be horrific and essentially duplicate the work of Canvas. For that reason, you might be able to add little things like publishing or not, but I wouldn't try to go much further.

Another option is to write some code that loads all of the quizzes and changes that one setting for each of them. That doesn't have to be done inside Google Sheets, it could by any programming language.  That would be a much simpler program to write. Still, it is time consuming and probably not worth the effort unless you have a huge number of quizzes. Even though I've written a bunch of those, a small and "simple" program like that would probably take me at least an hour with the testing and documentation and someone can sit there and click on a whole lot of quizzes in that amount of time.

kansalak
Community Explorer

Thanks James, is there any documentation or google api available for changing quiz property for a course without going into the course.

shannon_gillila
Community Member

Having a set due dates page, to be able to edit due dates for all graded assignments for an entire semester would save a great deal of time. Hope Canvas will make this happen.

kansalak
Community Explorer

This will definitely make putting due date easy. Recently I found a google spread sheet in which you can import due date and modify on one page.

QC99_tsilvius
Community Champion

Hi  @James ​. I tried using your sheet in the past and it worked great, but as I'm trying the configure API menu option I'm getting prompted only for signing into a Google account. I'm not sure how to get to the screen I know I saw in the past where you describe how it asks for my token. Any thoughts? Thanks in advance. Todd

James
Community Champion

QC99.tsilvius​,

Any chance you're using an old copy from before Jan 9, 2016. The sandbox mode that I was using before then using was sunset on July 6, 2016, meaning it won't work anymore. You'll need to make sure you have the revised version.

I just made a fresh copy of the spreadsheet using the revised instructions above and it worked fine for me (I stopped testing once I had loaded my due dates, but that's well past the point you described not being able to get to).

James
Community Champion

QC99.tsilvius​,

If the version is current, the next thing I would try is to make sure that your token hasn't expired. To do this, go into Canvas and choose Account > Settings. Scroll to the bottom and look for Approved Integrations.

If it is expired (or you just want to try things hoping it will stick) you can choose Configure API Settings from the Canvas menu within the spreadsheet.

But the easiest solution is hopefully just to make sure you're using Chrome, make a new copy of the spreadsheet, and follow the revised instructions (not the original ones).

QC99_tsilvius
Community Champion

 @James ​, Thank you for the replies. I logged out of both of my google drive accounts (I'm thinking that might be one of the reasons I was getting Google account selections instead of domain and token fields on the pop-up) and success! The sheet is working just as you described and as I remembered it working. Thank you again for sharing this with us all.

Todd

QC99_tsilvius
Community Champion

 @James ​,

This year we're trying Grade Passback with our SIS integration, but according to the rules and regs of using Grade passback all assignment names need to be under 30 characters in length. Using your sheet I can now help our teachers...

  1. to load their courses with assignment names in colA.
  2. Then using conditional formatting all Assignment names that are >30 characters are highlighted.
  3. Working with the teacher I can edit the file name directly in ColA.
  4. Once the name is <30 characters the conditional formatting is removed.
  5. Selecting "save the due dates" from the Canvas menu pushes up the name changes to that Assignment using the identifier in col'i" as well as due date info.

Due dates can be changed AND file names can be edited to conform to the SIS Grade Passback conditions thanks to your talents, development, and willingness to share here.

For anyone unfamiliar with conditional formatting in a gDoc here are the steps you can take to highlight your assignment names with lengthy character counts to be brought down under 30 characters in size:

  1. Select the entire colA for your range
  2. Under Format cells if... select "Custom formula is"
  3. Type in the formula for this conditional formatting rule:  =IF(LEN(A1)>30,TRUE,FALSE)
  4. Leave formatting style as is or change.
  5. Click done to see which file names in colA need to be shortened.

As I think about supporting teachers with this I could see situations where I'm not sure about the teacher's comfort level editing a gSheet with this information on it. If that's the case I can easily...

  1. download the gSheet as an Excel file
  2. and email it to a teacher to preserve the conditional formatting.
  3. They can edit the Excel sheet. When they email me back the updates I can
  4. reload their Canvas class into the gSheet,
  5. double-check their data revisions,
  6. paste it overtop of the re-loaded data from the course,
  7. then send the revisions back up to Canvas.

This tool has such a value for Grade passback as well as due date changes.

Thank you once again, James.

Course_Due_Dates_and_Assignment_Names_for_Passback_-_Google_Sheets_and_Untitled.png