Details
-
Type:
New Feature
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 1.7, 1.8, 1.9, 2.0
-
Fix Version/s: DEV backlog
-
Environment:All
-
Affected Branches:MOODLE_17_STABLE, MOODLE_18_STABLE, MOODLE_19_STABLE, MOODLE_20_STABLE
Description
Please add this as option for special forums, maybe when creating a forum, an option is checked, anonymus allowed
Thanks Peter
Attachments
-
- anonymous_forums_197.patch
- 08/Jan/10 1:20 AM
- 32 kB
- Jason Meinzer
-
- anonymous_forums_203.patch
- 01/Dec/11 6:46 AM
- 33 kB
- Chris Wharton
-
- anonymous_forums_203.patch
- 01/Dec/11 6:36 AM
- 5 kB
- Chris Wharton
-
- anonymous_forums_rev1.patch
- 12/Mar/08 3:22 AM
- 17 kB
- Jason Meinzer
-
- anonymous_forums_rev2.patch
- 12/Mar/08 3:33 AM
- 16 kB
- Jason Meinzer
-
- anonymous_forums_rev2p1.patch
- 07/Feb/09 1:23 AM
- 14 kB
- Hubert Chathi
-
- anonymous_forums_rev2p2.patch
- 07/Feb/09 2:07 AM
- 15 kB
- Hubert Chathi
-
- anonymous_forums_rev2p2.patch
- 07/Feb/09 2:02 AM
- 15 kB
- Hubert Chathi
-
- anonymous_forums_rev2p3.patch
- 10/Feb/09 1:17 AM
- 23 kB
- Hubert Chathi
-
- anonymous_forums.patch
- 11/Mar/08 3:26 AM
- 16 kB
- Jason Meinzer
-
- MDL-1071_restoreable.patch
- 08/Feb/12 1:30 PM
- 2 kB
- Chris Wharton
-
- MDL-1071.patch
- 08/Feb/12 1:30 PM
- 40 kB
- Chris Wharton
-
- uow-rss.patch
- 13/Aug/09 6:21 AM
- 0.7 kB
- Dean Stringer
-
- anonymous.png
- 3 kB
- 11/Mar/08 3:26 AM
Activity
- All
- Comments
- History
- Activity
- Source
- Test Sessions
Assigning to me temporarily because Vy-Shane no longer works for Moodle HQ.
This would be a massively useful feature in Japan and I am very keen to see this.
I am slightly depressed to see this marked as "trivial". This is a very, very important feature in Japan, where forums basically don't work if they are not anonymous.
I think this would be useful in many contexts all over the world. In my University we use the forums for trying to get feedback from students for our Staff-Student committee. Without an anonymous forum, students are reluctant to express opinions which may be deemed "controversial". Also, we have a high number of Asian (particularly Chinese) students whom are less comfortable speaking out.
I vote whole heartedly for this feature to be added to moodle.
Thanks,
Stuart Anderson,
University of Manchester.
Our faculty are also interested in seeing such a feature added to forums.
Ken Newquist
Lafayette College
We also have a client who will be interested in having this option.
We have school counselors who are interested in this option. What is the status?
Jill Brown, Director of Educational Technology
Attached is a patch against 1.9 that implements anonymous forums as described in the first comment. The patch is incomplete in that it lacks database migration hooks, but these should be simple for a more experienced Moodle developer to add
The new columns to support this feature are:
forum:
anonymous int2 DEFAULT 0, – 0, 1, 2 = no, yes, optional
forum_posts:
anonymous int2 DEFAULT 0
When creating a forum, you can now specify if posts should be anonymous, not anonymous, or optionally anonymous. In the latter case, users are presented with a checkbox that they can tick if they want their post to be anonymous.
Anonymous posts get hidden from the post history on the user's profile, as well as the recent activity block and recent activity full report. When displayed and emailed, the anonymous posts are attributed to the name specified in $CFG->anonymous_name (e.g. 'Anonymous Student'), with current_theme()/pix/anonymous.png used as their picture.
If anyone discovers or knows of other areas where anonymous forum posts would be displayed improperly please let me know.
Well done Jason. I think this would be a highly valuable addition to the forum behaviour and strongly feel it should be patched into the moodle 2.0 development code early on. It will provide a means for our shy international students to contribute their opinions without being identified.
Thanks again for all your work.
Revised my first patch to fix the following issues:
- "Last post" column was still displaying user's real name
- Anonymous posts were hidden in recent activity, they now appear attributed to $CFG->anonymous_name
- Anonymous posts were hidden in the recent activity full report, they now appear attributed to $CFG->anonymous_name
- "Last post" column was still displaying user's real name
- Anonymous posts were hidden in recent activity, they now appear attributed to $CFG->anonymous_name
- Anonymous posts were hidden in the recent activity full report, they now appear attributed to $CFG->anonymous_name
No this patch allows authenticated users to make posts which are flagged as "anonymous" if the forum settings allow it. These posts are all displayed as belonging to a fake anonymous user, but they still belong to real users. The patch implements all the behaviors described in Martin's post.
The problem will be, that we have to change the core code and updates will be more difficulty, therefore a solution would be fine, where this feature is part of the core
Peter
I'm attaching a patch (anonymous_forums_rev2p1.patch) that:
- add database migration hooks (only for Moodle 1.9 – won't work with Moodle 2.0 since 2.0 has a higher module version)
- if you do a forum search on a user, all their anonymous posts would show up- renames $CFG->anonymous_name to $CFG->forum_anonymousname (to conform to the other forum configuration variables) and adds a configuration element to the Forum configuration
- fixes two issues:
- if a user starts a forum with an anonymous post, and nobody has replied yet, then their name was still revealed in the "last post" column
- if someone does a forum search for a user, then all the user's anonymous posts would still show up
The patch applies on top of Jason's anonymous_forums_rev2.patch.
- add database migration hooks (only for Moodle 1.9 – won't work with Moodle 2.0 since 2.0 has a higher module version)
- if you do a forum search on a user, all their anonymous posts would show up- renames $CFG->anonymous_name to $CFG->forum_anonymousname (to conform to the other forum configuration variables) and adds a configuration element to the Forum configuration
- fixes two issues:
- if a user starts a forum with an anonymous post, and nobody has replied yet, then their name was still revealed in the "last post" column
- if someone does a forum search for a user, then all the user's anonymous posts would still show up
- add database migration hooks (only for Moodle 1.9 – won't work with Moodle 2.0 since 2.0 has a higher module version)
- if you do a forum search on a user, all their anonymous posts would show up- renames $CFG->anonymous_name to $CFG->forum_anonymousname (to conform to the other forum configuration variables) and adds a configuration element to the Forum configuration
- fixes two issues:
- if a user starts a forum with an anonymous post, and nobody has replied yet, then their name was still revealed in the "last post" column
- if someone does a forum search for a user, then all the user's anonymous posts would still show up
patch applies on top of anonymous_forums_rev2.patch
- add database migration hooks (only for Moodle 1.9 – won't work with Moodle 2.0 since 2.0 has a higher module version)
- if you do a forum search on a user, all their anonymous posts would show up- renames $CFG->anonymous_name to $CFG->forum_anonymousname (to conform to the other forum configuration variables) and adds a configuration element to the Forum configuration
- fixes two issues:
- if a user starts a forum with an anonymous post, and nobody has replied yet, then their name was still revealed in the "last post" column
- if someone does a forum search for a user, then all the user's anonymous posts would still show up
New patch (anonymous_forums_rev2p2.patch) that also masks user names for anonymous posts in the global search. Again, it applies on top of anonymous_forums_rev2.patch (but includes my previous patch).
Shane Elliott was working on something like this, but we'd planned it to work for everywhere in Moodle. Shane, this could be useful to look at.
Anonymity support that would apply everywhere in Moodle would be good. Some things are very hard to do just in a single module.
Here is my patch #3 (anonymous_forums_rev2p3.patch, which applies on top of anonymous_forums_rev2.patch), which fixes the following issues:
- anonymize RSS feeds
- don't count anonymous posts in user's post count (can give clues about who wrote an anonymous post)
- don't show anonymous posts in user's full report
- don't show anonymous posts in user's recent activity
- update anonymous post status when post is updated (in case forum setting was changed)
- post author was still revealed in digest emails
Remaining issues that I'm aware of:
- if you set the anonymity setting of the forum, and later change it (e.g. from always anonymous to never anonymous), then that setting is not honoured in all places (e.g. in searches)
- when an anonymous post is mailed, the custom mail headers are not set. This is due to $userfrom being assigned to a string, which discards $userfrom->customheaders. Without making changes to email_to_user, the only way to fix this is to, instead of assigning $userfrom to a string, do something like assign $userfrom->firstname to $CFG->forum_anonymousname, $userfrom->lastname to '', and $userfrom->email to $CFG->noreplyaddress.
- some forum types probably don't make sense with some anonymity types. e.g. "Q and A forum" and "Each person posts one discussion" e.g.:
- should anonymous posts count as the "one discussion topic" that each person is allowed to post? Right now, it does. It probably doesn't make sense to allow anonymous posts to start topics in these forum types, even if you want to allow other posts to be anonymous.
Moral of the story: anonymity is very hard to do.
- anonymize RSS feeds
- don't count anonymous posts in user's post count (can give clues about who wrote an anonymous post)
- don't show anonymous posts in user's full report
- don't show anonymous posts in user's recent activity
- update anonymous post status when post is updated (in case forum setting was changed)
- post author was still revealed in digest emails
- if you set the anonymity setting of the forum, and later change it (e.g. from always anonymous to never anonymous), then that setting is not honoured in all places (e.g. in searches)
- when an anonymous post is mailed, the custom mail headers are not set. This is due to $userfrom being assigned to a string, which discards $userfrom->customheaders. Without making changes to email_to_user, the only way to fix this is to, instead of assigning $userfrom to a string, do something like assign $userfrom->firstname to $CFG->forum_anonymousname, $userfrom->lastname to '', and $userfrom->email to $CFG->noreplyaddress.
- some forum types probably don't make sense with some anonymity types. e.g. "Q and A forum" and "Each person posts one discussion" e.g.:
- should anonymous posts count as the "one discussion topic" that each person is allowed to post? Right now, it does. It probably doesn't make sense to allow anonymous posts to start topics in these forum types, even if you want to allow other posts to be anonymous.
Hi, finally catching up on some of my dev plans/work. Martin and I had discussed an anonymous mode in moodle that would work for all the activities. The basic idea being that "teachers" could switch an activity (forum, chat, etc) into anonymous mode. There would also be capabilities that would determine who could view the real name of users. Users could either add an anonymous name in their profile or moodle would revert to a language string eg "Anonymous"
Many thanks for the patches and comments. At a quick glance I think there is some important work and ideas done here. I'll start some documention at the docs site as soon as I can and then post the link back here and hopefully we can get the ball rolling on this.
It all depends on what level of anonymity you want. If you want it to be impossible to recover the true identity, then yes, you would replace the user's ID with the anonymous user's ID in the database. However, it seems like the way Moodle wants to do things is to keep the user's ID in the database, so that the identity can be recovered, which means that a lot of obfuscation needs to be done.
I don't think this should be trivial, so I'm bumping up the priority level (if I may) to reflect the # of votes and so on. thanks!
teachers asked my about anonimity in the Questionnaire activity module
(it is in the contrib section and it does not come default with fresh moodle install)
http://cvs.moodle.org/contrib/plugins/mod/questionnaire/
it is a great module for getting student's feedback and most of them would like to
give that feedback anonymously (so say the teachers)
so please consider that module in your future patches (if you can) ![]()
minor patch to fix the RSS anonymous checking, need to check the forum property not the record one in the second conditional check
I had a personal friend recently ask about this functionality and stumbled across this link that includes some code at Reed (http://blogs.reed.edu/moodle/2008/04/anonymous-forums.html). I did not realize this was a top 10 in popularity issue. Hopefully I will get a chance to review and play with the code. I would have no problem adding it as a forum_anonymous patch for Moodle 1.9 and advocating for it as a new feature in Moodle 2.0. Peace - Anthony
This is a new patch that applies cleanly against 1.9.7. It contains all previous patches posted to this thread (thanks y'all!). It also adds a help entry and some explanatory text on the forum editing page explaining the limitations to the "anonymity".
Just adding a link to Shane's documentation: http://docs.moodle.org/en/Development:Anonymous_Users
Along the lines of Paul Flynn's comment, there is sometimes a competing interest here between anonymous activities and logging of activity. Generally speaking, I think it is good practice to log all activity. In fact, I would want an admin to specifically turn logging off for anonymous activities. I realize that what Shane proposes is to allow non-privileged users; however, I remember in working on the anonymization of feedbacks that teachers wanted to be able to see if a student had in fact completed an activity and this is important especially as we move toward Moodle 2.0 with conditional activities. Peace - Anthony
When there is an option to post with one's own name or anonymously, I have an educated hunch there should be a checkbox "post anonymously" instead of an extra button, for clarity - if it is an option, make it look like an option and not a command - this way, users can ignore the option that is, after all, optional - instead of being slowed down to figure out which of the buttons they should press.
I did not take a look at the patch to see how it does it at the moment, though so this may be an useless comment. (My environment is sort of slow to fire up things just to check things like this out, should probably get that fixed.)
This is a really valuable option to support online role-plays where people take on a different name and role. Strong support in the pedagogical literature for this approach and a limitation of Moodle over what WebCT and BB offer.
Mark - I'm just curious why a teacher could not create generic user accounts for the different role plays (for example, Superman, Spiderman, Wonder Woman, etc.) and let the students log in with those usernames and passwords? Along similar lines, you could create a user and give the students the ability to login as the role (i.e. Superman). The issue is verifying that it is in fact your students that are role playing. If I want folks to role play, at least as I conceptualize role playing from my counselor training days, I could create a forum and ask particular students to take on a particular role. Personally, I would still want to know the real identity of those students so that I can give them credit for their work. Could you provide a link to some of the relevant pedagogical literature so that I can get a better understanding of how this might really work? Peace - Anthony
Olli - This patch adds a checkbox as you suggest. When creating the forum, you get the option of allowing anonymity or forcing it. If anonymity is allowed but optional, the checkbox will appear when posting. If it is forced or not allowed, the checkbox does not appear. This is actually presented as three options when creating the forum: "Yes, always" "Yes, optional", and "No, never".
Anthony - Installations which use external authentication sources such as LDAP and/or Kerberos typically do not allow end users (even teachers) to create user accounts as it complicates things for the sysadmins. I don't see creating extra usernames and passwords as a sustainable solution to this issue; as it stands now this patch preserves the identity of the users since the normal Moodle auditing trail is preserved, just hidden to most users.
Maybe the anonymous user name should be a translatable string (instead of $CFG property).
Also, the text "Anonymous posts are not truly anonymous – the instructor can reveal the authors' names at any time. Click on the "?" icon above for further details." should be translatable.
I'm using the patch for 1.9.7. It's really nice. Thank you!
Has anyone got this patch to work on Moodle 1.9.9+ I have the option but it does not work.
I have applied this to 1.9.7 and can not get it to work. The option is present in the forum settings but doesn't work. If I set it to anything other than "no, never" nothing changes and if I re-check the settings it still says "no, never" next to "Anonymize posts?"
Bayne, you need to add two columns to your database schema since the patch does not create these for you:
The mdl_forum table needs an integer column called "anonymous"
The mdl_forum_posts table needs an integer column called "anonymous"
Anyone who is having problems should double-check that they have done this.
I've got this working but when someone selects to not post anonymously this appears for a couple seconds and then the post goes through...
Notice: Undefined property: stdClass::$anonymous in C:\wamp\www\moodle\mod\forum\lib.php on line 4053
I’m going to do some work on this topic. I am interested in related current development or future plans, so I’ve started a forum thread (link) and I would appreciate some comments there.
The University of Waikato used this in 1.9 and contracted Catalyst IT to upgrade to 2.0. I'll talk with them to get a patch posted ![]()
Cheers
Teresa
I just wanted to leave a note to indicate that the patch for 1.9.7 also works fine for 1.9.14. Remember to add the columns to mdl_forum and mdl_forum_posts, as detailed un Jason Meinzer's comment.
Was the patch from the Catalyst IT upgrade to 2.0 every posted anywhere?
Hi Andrew
I've asked Catalyst to share the patch and added one of them as a watcher to this tracker item so hopefully they'll share
I could take a look but don't want to create a patch if it doesn't contain everything!
Cheers
Teresa
Andrew,
yes, and sorry about being very late to reply. The result is at http://moodle.org/plugins/view.php?plugin=mod_forumanon and it works with Moodle 2.1. (It might work with 2.0 if you tweak it a little, but no promises.) This is different from the patch posted here, in terms of where user identities are saved and who can see them (I think), the details are in the README.
Hi Teresa, I have attached the patch for Moodle 2 from Catalyst IT
Just a suggestion for release testing based on errors I've seen for a different implementation in 1.9:
-Do a backup/restore with error reporting on - are there any errors?
-Restore into a new course - are the posts still anonymous?
So I just uploaded one of the plugins I developed during my Christmas vacation
It's a local plugin for allowing anonymous postings in Moodle 2 forums
Please note that this plugin:
- Is a standar plugin (do not change core code)
- It's not a replacement or fork of the current forum
- It works over the current forum
- It is a "little bit hacky". Uses some DOM manipulation and some Moodle code tricks for not changing core code
- A new user Anonymous user is created in your Moodle installation, uses are "logged" with this user when posting
- Supports backup and restore
Here you have the download link and initial documentation:
This plugin have been tested only by me so far, I'll really appreciate your feedback before adding in the contrib database
https://github.com/jleyva/moodle-local_anonymousposting/zipball/master
- Is a standar plugin (do not change core code)
- It's not a replacement or fork of the current forum
- It works over the current forum
- It is a "little bit hacky". Uses some DOM manipulation and some Moodle code tricks for not changing core code
- A new user Anonymous user is created in your Moodle installation, uses are "logged" with this user when posting
- Supports backup and restore
Juan, as I understand it, your plugin will make all anonymous posts to be owned by the same anonymous user, so it is not possible at all to retrieve the original user who posted the comments. Is that correct?
Hi Hubert,
yes, it's correct. There is no way to retrieve the original user who posted a message.
But, since Moodle stores a lot of information in the activity log, if a user with privileges checks the course activity logs he will be able to "intuitively guess" the original user by checking the user IP or by tracking him activity.
Regards
Hi, I have added a patch containing just the changes to make restore work, and a complete patch with all the changes.
From Robert (rjb at robelko.com) Friday, 13 May 2005, 03:01 AM:
A more generic solution would be to add a parameter specifying the type for each forum:
a. normal forum
b. anonymous forum
c. normal forum with anonymous posts allowed
In case c, users should be presented an extra button to post either under their name or anonymously. In case b, the submit button should probably be renamed to sth like post anonymously to forum.
Moodle would store posts as it does now but in case b (for all posts) and c (for posts requested to be anonymous) set a flag in the database (an extra field) that marks a given post as anonymous.
The code that displays posts would check this flag and use a different branch to display them, giving user name as anonymous and using the generic user image.
The mail sending code would also have to have a branch to specify sender as anonymous <noreply@xxx.yyy>.
This would eliminate extensive changes in other library functions as suggested in Timothy's hack (cf http://moodle.org/mod/forum/discuss.php?d=22530).
This would also eliminate a need for signing up under dummy names, thus allowing otherwise normal use of other course activities, and in extreme cases it would allow admins to track down users making inappropriate posts.