Description
I am unable to delete any ACL protected page on http://master.moinmo.in. I have ACL rights to do so, but the deletion ends with error: "SaveError has occured in PageEditor.deletePage. We need locking there."
Steps to reproduce
Create page with ACL, for example http://master.moinmo.in/TestingPageWithACL. Let's say #acl MoinPagesEditorGroup:read,write,delete,revert All:read
Say to user without admin rights who can edit this page (somebody in EditorGroup) do delete it
- He/she get this error
Example
I personaly want to delete http://master.moinmo.in/HelpZacatecnici and I can't.
Component selection
I think it's in PageEditor.py
Details
I don't know if I have current source code, but:
Probably in function saveText, which is called by deletePage(). There is a ACL control in form:
acl = self.getACL(request) if (not request.user.may.admin(self.page_name) and parseACL(request, newtext) != acl and action != "SAVE/REVERT"): msg = _("You can't change ACLs on this page since you have no admin rights on it!") raise self.NoAdmin, msg
And because the newtext is set to u"deleted\n", there isn't any ACL declaration so there is an ACL change which I, as standard user, can't do.
Workaround
IMHO: Change code to skip ACL control when action is DELETE, probably the same way how it's done in case of revert.
Discussion
I just had it at http://master19.moinmo.in/DlaczegoWikiDziaĆa?action=DeletePage
Plan
- Priority:
- Assigned to:
- Status: