. '</abbr>';
}
+ /**
+ * Some explanatory wrapper text for the given flag, to be used in a legend
+ * explaining what the flags mean. For instance, "N - new page". See
+ * also flag().
+ *
+ * @param $key string 'newpage', 'unpatrolled', 'minor', or 'bot'
+ * @return string Raw HTML
+ */
+ public static function flagLegend( $key ) {
+ return wfMsgExt( "recentchanges-legend-$key", array( 'escapenoentities',
+ 'replaceafter' ), self::flag( $key ) );
+ }
+
/**
* Returns text for the start of the tabular part of RC
* @return string
* @return String: XHTML
*/
public function doHeader( $opts ) {
- global $wgScript, $wgOut;
+ global $wgScript, $wgOut, $wgLang, $wgUser, $wgGroupPermissions;
$this->setTopText( $wgOut, $opts );
Xml::fieldset( wfMsg( 'recentchanges-legend' ), $panelString, array( 'class' => 'rcoptions' ) )
);
- # TODO: This is probably a bad format for the message. If anyone
- # customizes it and we add a new flag, it won't show up in the
- # customized message unless it's changed.
+ $flags = array( ChangesList::flagLegend( 'newpage' ),
+ ChangesList::flagLegend( 'minor' ) );
+
+ # Don't show info on bot edits unless there's a bot group of some kind
+ foreach ( $wgGroupPermissions as $rights ) {
+ if ( isset( $rights['bot'] ) && $rights['bot'] ) {
+ $flags[] = ChangesList::flagLegend( 'bot' );
+ break;
+ }
+ }
+
+ if ( $wgUser->useRCPatrol() ) {
+ $flags[] = ChangesList::flagLegend( 'unpatrolled' );
+ }
+
$wgOut->addWikiMsg( 'recentchanges-label-legend',
- ChangesList::flag( 'newpage' ), ChangesList::flag( 'minor' ),
- ChangesList::flag( 'bot' ), ChangesList::flag( 'unpatrolled' ) );
+ $wgLang->commaList( $flags ) );
$this->setBottomText( $wgOut, $opts );
}
'recentchanges-legend' => 'Recent changes options',
'recentchangestext' => 'Track the most recent changes to the wiki on this page.',
'recentchanges-feed-description' => 'Track the most recent changes to the wiki in this feed.',
-'recentchanges-label-legend' => 'Legend: $1 - new page, $2 - minor edit, $3 - bot edit, $4 - unpatrolled edit.',
+'recentchanges-label-legend' => 'Legend: $1.',
+'recentchanges-legend-newpage' => '$1 - new page',
'recentchanges-label-newpage' => 'This edit created a new page',
+'recentchanges-legend-minor' => '$1 - minor edit',
'recentchanges-label-minor' => 'This is a minor edit',
+'recentchanges-legend-bot' => '$1 - bot edit',
'recentchanges-label-bot' => 'This edit was performed by a bot',
+'recentchanges-legend-unpatrolled' => '$1 - unpatrolled edit',
'recentchanges-label-unpatrolled' => 'This edit has not yet been patrolled',
'rcnote' => "Below {{PLURAL:$1|is '''1''' change|are the last '''$1''' changes}} in the last {{PLURAL:$2|day|'''$2''' days}}, as of $5, $4.",
'rcnotefrom' => "Below are the changes since '''$2''' (up to '''$1''' shown).",
'recentchangestext',
'recentchanges-feed-description',
'recentchanges-label-legend',
+ 'recentchanges-legend-newpage',
'recentchanges-label-newpage',
+ 'recentchanges-legend-minor',
'recentchanges-label-minor',
+ 'recentchanges-legend-bot',
'recentchanges-label-bot',
+ 'recentchanges-legend-unpatrolled',
'recentchanges-label-unpatrolled',
'rcnote',
'rcnotefrom',