Extension:EditSubpages

What can this extension do?
This extension restricts editing of all but a few pages and their subpages by anonymous users. Sysops (or whatever group has the 'editinterface' permission) can add pages to MediaWiki:Unlockedpages to open them for anonymous editing.

Usage
Add pages to be unlocked to MediaWiki:Unlockedpages in a bulleted list (they may be links). Any line that isn't part of a bulleted list is treated as a comment. Example: This is a comment too :). Unlike page 1, which has both the content and talk page unlocked, page 3 only has an unlocked talk page.
 * Unlocked page 1
 * 1) Comment. Note that declaring the namespace matters
 * Help:Unlocked page 2
 * Talk:Unlocked page 3
 * Unlocked page 4/subpage
 * 1) this will only unlock subpages of this subpage, so page 4 itself
 * 2) uneditable by anons.

This will allow anonymous users (or any user lacking the 'edit' permission) to edit that page and all subpages of it (e.g. Unlocked page 1, Unlocked page 1/Subpage, etc.), as well as their respective talk pages. If you declare a talk page, it will not make the respective content page editable. To prevent talk pages from being edited but allow the content pages to be, simply protect the talk page.

This will also allow the anonymous users to create new pages that are sub-pages of the unlocked page.

Download instructions
Please download the code from Subversion and place it in the  folder of your wiki. Note: $IP stands for the root directory of your MediaWiki installation, the same directory that holds LocalSettings.php.

Installation
To install this extension, add the following to LocalSettings.php:

Changelog

 * Version 2.1:Fixed author field in the extension credits.
 * Version 2.0:Switched to using userCan hook. Fixed namespace issue. Fixed incompatibility with Extension:ConfirmAccount. Now works for versions of MediaWiki 1.6.0+. This will probably be the final release of this extension unless more major bugs are discovered.
 * Version 1.2.2:Fixed major bug that did not unlock Talk pages when they were explicitly declared. If you have any earlier version, please upgrade to this version for correct functionality!
 * Version 1.2.1:Fixed major bug that prevented any pages from being unlocked. If you have version 1.2, upgrade to this version!
 * Version 1.2:Used strpos instead of regex for faster processing and less memory usage. Bugfixes. Moved into Subversion
 * Version 1.1:Added ability to use comments and talk pages are now unlocked as well.
 * Version 1.0:Initial creation