I've posted an existing document to a MediaWiki and broken it up into sections (not pages). I want registered users to comment on each section as follows:
* Users can add/edit/delete their own comments section
* Users (except admins) can't edit/delete other people's sections
* Users (except admins) can't edit the original document at all: it's protected
* Users' comments will be fairly long: multiple lines, not a single line
* At the bottom of the page, users can add general comments, not specific to a given section
What's the best way to do this? Using the inputbox extension (thanks for letting me know about this, Lonny!)? Or something else?
What I have now is ugly and doesn't do some of the things above:
http://wiki.lspace.org/index.php?title=Sandbox&oldid=10855
[pretend this page is protected and named APF-the-light-fantastic]
Bad things about this:
* Each "comment block" is a new page, which may confuse users-- they want to add a comment and end up on a blank page. I realize I can use "Preload" (or even inputbox) to pre-load a template when a new page is created, but that still seems ugly.
* Once a "comment block" page is created, the search engine may return it as a result, confusing users (they want to see the document with annotations, not a single annotation). The comment block pages are "subpages" of the original, but that's still not great
* Since the "comment block" is just a regular MediaWiki page, users can edit/delete each other's comments (this part actually doesn't bug me too much-- it's important that the original document be uneditable, but it may be OK if users can edit/delete each other's comments)
* Overall, I sense my approach is kludgey and incorrect. I'm sure there's a more standardized/"correct" way of doing this.
i can't give you a working extension, but the way i'd do it is: - users have no edit rights on pages - use the talkright extension to give them edit rights on the talk pages - use the PageProtection extension on sections in the talk pages they create - wrap this in a function that creates a section when a user comments and protects it. this can be an ajax function that is called from a form you embedd into the pages
i posted a while ago code that does a similar thing, but doesn't allow editing of comments. see http://www.gossamer-threads.com/lists/wiki/mediawiki/78333
hope it helps, ittay
Kelly Jones wrote:
I've posted an existing document to a MediaWiki and broken it up into sections (not pages). I want registered users to comment on each section as follows:
Users can add/edit/delete their own comments section
Users (except admins) can't edit/delete other people's sections
Users (except admins) can't edit the original document at all: it's protected
Users' comments will be fairly long: multiple lines, not a single line
At the bottom of the page, users can add general comments, not
specific to a given section
What's the best way to do this? Using the inputbox extension (thanks for letting me know about this, Lonny!)? Or something else?
What I have now is ugly and doesn't do some of the things above:
http://wiki.lspace.org/index.php?title=Sandbox&oldid=10855
[pretend this page is protected and named APF-the-light-fantastic]
Bad things about this:
- Each "comment block" is a new page, which may confuse users-- they
want to add a comment and end up on a blank page. I realize I can use "Preload" (or even inputbox) to pre-load a template when a new page is created, but that still seems ugly.
- Once a "comment block" page is created, the search engine may return
it as a result, confusing users (they want to see the document with annotations, not a single annotation). The comment block pages are "subpages" of the original, but that's still not great
- Since the "comment block" is just a regular MediaWiki page, users
can edit/delete each other's comments (this part actually doesn't bug me too much-- it's important that the original document be uneditable, but it may be OK if users can edit/delete each other's comments)
- Overall, I sense my approach is kludgey and incorrect. I'm sure
there's a more standardized/"correct" way of doing this.
mediawiki-l@lists.wikimedia.org