Assigning students to individual course resources

Assigning students to individual course resources

by Dmitri Pisarev -
Number of replies: 11

Hi!

I'm using Moodle 3.5.

I need to be able to assign some students to only individual resources in the course, so all other resources will be hidden for them.

E.g. I have a course with a couple of resources. User A should be able to see all the resources, as usual. User B should only be able to see a few resources which are explicitly allowed for him.

What I tried to do:

1. Assign the Student role only for the particular resource, and not to the whole course. Failed to do that, as the user was not available in the possible users selection until he was assigned to the course itself.

2. First assign the Guest role to that user in context of the whole course. Then I was able to assign the Student role for that user in context of the particular resource. Then I explicitly prohibited "mod/resource:view" for role Guest, and allowed it for the role Student. No luck, the needed resource is still not visited, and not even accessible by its url.
edit: If instead of "prohibit" I use "Prevent", that for some reason doesn't stop all resources from being viewable in the course.

Please help, I desperately need this kind of functionality!

Best regards,
Dmitri

Average of ratings: -
In reply to Dmitri Pisarev

Re: Assigning students to individual course resources

by Mary Cooch -
Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Testers Picture of Translators

Do it in a different way. Use the Restrict access feature. (Click that link, and also the Restrict access settings link.  For the resources you don't (or only) want the student to see, set the condition according to something in their user profile, such as their email.

In reply to Mary Cooch

Re: Assigning students to individual course resources

by Dmitri Pisarev -

Dear Mary, thanks a lot for your answer!

I don't think the Restrict access feature would work out nicely in this case.

Imagine I have 100 users that are signed up to the course with 100 resources in it.

Now I need 1 user to be able to view only 1 resource.

In order to achieve that, I'd need to go through 99 resources and create a restriction rule to ban that particular user (say by email). That'd be a lot of work...

Or is there something I don't get?

In reply to Dmitri Pisarev

Re: Assigning students to individual course resources

by Rick Jerz -
Picture of Particularly helpful Moodlers Picture of Testers

Dmitri, little by little I might be seeing what you struggle with.  Yes, let's assume a course with 100 resources in it.

Here is what I do, which may or may not apply to your own specific needs, but might help with your thinking.  

First, I group resources and activities by topic.  In a typical course, I might have around 15 topics each with around 6-8 resources/activities.  (You can see where I get my 100.)

Next, I never turn on all the topics at one time.  Each week I make a new topic "visible."  In this method, I am trying to "pace" learning.  I do agree that if I had turned on everything at the beginning of the course, it would overwhelm students.  So at the beginning of my courses, students only see about 5 items in the common "top" block, and around 5-7 items in the "week 1" block.

Last, I do use the  "collapsed topics" add-in, and I show student how to "collapse" topics that we have finished.  So I leave some of the cleanliness concerns up to the student to manage.  At the end of the course, if a student decided to un-collapse all topics, they would be able to sit back and appreciate all of the things that they have done, and learned, in this course.

Two more things worth mentioning.  I do "highlight" the current topic.  I also use Moodle's "activity completion" feature which allows students to check-off items that they have completed.  This helps students manage their own position within a course.

Below is a screenshot of how this works in one of my courses.


Attachment Topics.png
In reply to Rick Jerz

Re: Assigning students to individual course resources

by Dmitri Pisarev -

Dear Rick, thanks for your reply!

That was of course an exaggeration about having 100 assets in a course. Typically it's about 10-15.

But even for course with 15 assets it would be a lot of extra error-prone work to explicitly disallow them for that certain user.

Semantically I want something as simple as just assigning a particular user to a particular asset.

In reply to Dmitri Pisarev

Re: Assigning students to individual course resources

by Mary Cooch -
Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Testers Picture of Translators

Well you can restrict topic sections; you don't have to restrict individual resources.

In reply to Mary Cooch

Re: Assigning students to individual course resources

by Dmitri Pisarev -

Hi, Mary!

Yes, if I could restrict a student to an individual section that would also do (we generally have 1 resource per section). But the problem is, as I've described in the previous reply, is that it's not possible without explicitly banning the given user from all other sections, which is a cumbersome work.

So do you know of a straight-forward way to limit a user to only one section, without changing anything in the other sections?

Thanks!

In reply to Dmitri Pisarev

Re: Assigning students to individual course resources

by Rick Jerz -
Picture of Particularly helpful Moodlers Picture of Testers

Well Dmitri, I wasn't kidding about 100 resources/activities in my courses.

We sometimes call this problem "the scroll of death."   And this becomes the challenge: How do you organize a course so that it is not 50 web pages long (especially with the current scroll-down web page interface that we more commonly see.)

I run pretty simple "sequential" learning courses, such as Business Statistics.  There are many things that students need to do, but they do them sequentially.  There are some topics that lend themselves to the non-sequential pedagogy.

In reply to Rick Jerz

Re: Assigning students to individual course resources

by Dmitri Pisarev -

Yep I agree, that's a pretty good strategy and sometimes we use it too, it's just not what I'm looking for right now.

In reply to Dmitri Pisarev

Re: Assigning students to individual course resources

by Dmitri Pisarev -

Meanwhile I was able to solve the problem, albeit in a bit hackish way:

- Authenticated user: "mod/resource:view": Prohibit

- Student: "mod/resource:view": Allow

Now I can enroll those students that only need access to some resources with Role Guest to the whole course, and assign them the role Student for particular files.


Currently I only need to limit access to files, so the above solution would do for me. However, I would love to be able to do something similar to sections/topics in the future, but I couldn't find any similar role to limit _viewing_ of sections. Is there any?

Alternatively I could make all sections as hidden and override "moodle/course:viewhiddensections" instead, but I'd love to have a little less hackish...

EDIT: duh, that will not work, since it's only possible to assign users to individual resources, not to individual sections.

So I guess if there are no better solutions this question can be marked as solved. It's really too bad that it's not possible to assign students to individual sections, but at least it works for resources.
In reply to Dmitri Pisarev

Re: Assigning students to individual course resources

by Dmitri Pisarev -

Btw, how do I mark this discussion as solved?

In reply to Dmitri Pisarev

Re: Assigning students to individual course resources

by Rick Jerz -
Picture of Particularly helpful Moodlers Picture of Testers

Your post is good enough.  Anyone reading this discussion will know.  There is no need to make it "official."  Also, who knows, maybe you or others will revisit this in the future.  It's been good discussion.