Extension:FileManager

Purpose
This Mediawiki extension enables a user with the 'commitfile' right to edit files in the Mediawiki installation directory.

Features

 * Can be used independantly of BizzWiki environment
 * New rights: 'readfile', 'commitfile'
 * Logging
 * New Namespace 'NS_FILESYSTEM'
 * Support for titles beginning with small caps; need the title to be prefixed with '/'
 * e.g. to have access to 'includes/Setup.php' just reference the title 'Filesystem:/includes/Setup.php'
 * No auto summary upon page creation

DEPENDENCY

 * Extension:StubManager

NS_FILESYSTEM namespace
The namespace with for identifier  must be created in  See Manual:Using_custom_namespaces for details. In short you could do:

$wgExtraNamespaces[100] = "Filesystem"; define("NS_FILESYSTEM", 100); $wgNamespaceProtection[NS_FILESYSTEM] = array( 'read' ); $wgContentNamespaces[] = 100;

Usage
Visit a page on corresponding with a file located in the MediaWiki installation directory. E.g. Filesystem:/includes/Article.php

History

 * fixed for 'wgCapitalLinks'
 * fixed for suppressing PHP error messages on file_get_contents
 * fixed logging messages
 * disabled 'auto summary' upon page creation (clogs recentchanges, logs etc.)
 * added 'reload' functionality
 * Added some protection against !isset indexes in '$wgExtensionCredits'
 * Added 'proprietary words' functionality
 * @@file@@  replaces for the current filename
 * @@mtime@@ replaces for the current filename last modification timestamp
 * @@currentmtime@@ replaces for the current extracted filename last modification timestamp
 * Removed extraneous '/' in the path name
 * Added 'parser phase 2' magic words:
 * ( ($#extractfile|@@file@@$) )  : extracts the filename returned through the proprietary word '@@file@@'
 * ( ($#extractmtime|@@mtime@@$) ) : extracts 'mtime' returned through the proprietary word '@@mtime@@'
 * EditFormPreload: added check for title both 'underscored' and not

TODO

 * internationalization
 * add 'edit from filesystem' functionality: capability to 'reload' a file from the filesystem
 * enhance 'logging' through $type etc.

Installation

 * Install Extension:StubManager extension
 * Download all the files from the SVN link
 * Place in a directory e.g. 'extensions/FileManager'
 * Place the following after 'StubManager' in