last week I asked http://moodle.org/mod/forum/discuss.php?d=77469 and John Isner said that people will see the same thing once inside my site. Fair enough... maybe.
Michael Nolast asked this not long ago: http://moodle.org/mod/forum/discuss.php?d=76493 which sounds similar.
Sorry for raking over old ground a little. I want to replay what I think I am seeing in various posts to check if I understand correctly.
Say that I have two groups of students (actually I can think I would like more... but it seems there might be some limitation here).
I am going to try to avoid terms like "student", "teacher" and "guests" for my groups because it will confuse things. So group 1 is called "newbies" and group 2 is called "old-hands".
Newbies and old-hands could be:
- "guests" and "students"
- "free students" and "paying students"
- "students" and "their teachers"
- "undergraduates" and "graduates"
- "employees" and "senior management"
The thing is there will be courses in the "old-hands" group that you might not want the "newbies" to know about... How about a course "handling awkward newbies: a course for teachers of newbies that need help getting the newbies to the point of understanding that they must do some work". I'm sure we'd all love our newbies to know that it is in the system. How about a senior management course "coping with serious company financial problems". No? Me either!
Ideally I wouldn't want to fill up the old-hands' course list with relative trivia for newbies either.
When I log in to my site as a newbie I can see a complete list of courses - including things in the old-hands selection. Not good.
I am aware that there is a block which allows different roles/groups to see it/not see it, but my understanding is that the course catalogue is still visible to all.
From John's response, pretty much every one sees the same thing. From Michael's question there is a "view hidden courses" capability. I can not see how to gate these at "category" level.
There appear to be two ways this question will go: either... "it can not be done yet, but it is a well requested feature... see here" (I've not where such requests are yet, by the way); or "ah... that's what you mean... this is how you do it".
If I understand correctly I might be able to achieve something like I am after by:
- set defaultuserroleid in users>permissions>user policies to "newbie"
- newbie role has moodle/course:viewhiddencourses as not allowed.
- every course that I create for old-hands would have availability set as "this course is not available to students" (I can not see where else I hide the courses).
- to allow the old-hands to see the courses I have to set the role of old-hands globally with moodle/course:viewhiddencourses as allowed. They will see all courses wherever they are. Or I can set old-hands to view a particular course but not others?
Now anyone logging on gets a role of newbie. They can not view the hidden courses. But anyone who is in the group of old-hands can see the hidden courses.
I'm not convinced, because moodle/course:viewhiddencourses is not set for Guests - is that the same as explicitly saying "not allowed" in this case?
So - is my understanding correct? Can I set up my courses into two levels of visibility? Or am I stuck with "everyone sees all the courses", which seems kind of an odd restriction?
Maybe I need to run multiple Moodles - but then I end up with an authentication issue to resolve instead.
As I say, sorry for re-covering old ground. I'm just very confused here as I suppose I expected the default would be that I could have however many groups that I wanted to have with their courses only available to them and not visible to any other group, kind of like I might only want certain network resources visible to certain groups (did you ever work somewhere were the managers could use a colour printer and nobody else saw it....?! Or maybe your network admins had access to a fast drive that only they knew where it was?)
I hope someone can help me to understand this - I'm feeling a bit lost with it!