Release status: stable
|Description||Integrated spam control mechanism|
|Last version||1.3 (r57731)|
|License||GNU General Public License 3.0 or later|
|Check usage and version matrix; code metrics|
Phalanx extension is an integrated special control mechanism. The integrated means that it integrates several (mostly Wikia) extensions into one, ultimate anti-spam tool: BadWords, FilterWords, regexBlock, SpamBlacklist, spamRegex, TextRegex and TitleBlacklist.
Phalanx was originally developed by and for Wikia; this page documents the fork of Phalanx that ShoutWiki uses, which was originally forked in June 2010 and is currently based on r57731 of Wikia's SVN.
Installation[edit | edit source]
- Dump the files into
- Create the two new database tables via something like
php $IP/maintenance/sql.php $IP/extensions/Phalanx/schema.sql
require_once("$IP/extensions/Phalanx/Phalanx.php");into the wiki's LocalSettings.php
- Installation can now be verified through the wiki's Special:Version
Parameters[edit | edit source]
The $wgPhalanxDisableContent global can be set to true to disable the ContentBlock module (checks related to page content, edit&move summaries).
User rights[edit | edit source]
Phalanx extension adds three new user rights, phalanx, phalanxexempt and phalanxemailblock.
The phalanx user right is required to access Special:Phalanx and Special:PhalanxStats; to add, modify and remove filters and to view statistics.
Users with phalanxexempt user right are exempt from Phalanx filters.
The phalanxemailblock user right is required to view blocked e-mail addresses on Special:Phalanx and Special:PhalanxStats, to block e-mail addresses and to view the log at Special:Log/phalanxemail.
Logging[edit | edit source]
Filter additions, modifications and deletions are logged at Special:Log/phalanx, which is a private log accessible by users with the phalanx user right.
E-mail address filter additions, modifications and deletions are logged at a separate log, Special:Log/phalanxemail. Accessing this log requires the phalanxemailblock user right.
Testing filters[edit | edit source]
Users with the phalanx user right can test currently active filters by choosing the "Test Filters" tab on Special:Phalanx, entering text (such as a spam phrase, a username or something else that is or should be blocked in Phalanx) and pressing the button.
If there is a match, you'll be informed what filter the text triggers; if there isn't a match (and you know there should be), try changing the options of a block.
One of the most common problems is using the "exact" option with text, such as content or summary blocks; you should almost always use the regex option, because the "exact" option is too dumb and it can easily be fooled.
Technical notes[edit | edit source]
- See Extension:Phalanx/Writing a new module for information on how to add additional blocking options to the extension
- Number of i18n messages: 108 (as of 9 August 2012)
- GUI for Special:Phalanx is in extensions/Phalanx/templates/phalanx.tmpl.php
- CSS changs:
- wikia-tabs has been renamed to phalanx-tabs
- accent → phalanx-accent
- clearfix styles copied from Monaco's root.css; required for proper GUI display
- Requires jQuery 1.4.2 or higher
- Actual blocking classes are in blocks/ (for example, ContentBlock.class.php) and are loaded in Phalanx.php for users who do not have the phalanxexempt right
- Hooks used by Phalanx specific to the Wikia codebase, and which are not present in MediaWiki core:
- the functionality hooked into this hook has been moved to ContentBlock module (extensions/Phalanx/blocks/ContentBlock.class.php, function onAbortMove); the hook used is AbortMove