[Modules] Publish / Unpublish ALL Option

This idea has been developed and deployed to Canvas

Instead of having to click every single item in a long list to Publish or Unpublish them all, it would save a lot of time if we had the option to "Publish All" or "Unpublish All". It would be even slicker if we could select or highlight a large group of multiple items (though not necessarily all of them) to publish or unpublish all at once.
121 Comments
augustone1998
Community Member

How do you do this exactly? When I unpublish a module, and mess with each item, it still publishes everything. 

augustone1998
Community Member

I want to thank Canvas for my 300 clicks this morning and 15 minutes wasted!!!!!! Happy school year.

fisher1
Community Contributor

 @david_eargle ‌,

Thanks for the great workaround!

I've combined your solution with a delay of 5 seconds between each command:

$('.publish-icon-publish').click();
window.setTimeout(
function() {
$('.publish-icon-published:not([data-module-type="module"])').click();//happens 5 secs later
},
5000
);

The only bummer is that all the notifications for "Content" being published still come through...the perfect solution would be to find a way to stop the Module publish button from publishing all the Module items.

kmeeusen
Community Champion

Funny, but true,  @fisher1  - When Canvas first came out, when you published a module it did not publish the content in the module. Community users requested a change in that behavior - lots of them - and Canvas made it so. Now, just a few years later, many users are asking to go back to the original functionality.

I suspect what is needed is a pop-up checkbox when publishing a module that lets the user choose between those two options.

Kelley

olsonhum
Community Member

This just happened to me too. I unpublished every element in a module. Then, I was playing around with publishing/unpublishing the module overall, and when I "re-published" the module, every element I had *tediously* unpublished within that module was again published. It amazes me that 1) this "error" (which is what I consider it) occurs, and 2) that Canvas, as widely used as it is, does not have a way to batch publish/unpublish items. I find a lot of features of this LMS disappointing (our school is currently converting from D2L and I personally do not see the advantage of Canvas - it creates numerous headaches that D2L never had).

olsonhum
Community Member

This is EXACTLY the reason I want this too! I'm not going to reinvent the wheel each semester, but having to manually unpublish everything is pretty close...

olsonhum
Community Member

This seems like a very basic ask for such a widely-used LMS platform. It surprises me that it wasn't in place the day Canvas debuted.

olsonhum
Community Member

Totally agree. It's unacceptable, really. I don't know how much my institution pays for this software, but I'm quickly beginning to think it's too much.

hasti
Community Champion

Sounds like Canvas was a lot more responsive to user requests for changes when it had a small more homogenous user base. Maybe now that they've grown they could start to be responsive to their new larger user base, including those of us with huge classes and large Canvas sites.

I would love anything that would give me some control over this!

lukamtow
Community Novice

$('.publish-icon-publish').click()

And


$('.publish-icon-published:not([data-module-type="module"])').click()

Are godsent but doesn't seem to work with files. I've been relying on Python Selenium automators to unpublish 320 files manually in the modules page. If anyone has a better idea I'm all ears.