Make course importable by all users

Make course importable by all users

by Chiara Di Terlizzi -
Number of replies: 8

Hello. I noticed that when importing a course into another, the teacher can only pick from a list of the courses he already teachs.

How can I set some courses to be seen from all the users when choosing the course to import data from (in the list titled "Find a course to import data from:")?

You'd say I want to mark some courses as "templates". I am aware of template courses plugin, however it works only when you are creating the course. I need this to work while the course is already running.

Thank you all,

Chiara

Average of ratings: -
In reply to Chiara Di Terlizzi

Re: Make course importable by all users

by Randy Thornton -
Picture of Documentation writers
Chiara,

You can do this by changing a couple of permissions, specifically:

Backup for import (moodle/backup:backuptargetimport) --> Allow
Restore from files targeted as import (moodle/restore:restoretargetimport) --> Allow

The first capability allows them to create the backup for the import and the second one allows them to do the restore from that, because Import is really a limited type of Backup/Restore process.

If you want all teachers to be able to do this, then you could set those two to Allow for the default Teacher role. That will enable a Taecher to choose to Import from any course.

If you only want selected users to be able to do this, rather than all Teachers, then you could create a new role, at the System level, with those two permissions set in it, and then only the users you Assign to that system role would be able to use it.
In reply to Randy Thornton

Ri: Re: Make course importable by all users

by Chiara Di Terlizzi -
Hi Randy, thank you.
So changing these permissions will result in teachers viewing all the courses in the platform, or there are permissions at course level? Cause I don't want all the existing courses to be listed, only some specific courses.
In reply to Chiara Di Terlizzi

Re: Ri: Re: Make course importable by all users

by Randy Thornton -
Picture of Documentation writers
This only affects the Import process, not any other view of courses, but yes, it allows them to pick from any other course in the system for Importing. The permission belongs to the person, the role, rather than the courses.

If you need to have them only choose from specific courses, then this will not limit that. If that limited set of course are in the same category, it might be possible to set this up in some way as a Category level role? I have not tried to do that, so am not sure.
In reply to Randy Thornton

Re: Ri: Re: Make course importable by all users

by Randy Thornton -
Picture of Documentation writers
This also works at the Category level is you make this role a category level role. Then the user will be able to import from any courses in the categories where they have this role and permission.

This also works at the Course level, if you then enrol the user in the target courses you want to import from, and only those courses will be on the list. They will not be teachers in the courses, just able to import from them. But it does mean that the courses show up on the list of courses they are enrolled it, which could be confusing.
In reply to Randy Thornton

Ri: Re: Ri: Re: Make course importable by all users

by Chiara Di Terlizzi -
Yes, exactly, I don't want to enrol all teachers in the template courses because I don't want them to have them in their course enrolment list.

I am trying to do as you suggest. I created a new role "importer" and set the following:
-Context types where this role may be assigned: Category

Then I go into the course category "Template" -> assign roles. The Importer role is in the list and I click it.
But now, I can onli search for specific users and assign them the role. Do I need to create something like a global group to select all my teachers?

A thousand thank you.
In reply to Chiara Di Terlizzi

Re: Ri: Re: Ri: Re: Make course importable by all users

by Randy Thornton -
Picture of Documentation writers
So far, so good.

Now you need to add the users to the category role. So in Manage courses and categories, for that category click the gear icon and choose "Assign roles." This works very similar to the way that the Assign system roles does, just it assigns roles only for that category (and its subcategories).

Then go into a course as one of those users you have assigned that role, and try to Import something: you should now be able to choose from the courses in that category as well as any courses the user is actually enrolled in.
In reply to Randy Thornton

Ri: Re: Ri: Re: Ri: Re: Make course importable by all users

by Chiara Di Terlizzi -
Yes, I already did it and it works. However I still have to pick single users to add them to this role and I don't know how to execute a massive action.
In reply to Chiara Di Terlizzi

Re: Ri: Re: Ri: Re: Ri: Re: Make course importable by all users

by Randy Thornton -
Picture of Documentation writers
Ah,

It is unfortunate that the User upload tool does not know how to assign category level roles in the same way it does system level roles, which would have been an easy way to do this. But there is no existing tool that I know of to assign category level roles en mass.