opendiscussion: This plugin will also now allow posting comments

to otherwise locked-down sites.
master
Joey Hess 2010-02-06 16:19:17 -05:00
parent e33a65719a
commit b384af237d
5 changed files with 11 additions and 12 deletions

View File

@ -25,6 +25,7 @@ sub canedit ($$) {
my $session=shift; my $session=shift;
return "" if $page=~/(\/|^)\Q$config{discussionpage}\E$/i; return "" if $page=~/(\/|^)\Q$config{discussionpage}\E$/i;
return "" if pagespec_match($page, "postcomment(*)");
return undef; return undef;
} }

2
debian/changelog vendored
View File

@ -10,6 +10,8 @@ ikiwiki (3.20100123) UNRELEASED; urgency=low
* Add link to userpage (or creation link) to top of preferences page. * Add link to userpage (or creation link) to top of preferences page.
* auto-blog.setup: Lock all pages, so only admin can post to the blog * auto-blog.setup: Lock all pages, so only admin can post to the blog
by default. by default.
* opendiscussion: This plugin will also now allow posting comments
to otherwise locked-down sites.
-- Joey Hess <joeyh@debian.org> Tue, 26 Jan 2010 22:25:33 -0500 -- Joey Hess <joeyh@debian.org> Tue, 26 Jan 2010 22:25:33 -0500

View File

@ -14,8 +14,8 @@ authorship should hopefully be unforgeable by CGI users.
The intention is that on a non-wiki site (like a blog) you can lock all The intention is that on a non-wiki site (like a blog) you can lock all
pages for admin-only access, then allow otherwise unprivileged (or perhaps pages for admin-only access, then allow otherwise unprivileged (or perhaps
even anonymous) users to comment on posts. See the documentation of the even anonymous) users to comment on posts. See the documentation of the
[[lockedit]] and [[anonok]] pages for details on locking down a wiki so [[opendiscussion]], [[lockedit]] and [[anonok]] pages for details on locking
users can only post comments. down a wiki so readers can only post comments.
Individual comments are stored as internal-use pages named something like Individual comments are stored as internal-use pages named something like
`page/comment_1`, `page/comment_2`, etc. These pages internally use a `page/comment_1`, `page/comment_2`, etc. These pages internally use a

View File

@ -12,14 +12,9 @@ to lock. For example, you could choose to lock all pages created before
2006, or all pages that are linked to from the page named "locked". More 2006, or all pages that are linked to from the page named "locked". More
usually though, you'll just list some names of pages to lock. usually though, you'll just list some names of pages to lock.
One handy thing to do if you're using ikiwiki for your blog is to lock If you want to lock down a blog so only you can post to it, you can just
"* and !*/Discussion". This prevents others from adding to or modifying lock "*", and enable the [[opendiscussion]] plugin, so readers can still post
posts in your blog, while still letting them comment via the Discussion [[comments]].
pages.
Alternatively, if you're using the [[comments]] plugin, you can lock
"!postcomment(*)" to allow users to comment on pages, but not edit anything
else.
Wiki administrators can always edit locked pages. The [[ikiwiki/PageSpec]] Wiki administrators can always edit locked pages. The [[ikiwiki/PageSpec]]
can specify that some pages are not locked for some users. For example, can specify that some pages are not locked for some users. For example,

View File

@ -1,5 +1,6 @@
[[!template id=plugin name=opendiscussion author="[[Joey]]"]] [[!template id=plugin name=opendiscussion author="[[Joey]]"]]
[[!tag type/auth]] [[!tag type/auth]]
This plugin allows editing of Discussion pages by anonymous users who have This plugin allows editing of Discussion pages, and posting of comments,
not logged into the wiki. even when the [[lockedit]] plugin has been configured to otherwise prevent
editing.