Allow wiki pages to be set read-only using a button on the wiki page
|Reported by:||rjollos||Owned by:||anybody|
I'd like to allow users to set wiki pages to read-only, using a button next to the Edit File / Attach File buttons.
The plugin would allow:
- Specifying the prefix for pages that have this feature enabled. For example, you may only want to set enable the feature for pages beginning with SoftwareRequirements/ or MeetingMinutes/.
- After the page is set read-only, only someone with TRAC_ADMIN permission can unset it read-only.
- There should be an easy way for someone with TRAC_ADMIN permission to remove the read-only attribute.
- There should be a WebAdmin panel or macro that lists the pages that have been set to read-only, by whom, and a timestamp for the event.
- The should be a unique permission that user must have to set a wiki page read-only. I haven't yet come up with a good name for such a permission.
- Configuration directive that optionally allows only the page author to set the page to read-only.
- The timestamp and username of the person that last set the page read-only should be listed at the bottom of the page. We may get this for free in Trac 0.12 since it lists last changed information at the bottom of the page.
- Ideally a comment could be saved at the time the page is set to read-only (i.e. it creates a new revision of the page).
- Ideally a complete history is saved, so that if the page is set/unset read-only multiple times, all of that information is stored in the database (perhaps in the revision history of the page).
The utility of this feature for me personally is that at my company many documents, such as meeting minutes that relate to product requirements, must be printed off, signed and added to the managed documents file (in order to meet FDA requirements for documentation history on a medical device). I'd like to allow the wiki pages to be set read-only at the time.
Ideally, the plugin could be extended to tickets, milestones, etc ... through a trac.ini configuration directive, but I don't currently have a requirement for this functionality beyond wiki pages.