* Added "static groups" feature to remove memcached/DB load time
* Added i18n support, allowing names and descriptions to be optionally drawn from wfMsg/wfMsgForContent
* Fixed Special:Groups, it is now half-decent. Too many changes to list here.
Replaces the ugly, often breaking, manually archived log pages with
a nice clean table which can be sorted, trimmed, viewed in pieces, etc.
You can see all logged actions by some user, or affecting some page,
and can combine the views of all all logs in one.
There are probably still some broken things in here, but I want this
committed before the patch gets any bigger.
recentchanges table is altered to make rc_namespace signed so Special:
links can be listed in it.
* DB_WRITE now called DB_MASTER, DB_READ now called DB_SLAVE
* Converted to use SQL wrapper functions instead of direct SQL in various places
* Experimental method for preserving the chronological order of events when slave servers are used. Untested.
* Fixes to the new post-parse existence test feature
* Some.. other stuff
object to encapsulate the handling of get/post variables:
The following grab something out of $_REQUEST. The first parameter is the
variable name and is required. The second is an optional default value:
$wgRequest->getVal() - any type, returns NULL if no default given
$wgRequest->getInt() - forced integer, 0 default
$wgRequest->getText() - runs through $wgLang->recodeInput()
$wgRequest->getBool() - return true/false
$wgRequest->getCheck() - returns true if the var is set, even if to ""
$wgRequest strips slashes at initialization if necessary.
Also in this fine object:
$wgRequest->wasPosted() - returns false if this wasn't a real form post,
so we can protect against faked submissions in get urls.
There's still plenty of work to do, not everything uses the new functions
yet. To test the strict mode, do define('DEBUG_GLOBALS', 1);
* Misc. bugs fixed in DatabaseFunctions.php and Skin.php.
* install-utils, install and update utilise Database objects instead of handling their own connections
* schema change for RC improvement -- added rc_type, rc_moved_to_title and rc_moved_to_ns
execution starts and ends in wiki.phtml, giving the code a somewhat
more predictable flow.
OutputPage.php:
* Added disable() method to Output class.
* Replaced exit() call in checkLastModified() with "return true" (thereby
altering its contract quite severly).
* reportTime() now only returns elapsed time, code with side effects
moved to logProfilingData() in GlobalFunctions.php.
GlobalFunctions.php:
* Added function logProfilingData() which does most of what
OutputPage->reportTime() used to do.
Article.php:
* Replaced exit() in checkLastModified() with "return true" (thereby altering
its contract quite severly).
* replaced implicit exit in calls to checkLastModified() and tryFileCache()
with returns.
LogPage.php:
* replaced implicit exit() with return in call to checkLastModified()
SpecialRecentchanges.php:
* replaced implicit exit() with return in call to checkLastModified()
wiki.phtml:
* Single call to logProfilingData() at the end of the request.