[wikka-community] Page Groups in Wikka?

th yelton thyml
Thu Nov 8 17:18:44 GMT 2007


Thanks for your thoughtful response Nils.  Questions/comments inserted 
below.

Nils Lindenberg wrote:
> Hi Thomas and welcome to this wikka mailing list.
>
> On 11/5/07, th yelton <thyml at comcast.net> wrote:
>   
>> Wikka handles the public/private division as it comes "out of the box",
>> and I found a nice mod (ACLsWithUserGroups) for implementing user groups
>> that should do nicely, but I don't see a simple way to create page
>> groups to which user groups could be assigned permission to access.
>>     
>
> ACLsWithUserGroups is indeed a nice mod and there is a ticket
> (http://wush.net/trac/wikka/ticket/33) and a milestone (1.1.7.1.) to
> implement it.
>   
Will this implementation have the same user interface as 
ACLsWithUserGroups?  The ticket doesn't mention a change but it does say 
a new db table is needed.
>> Individual pages can be restricted to users and user groups but that's
>> not quite enough since setting and maintaining ACLs on each individual
>> page in a group would be tiresome and error prone and new pages created
>> within the group would not automatically get the right ACLs.
>>
>> So my question: Is there a way in Wikka to do page groups that I've
>> missed?  If not, are there plans to implement page groups?
>>     
>
> You are thinking about something lik
> http://wush.net/trac/wikka/ticket/139, right? If you take a look at
> the comments there, you will see that wikka has a flat structure and
> no namespaces. Therefore inheritance is nor really possible. What is
> possible, is mentioned here: http://wush.net/trac/wikka/ticket/189
> (Optionally clone ACLs during page cloning) and
> http://wikkawiki.org/InheritACL. I am not sure if these possibilities,
> together with ACLsWithUserGroups, would be sufficent for you.
>   
I'm not sure if it is sufficient, in fact it might cause problems.  You 
see one problem that we have is that most of our users and potential 
users are technically naive, some are even technically averse.  I am 
concerned that this kind of "ACL inheritance at page creation" may be a 
bit too subtle and confusing for them.  If they don't understand and see 
how protection works without a lot of poking around in ACL settings then 
they will get worried about making mistakes.  And that would be one more 
reason not to use the wiki.  I'd much rather they didn't have to think 
too much about ACLs.  If they could just look at the page name to tell 
what page group it is in and therefore who can access it, then I think 
they would understand it better and feel more confident about editing 
and creating pages.

I am curious about why Wikka has a flat structure.  Usemod wiki has one 
level of subpages which are very handy for organizing content. PmWiki 
has a different system.  I generally try to keep things as flat as 
possible but sometimes it just isn't possible -- when you need a new 
folder it's a good thing that the option is there.  Apart from the 
protection business that we are talking about here, at some point there 
can just get to be too many files in one namespace and it gets 
overwhelming and inhibiting.  Have you considered how sticking to a flat 
structure limits the practical size of a wikka wiki?
>   
>> I'm also wondering how hard it would be to implement something on my
>> own.  What I have in mind would make use of page name prefixes to group
>> pages together.  For example page BoardMinutes would inherit its ACLs
>> from page Board except where it had its own ACLs set.  Thus changing the
>> ACLs of Board would affect Board* and any new BoardSomething page would
>> automatically have the right protection.  I'm betting that this would
>> not be a large code change but I'd like to hear the opinions of Wikka
>> developers.
>>     
>
> It is possible,yes. You would have to add page-relations to the
> database and modify the ACL-Handling accordingly. Since this would
> involve some changed files/tables, it would make upgrading to never
> versions more difficult. If you want to code it, I suggest you to open
> a page on wikkawiki.org documenting your goals and changes made,
> allowing people to dicuss them and help you.
>   
I don't see why a database change would be necessary.  To tell if a user 
can access BoardMinutes the code would first look at the ACLs of 
BoardMinutes.  If the the needed ACL was blank in BoardMinutes then look 
at the ACL of Board.  If Board is blank or nonexistent then I suppose 
you could use the configuration default.  Everything needed is already 
in the database.

Going beyond this basic idea it might be nice to have multiple levels, 
e.g. BoardMinutesJune -> BoardMinutes -> Board.  Also, instead of using 
WikiWord boundaries to break down the name it might be clearer to use a 
special character like '.' or '/', e.g. Board.Minutes or Board/Minutes.

I am reluctant to make code mods if the Wikka developers think this is a 
really bad idea.  I think that would be a recipe for trouble down the 
line.  So what do you think?

Thanks,
- Thomas

-- 
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law. 


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.wikkawiki.org/pipermail/community_wikkawiki.org/attachments/20071108/7637295e/attachment.html 



More information about the community mailing list