Moodle

Students unable to create new blog entries

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 1.7
  • Fix Version/s: 1.7, 1.8
  • Component/s: Blog, Roles / Access
  • Labels:
    None
  • Affected Branches:
    MOODLE_17_STABLE
  • Fixed Branches:
    MOODLE_17_STABLE, MOODLE_18_STABLE

Description

As described here: http://moodle.org/mod/forum/discuss.php?d=57159

Blogs are enabled on the site, permissions are set to allow students to create new blog entries, yet the blog menu block has "Add a new entry" missing.

Issue Links

Activity

Hide
Petr Škoda (skodak) added a comment -

It is not enough to assign allow blog entries in student role. Each blogger should be assigned role with this capability at site level, blog create capability is ignored at course level.

Show
Petr Škoda (skodak) added a comment - It is not enough to assign allow blog entries in student role. Each blogger should be assigned role with this capability at site level, blog create capability is ignored at course level.
Hide
Petr Škoda (skodak) added a comment -

My recommendation is to create a new role "Blogger", enable blog create permission and assign this role to all bloggers at site level. The only problem is that we do not have a mechanism that would assign this role to all new users, it has to be do manually

Another solution is to add blog create permission into default user role, which is by default Guest role. It is a bit confusing because there is a hardcoded restriction in blogs that guests and not-logged in users can not post blog entries. It can be solved again by creating new default user role, changing $CFG->defaultuserroleid to point to this role and enabling blog create in it. Adding the blog create permission into Guest would create another confusion that guest may post blog entries.

The blog view permission is on the other hand usable both in course and site context, but it is on by default in Guest role which is by default the default user role (oh, that sounds really confusing). If you want to limit reading access to course context only, it should be removed from there.

I agree this is a problem, it might be IMHO solved by documentation means.

Show
Petr Škoda (skodak) added a comment - My recommendation is to create a new role "Blogger", enable blog create permission and assign this role to all bloggers at site level. The only problem is that we do not have a mechanism that would assign this role to all new users, it has to be do manually Another solution is to add blog create permission into default user role, which is by default Guest role. It is a bit confusing because there is a hardcoded restriction in blogs that guests and not-logged in users can not post blog entries. It can be solved again by creating new default user role, changing $CFG->defaultuserroleid to point to this role and enabling blog create in it. Adding the blog create permission into Guest would create another confusion that guest may post blog entries. The blog view permission is on the other hand usable both in course and site context, but it is on by default in Guest role which is by default the default user role (oh, that sounds really confusing). If you want to limit reading access to course context only, it should be removed from there. I agree this is a problem, it might be IMHO solved by documentation means.
Hide
Dan Poltawski added a comment -

I think this is related to the fact you are not a student (and thus don't have the permission) until enrolled on a course.

But, if you are then enrolled on a course, you get the permission (and see it in the menu) - but then can't actually add the blog entry when it gets to the post screen.

Show
Dan Poltawski added a comment - I think this is related to the fact you are not a student (and thus don't have the permission) until enrolled on a course. But, if you are then enrolled on a course, you get the permission (and see it in the menu) - but then can't actually add the blog entry when it gets to the post screen.
Hide
Dan Poltawski added a comment -

Hmm - didn't see Petr's comments and i'm getting confused here!

If I add the blog menu block to a course and then enrol a student into that course, they seem to get permission to add entries (and thus the 'add a new entry' menu item appears). But when the student the attempts to do this, they find they don't have the permission to do this at the post screen.

Are there supposed to be blog permisisons at a course level as well as a site level?

Show
Dan Poltawski added a comment - Hmm - didn't see Petr's comments and i'm getting confused here! If I add the blog menu block to a course and then enrol a student into that course, they seem to get permission to add entries (and thus the 'add a new entry' menu item appears). But when the student the attempts to do this, they find they don't have the permission to do this at the post screen. Are there supposed to be blog permisisons at a course level as well as a site level?
Hide
Petr Škoda (skodak) added a comment -

Hi Dan,

I think you are using older version, the "add a new entry" is not there anymore if you do not have the permission to post blog entries at site level.

Blog create permission works ONLY at site level.
Blog view works both at site and course level.

Show
Petr Škoda (skodak) added a comment - Hi Dan, I think you are using older version, the "add a new entry" is not there anymore if you do not have the permission to post blog entries at site level. Blog create permission works ONLY at site level. Blog view works both at site and course level.
Hide
Dan Poltawski added a comment -

Indeed. Updated to latest CVS and this is fixed. Sorry about that.

Show
Dan Poltawski added a comment - Indeed. Updated to latest CVS and this is fixed. Sorry about that.
Hide
Petr Škoda (skodak) added a comment -

No problem, I am glad that you all are testing it, big thanks!

Show
Petr Škoda (skodak) added a comment - No problem, I am glad that you all are testing it, big thanks!
Hide
Dan Poltawski added a comment -

Are there many of these permissions which only apply at site level? I can see there are probably going to be a lot of confused users which can't work out why these things are not being applied.

Show
Dan Poltawski added a comment - Are there many of these permissions which only apply at site level? I can see there are probably going to be a lot of confused users which can't work out why these things are not being applied.
Hide
Petr Škoda (skodak) added a comment -

blog entries are now allowed by default in new installs and upgrades, you can disable them by removing the capability from guest roles (which is also the default role usually).

Show
Petr Škoda (skodak) added a comment - blog entries are now allowed by default in new installs and upgrades, you can disable them by removing the capability from guest roles (which is also the default role usually).
Hide
Helen Foster added a comment -

Thanks for the fix, Petr

Show
Helen Foster added a comment - Thanks for the fix, Petr
Hide
Ken Wilson added a comment -

Helen - This issue appears to be resolved in HEAD. OK to close?

Show
Ken Wilson added a comment - Helen - This issue appears to be resolved in HEAD. OK to close?
Hide
Helen Foster added a comment -

Thanks Ken, sorry I've not yet had chance to test the fix, I'll just believe you!

Show
Helen Foster added a comment - Thanks Ken, sorry I've not yet had chance to test the fix, I'll just believe you!
Hide
James Ballard added a comment -

I'm not sure I understand the logic here, or the fix. Do I need to assign bloggers globally in order for course blogs to allow student entries?

I have all authenticated users allowed to create new entries (moodle/blog:create) and I have a course where I would like students to keep a blog. However, the add an entry option is missing.

Assigning global students allows these students to add an entry but they are then students on every course and across the site which is an inaccurate reflection.

Creating a global blogger role just to enable blogging seems counterintuitive when students are required only to blog in the course context.

Version: Moodle 1.8.2+ (2007021520)

Show
James Ballard added a comment - I'm not sure I understand the logic here, or the fix. Do I need to assign bloggers globally in order for course blogs to allow student entries? I have all authenticated users allowed to create new entries (moodle/blog:create) and I have a course where I would like students to keep a blog. However, the add an entry option is missing. Assigning global students allows these students to add an entry but they are then students on every course and across the site which is an inaccurate reflection. Creating a global blogger role just to enable blogging seems counterintuitive when students are required only to blog in the course context. Version: Moodle 1.8.2+ (2007021520)

People

Dates

  • Created:
    Updated:
    Resolved: