User Script to Bulk Copy Course Announcements

- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
This is a user script that allows teachers to bulk copy announcements from one of their courses to another course(s). This process will create the announcements as the user using the script so the copied announcements will also show them as the author of the announcement rather than it showing as an unknown author. This user script is based on our own feature, but has some slight modifications to make it more applicable to other schools. You can get an overview of how the feature works by reviewing our documentation to Copy Announcements into a New Course. *Note: This user script was just updated to support selecting multiple courses to copy to after feedback from the Instructure Community Canvas Developers Meet-up. We will update our documentation to include this after we launch this enhancement to our users too.
To use the user script, you will need to use a tool for loading user scripts (such as TamperMonkey Chrome Web Store Listing) or add it as a part of the theme in your Canvas environment (if you are an Account Admin). If using a tool for loading user scripts, be sure to update the @match web address (as needed) on line 7 in the header comment. Users using the Canvas hosted domain name shouldn't need to make any adjustments. The Bulk Copy Announcements Raw Source Code will need to be installed for use with your tool for user scripts or added to your JavaScript Canvas theme file. *Note: There are some config variables towards the beginning of the script that you can update if you need to personalize some of the colors/naming conventions more for your school.
Additional Details for Users
- The same delayed post date/time setting is applied to all selected announcements. You can edit this in the destination course(s) after you complete the copy. I have it in my dev queue to enhance this further to provide an option to set a different delayed post date/time setting for each selected announcement.
- The special copy process for embedded content temporarily creates a page in the current course with the content of the announcement message and uses the native Canvas copy feature to copy this to the destination course(s) to associate the embedded LTI content with the destination course(s). These pages are deleted after they copy is complete. This requires permission to create/delete pages in the course for this process to work.
- You will need to wait for the copy process to complete fully before closing the dialog and/or leaving the page. Closing the dialog and/or leaving the page may cause the process to not complete fully and you will need to copy any content that didn't finish and clean-up any temporary pages that were created and not deleted.
This user script is part of the new Wilmington University Ed Tech Systems - Shared Custom Developments Repository. It is recommended to review and test the code before using it. Be sure to check with your school administration/IT staff before using any user scripts in case they have security and/or review guidelines that must be followed before use.
Change Log
- v.2.1.0
- After the copy process completes, it unchecks and hides the previously selected courses to copy to. This is to help avoid accidentally copying the same announcements to the same course(s) again.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.