= Details = ## please fill this in Applies to:: !MoinMoin security core ({{{autoadmin.py}}}) v1.8.2, v1.9beta2 Purpose:: To allow !AutoAdminGroup members to create their pages, to allow !AutoAdminGroup have '''special users''' members (like Known and Trusted) Description:: This patch adds '''write''' security policy to allow '''!AutoAdminGroup''' members to create pages for which they have their admin rights. It also allows this group to have '''special users''' members - '''Known''' and '''Trusted''' groups = Patch = ## we prefer that you send the patch in an attachment to avoid whitespace issues ## you should probably change the name of the attachment here {{attachment:autoadmin.py-1.8+1.9.patch}} {{attachment:autoadmin.py.1.9.3.patch}} = Discussion = <> Just confirmed, that patch works fine with version 1.9beta2 -- StellarsHenson <> Two questions: 1. What about the situation in which the home page is not at the root? 1. Why isn't getInterwikiHomePage being used? It seems to me that something like the following snippet would be appropriate (not including the patch here but for the idea from 1.8.2): {{{ class SecurityPolicy(Permissions): ... def admin(self, pagename): ... homepage = getInterwikiHomePage(request, username) if homepage: homepage = "/".join(homepage) if homepage and pagename.startswith(homepage) and has_member('AutoAdminGroup', username): return True ... }}} -- JohnMarshall <> Minor but needed fixes to above snippet: * getInterwikiHomePage() returns None or a tuple * do not do "pagename.startswith(homepage) == pagename" comparison @Stellars: Once I'm done, I'll propose a patch. Thanks. -- JohnMarshall <> Hi, John. I believe you're right, however my patch didn't intend to modify the existing behavior that much. I just wanted to allow 'special groups' to be evaluated and make the homepage 'writable' in case you have administrative rights on it. I'm afraid, you have to prepare the patch and upload it for community evaluation. If you're asking for my opinion - i have no experience with interwiki homepages, therefore i can't really tell you anything about it :-) -- StellarsHenson <> = Plan = ## This part is for Moin``Moin developers: * Priority: * Assigned to: * Status: ---- CategoryMoinMoinPatch