"Human Usable Backup"

"Human Usable Backup"

by Julen Pardo -
Number of replies: 4

Hi all,

We want to develop a system that allows the students (and also the teachers) to download all the contents of the course at once. Many students like to have Moodle course's content locally, structured in directories, and downloading all the contents one by one is quite tedious.

We've thought in a plugin, but the problem is that we don't find a type of plugin for this idea that convinces us at all, even if they could do the work. But, any of them makes us think "Oh, this is what we are looking for".

In other words: we don't know how to show it in Moodle.

These are the ideas that we have though:

  • A course format, which would have a button on the top, to download the contents. The problem with this is that every type of current course format (topics format, weekly format, etc.) would have to have its equivalent with this feature.
  • A block, each course would have a block which would allow to download the contents. This would work, but, our idea of block is for dynamic contents. Having a block with always the same content would be boring, wouldn't it? Other possibility would be a block only for user profile, but, honestly, users almost never go to the profile. But this would probably be the most manageable solution.

And these would be the most painful ones, which implicate the modification of the core:

  • Add an option in course administration navbar to allow this.
  • Integrate it with the existing backup system. In this case, the system would have to ask for which of the types is wanted to make the backup, the traditional one, or this.

Do you have any idea of which would be the most suitable format to show this feature in the courses?


Best regards,

Julen

Average of ratings: -
In reply to Julen Pardo

Re: "Human Usable Backup"

by Mark Johnson -
Picture of Core developers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers

A block seems sensible to me; You need something that exists within the course context, performs a function within that course, and can display a control on the course page.  Block ticks all of those boxes.  Having a block displaying a download button wouldn't be any more "boring" than displaying the button at the top of the course page, IMO, and using a course format to add a feature like this seems like overkill.

Average of ratings: Useful (1)
In reply to Mark Johnson

Re: "Human Usable Backup"

by Julen Pardo -

Hi Mark,

Many thanks for sharing your opinion.

We also think that the block is the best solution of those, but we also think that it would take to much space taking into account its purpose. So we were wondering if it exists any other suitable option.

But yes, seems that it will probably be a block.


Best regards,

Julen

Average of ratings: Useful (1)
In reply to Julen Pardo

Re: "Human Usable Backup"

by Rex Lorenzo -

We developed a block that is similar for our University. You can see the documentation here: https://docs.ccle.ucla.edu/w/Bulk_download_course_materials_as_a_zip_file

It isn't really in a sharable form, since we have it tightly integrated with our theme/format. But I can shoot over a zip of what we have if you have someone who can dig through it.

Some things to be aware of:

  1. It is hard to get "all files". Our implementation just deals with course resource files. We found it hard to get all files, such as those inside labels, forums, etc.
  2. Need to make sure that the files inside the zip are generated per user, because each user can potentially see a different set of files depending on their capability and if the course uses conditional activities
  3. Need to be careful of file size limits, because a very large course will either take a long time to create or crash during the zip process.
Average of ratings: Useful (2)
In reply to Rex Lorenzo

Re: "Human Usable Backup"

by Julen Pardo -

Hi Rex,

Thanks a lot for sharing your experience and thougts.

Our main idea, for now, is to focus on resource files, and then consider the possibility of adding pages, books, etc.

I was aware about the capabilities of the users to access the files; an improper management could lead to dangerouse leaks...


Many thanks for answering,

Julen