This project is for a [TWiki plugin][1] that will: 1. classify users into TWikiNewGroup or TWikiApprovedGroup (see [TWikiGroups][2] for more and definition of TWikiGroup). 2. those users in a TWikiNewGroup must have their edits accepted but held undisplayed until approved by a user in the TWikiApprovedGroup. 3. once an edit is accepted it is posted to the originally edited TWiki page overwriting edits that came in after the New user's edit. 4. when initiating an edit, a user in the TWikiNewGroup is first warned that his/her post will be held until approved. 5. after submitting an edit the user in the TWikiNewGroup is offered a link to his/her post that is only "viewable" to him/her and members of the TWikiApprovedGroup. 6. There is a page [login to view URL] that lists all edits awaiting approval. This page is viewable only by members of the TWikiApprovedGroup. Approval of an edit removes that item from the page by writing a new version of [login to view URL] that removes the now-approved-edit-formerly-awaiting-approval. All page URLs used will adhere to the TWiki conventions. Extant TWiki code & functions will be used rather than rewriting existing functionality in the new Plugin (ie. don't rewrite working TWiki code, reuse it). This solicited plugin work without alteration with [all Plugins installed at [login to view URL]][3]. This project does NOT require code to move users from the TWikiNewGroup to the TWikiApprovedGroup. However, the presence in either of these groups will abide by the standards already present in TWiki. Specifically, alteration of the TWikiNewGroup or TWikiApprovedGroup by the usual TWiki edit means will continue to function normally. This will be Perl code packaged as a *.[login to view URL] archive and built according to the conventions used for TWiki Plugins.
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
This TWiki Plugin will impose no additional System Requirements that those already imposed by the current
[TWikiSystemRequirements][4] . TWiki runs on Windows and any flavor of Unix that meets the above system requirements. Your plugin should as well.