post-forking/post-forking — pull request #105 by developdaly (2013-11-25 23:00:10+00:00)
Title: Adds option to enable fork approval by users with the approve_forks capability before being merged and published

I think this is a useful feature to add a new complexity to the Post Forking workflow.

Imagine my use case. Intern Billy was told to login to the blog and fix some typos. So he logs in, forks the post, and merges it back in and publishes. But as Billy's supervisor, I wanted to review his work and approve it before he merged it.

So this pull request adds an option to the settings page allows Post Forking users to enable approvals prior to publishing. This is done on the settings page and by adding a new capability, `approve_forks`.

![screen shot 2013-11-25 at 4 47 26 pm](https://f.cloud.github.com/assets/167528/1617879/9f8b0800-5623-11e3-9d4e-1994af3133b6.png)

This is what Billy the intern sees while he's editing his post:

![screen shot 2013-11-25 at 4 54 03 pm](https://f.cloud.github.com/assets/167528/1617920/8797f3ce-5624-11e3-9490-412fae6e8ffc.png)

Then I, as Billy's boss, see this:

![screen shot 2013-11-25 at 4 47 08 pm](https://f.cloud.github.com/assets/167528/1617881/9ffcc3e6-5623-11e3-992f-58ef2af1763d.png)

I can check the box to approve it, save and then I have the option of Merging and Publishing.

![screen shot 2013-11-25 at 4 47 16 pm](https://f.cloud.github.com/assets/167528/1617880/9fd7ea44-5623-11e3-93d3-c17e85e9374d.png)

*TODO*: Disallow approved forks from being edited. If a fork is approved, but Billy can still edit it then the workflow is flawed.

Feedback appreciated! I'd love to clean this up a little more before a possible inclusion. If this is seen as outside the scope of this plugin, let me know and I'll try to set this up in a separate plugin. That said, I think this adds crucial functionality to workflow.