diff options
Diffstat (limited to 'includes/ChangeTags.php')
-rw-r--r-- | includes/ChangeTags.php | 36 |
1 files changed, 21 insertions, 15 deletions
diff --git a/includes/ChangeTags.php b/includes/ChangeTags.php index 7f0fee21..c8e522df 100644 --- a/includes/ChangeTags.php +++ b/includes/ChangeTags.php @@ -1,8 +1,5 @@ <?php -if( !defined( 'MEDIAWIKI' ) ) - die; - class ChangeTags { static function formatSummaryRow( $tags, $page ) { if( !$tags ) @@ -28,11 +25,8 @@ class ChangeTags { } static function tagDescription( $tag ) { - $msg = wfMsgExt( "tag-$tag", 'parseinline' ); - if ( wfEmptyMsg( "tag-$tag", $msg ) ) { - return htmlspecialchars( $tag ); - } - return $msg; + $msg = wfMessage( "tag-$tag" ); + return $msg->exists() ? $msg->parse() : htmlspecialchars( $tag ); } ## Basic utility method to add tags to a particular change, given its rc_id, rev_id and/or log_id. @@ -150,18 +144,26 @@ class ChangeTags { } /** - * If $fullForm is set to false, then it returns an array of (label, form). - * If $fullForm is true, it returns an entire form. + * Build a text box to select a change tag + * + * @param $selected String: tag to select by default + * @param $fullForm Boolean: + * - if false, then it returns an array of (label, form). + * - if true, it returns an entire form around the selector. + * @param $title Title object to send the form to. + * Used when, and only when $fullForm is true. + * @return String or array: + * - if $fullForm is false: Array with + * - if $fullForm is true: String, html fragment */ - static function buildTagFilterSelector( $selected='', $fullForm = false /* used to put a full form around the selector */ ) { + public static function buildTagFilterSelector( $selected='', $fullForm = false, Title $title = null ) { global $wgUseTagFilter; if ( !$wgUseTagFilter || !count( self::listDefinedTags() ) ) return $fullForm ? '' : array(); - global $wgTitle; - - $data = array( wfMsgExt( 'tag-filter', 'parseinline' ), Xml::input( 'tagfilter', 20, $selected ) ); + $data = array( Html::rawElement( 'label', array( 'for' => 'tagfilter' ), wfMsgExt( 'tag-filter', 'parseinline' ) ), + Xml::input( 'tagfilter', 20, $selected ) ); if ( !$fullForm ) { return $data; @@ -175,7 +177,11 @@ class ChangeTags { return $html; } - /** Basically lists defined tags which count even if they aren't applied to anything */ + /** + *Basically lists defined tags which count even if they aren't applied to anything + * + * @return array + */ static function listDefinedTags() { // Caching... global $wgMemc; |