MediaWiki  1.30.0
SpecialRecentChanges Class Reference

A special page that lists last changes made to the wiki. More...

Inheritance diagram for SpecialRecentChanges:
Collaboration diagram for SpecialRecentChanges:

Public Member Functions

 __construct ( $name='Recentchanges', $restriction='')
 
 checkLastModified ()
 Get last modified date, for client caching Don't use this if we are using the patrol feature, patrol changes don't update the timestamp. More...
 
 doHeader ( $opts, $numRows)
 Set the text to be displayed above the changes. More...
 
 execute ( $subpage)
 Main execution point. More...
 
 filterByCategories (&$rows, FormOptions $opts)
 Filter $rows by categories set in $opts. More...
 
 getDefaultDays ()
 Get the default value of the number of days to display when loading the result set. More...
 
 getDefaultLimit ()
 
 getDefaultOptions ()
 Get a FormOptions object containing the default options. More...
 
 getExtraOptions ( $opts)
 Get options to be displayed in a form. More...
 
 isIncludable ()
 Whether it's allowed to transclude the special page via {{Special:Foo/params}}. More...
 
 makeOptionsLink ( $title, $override, $options, $active=false)
 Makes change an option link which carries all the other options. More...
 
 optionsPanel ( $defaults, $nondefaults, $numRows)
 Creates the options panel. More...
 
 outputChangesList ( $rows, $opts)
 Build and output the actual changes list. More...
 
 outputFeedLinks ()
 Output feed links. More...
 
 parseParameters ( $par, FormOptions $opts)
 Process $par and put options found in $opts. More...
 
 setTopText (FormOptions $opts)
 Send the text to be displayed above the options. More...
 
 validateOptions (FormOptions $opts)
 Validate a FormOptions object generated by getDefaultOptions() with values already populated. More...
 
- Public Member Functions inherited from ChangesListSpecialPage
 filterOnUserExperienceLevel ( $specialPageClassName, $context, $dbr, &$tables, &$fields, &$conds, &$query_options, &$join_conds, $selectedExpLevels, $now=0)
 Filter on users' experience levels; this will not be called if nothing is selected. More...
 
 getFilterGroup ( $groupName)
 Gets a specified ChangesListFilterGroup by name. More...
 
 getOptions ()
 Get the current FormOptions for this request. More...
 
 getRows ()
 Get the database result for this special page instance. More...
 
 getStructuredFilterJsData ()
 Gets structured filter information needed by JS. More...
 
 isStructuredFilterUiEnabled ()
 Check whether the structured filter UI is enabled. More...
 
 isStructuredFilterUiEnabledByDefault ()
 Check whether the structured filter UI is enabled by default (regardless of this particular user's setting) More...
 
 makeLegend ()
 Return the legend displayed within the fieldset. More...
 
 registerFilterGroup (ChangesListFilterGroup $group)
 Register a structured changes list filter group. More...
 
 setBottomText (FormOptions $opts)
 Send the text to be displayed after the options. More...
 
 setup ( $parameters)
 Register all the filters, including legacy hook-driven ones. More...
 
 webOutput ( $rows, $opts)
 Send output to the OutputPage object, only called if not used feeds. More...
 
- Public Member Functions inherited from SpecialPage
 __construct ( $name='', $restriction='', $listed=true, $function=false, $file='', $includable=false)
 Default constructor for special pages Derivative classes should call this from their constructor Note that if the user does not have the required level, an error message will be displayed by the default execute() method, without the global function ever being called. More...
 
 addHelpLink ( $to, $overrideBaseUrl=false)
 Adds help link with an icon via page indicators. More...
 
 checkPermissions ()
 Checks if userCanExecute, and if not throws a PermissionsError. More...
 
 checkReadOnly ()
 If the wiki is currently in readonly mode, throws a ReadOnlyError. More...
 
 displayRestrictionError ()
 Output an error message telling the user what access level they have to have. More...
 
 doesWrites ()
 Indicates whether this special page may perform database writes. More...
 
 getConfig ()
 Shortcut to get main config object. More...
 
 getContext ()
 Gets the context this SpecialPage is executed in. More...
 
 getDescription ()
 Returns the name that goes in the \<h1\> in the special page itself, and also the name that will be listed in Special:Specialpages. More...
 
 getFinalGroupName ()
 Get the group that the special page belongs in on Special:SpecialPage Use this method, instead of getGroupName to allow customization of the group name from the wiki side. More...
 
 getFullTitle ()
 Return the full title, including $par. More...
 
 getLanguage ()
 Shortcut to get user's language. More...
 
 getLinkRenderer ()
 
 getLocalName ()
 Get the localised name of the special page. More...
 
 getName ()
 Get the name of this Special Page. More...
 
 getOutput ()
 Get the OutputPage being used for this instance. More...
 
 getPageTitle ( $subpage=false)
 Get a self-referential title object. More...
 
 getRequest ()
 Get the WebRequest being used for this instance. More...
 
 getRestriction ()
 Get the permission that a user must have to execute this page. More...
 
 getSkin ()
 Shortcut to get the skin being used for this instance. More...
 
 getTitle ( $subpage=false)
 Get a self-referential title object. More...
 
 getUser ()
 Shortcut to get the User executing this instance. More...
 
 including ( $x=null)
 Whether the special page is being evaluated via transclusion. More...
 
 isCached ()
 Is this page cached? Expensive pages are cached or disabled in miser mode. More...
 
 isExpensive ()
 Is this page expensive (for some definition of expensive)? Expensive pages are disabled or cached in miser mode. More...
 
 isListed ()
 Whether this special page is listed in Special:SpecialPages. More...
 
 isRestricted ()
 Can be overridden by subclasses with more complicated permissions schemes. More...
 
 listed ( $x=null)
 Get or set whether this special page is listed in Special:SpecialPages. More...
 
 maxIncludeCacheTime ()
 How long to cache page when it is being included. More...
 
 msg ( $key)
 Wrapper around wfMessage that sets the current context. More...
 
 outputHeader ( $summaryMessageKey='')
 Outputs a summary message on top of special pages Per default the message key is the canonical name of the special page May be overridden, i.e. More...
 
 prefixSearchSubpages ( $search, $limit, $offset)
 Return an array of subpages beginning with $search that this special page will accept. More...
 
 requireLogin ( $reasonMsg='exception-nologin-text', $titleMsg='exception-nologin')
 If the user is not logged in, throws UserNotLoggedIn error. More...
 
 run ( $subPage)
 Entry point. More...
 
 setContext ( $context)
 Sets the context this SpecialPage is executed in. More...
 
 setHeaders ()
 Sets headers - this should be called from the execute() method of all derived classes! More...
 
 setLinkRenderer (LinkRenderer $linkRenderer)
 
 setListed ( $listed)
 Set whether this page is listed in Special:Specialpages, at run-time. More...
 
 userCanExecute (User $user)
 Checks if the given user (identified by an object) can execute this special page (as defined by $mRestriction). More...
 

Protected Member Functions

 addModules ()
 Add page-specific modules. More...
 
 buildQuery (&$tables, &$fields, &$conds, &$query_options, &$join_conds, FormOptions $opts)
 @inheritDoc More...
 
 categoryFilterForm (FormOptions $opts)
 Create an input to filter changes by categories. More...
 
 doMainQuery ( $tables, $fields, $conds, $query_options, $join_conds, FormOptions $opts)
 @inheritDoc More...
 
 getCacheTTL ()
 
 getCustomFilters ()
 Get all custom filters. More...
 
 getDB ()
 Return a IDatabase object for reading. More...
 
 getFeedQuery ()
 Get URL query parameters for action=feedrecentchanges API feed of current recent changes view. More...
 
 namespaceFilterForm (FormOptions $opts)
 Creates the choose namespace selection. More...
 
 registerFilters ()
 @inheritDoc More...
 
 runMainQueryHook (&$tables, &$fields, &$conds, &$query_options, &$join_conds, $opts)
 
 transformFilterDefinition (array $filterDefinition)
 @inheritDoc More...
 
- Protected Member Functions inherited from ChangesListSpecialPage
 areFiltersInConflict ()
 Check if filters are in conflict and guaranteed to return no results. More...
 
 buildChangeTagList ()
 Fetch the change tags list for the front end. More...
 
 convertParamsForLink ( $params)
 Convert parameters values from true/false to 1/0 so they are not omitted by wfArrayToCgi() Bug 36524. More...
 
 fetchOptionsFromRequest ( $opts)
 Fetch values for a FormOptions object from the WebRequest associated with this instance. More...
 
 getFilterGroupDefinitionFromLegacyCustomFilters (array $customFilters)
 Get filter group definition from legacy custom filters. More...
 
 getFilterGroups ()
 Gets the currently registered filters groups. More...
 
 getGroupName ()
 Under which header this special page is listed in Special:SpecialPages See messages 'specialpages-group-*' for valid names This method defaults to group 'other'. More...
 
 includeRcFiltersApp ()
 Include the modules and configuration for the RCFilters app. More...
 
 outputNoResults ()
 Add the "no results" message to the output. More...
 
 registerFiltersFromDefinitions (array $definition)
 Register filters from a definition object. More...
 
- Protected Member Functions inherited from SpecialPage
 addFeedLinks ( $params)
 Adds RSS/atom links. More...
 
 afterExecute ( $subPage)
 Gets called after. More...
 
 beforeExecute ( $subPage)
 Gets called before. More...
 
 checkLoginSecurityLevel ( $level=null)
 Verifies that the user meets the security level, possibly reauthenticating them in the process. More...
 
 getLoginSecurityLevel ()
 Tells if the special page does something security-sensitive and needs extra defense against a stolen account (e.g. More...
 
 getRobotPolicy ()
 Return the robot policy. More...
 
 getSubpagesForPrefixSearch ()
 Return an array of subpages that this special page will accept for prefix searches. More...
 
 prefixSearchString ( $search, $limit, $offset)
 Perform a regular substring search for prefixSearchSubpages. More...
 
 useTransactionalTimeLimit ()
 Call wfTransactionalTimeLimit() if this request was POSTed. More...
 

Static Protected Attributes

static $savedQueriesPreferenceName = 'rcfilters-saved-queries'
 
- Static Protected Attributes inherited from ChangesListSpecialPage
static string $savedQueriesPreferenceName
 Preference name for saved queries. More...
 

Private Attributes

 $watchlistFilterGroupDefinition
 

Additional Inherited Members

- Static Public Member Functions inherited from SpecialPage
static getSafeTitleFor ( $name, $subpage=false)
 Get a localised Title object for a page name with a possibly unvalidated subpage. More...
 
static getTitleFor ( $name, $subpage=false, $fragment='')
 Get a localised Title object for a specified special page name If you don't need a full Title object, consider using TitleValue through getTitleValueFor() below. More...
 
static getTitleValueFor ( $name, $subpage=false, $fragment='')
 Get a localised TitleValue object for a specified special page name. More...
 
- Static Protected Member Functions inherited from SpecialPage
static prefixSearchArray ( $search, $limit, array $subpages, $offset)
 Helper function for implementations of prefixSearchSubpages() that filter the values in memory (as opposed to making a query). More...
 
- Protected Attributes inherited from ChangesListSpecialPage
array $customFilters
 
 $filterGroups = []
 Filter groups, and their contained filters This is an associative array (with group name as key) of ChangesListFilterGroup objects. More...
 
FormOptions $rcOptions
 
string $rcSubpage
 
- Protected Attributes inherited from SpecialPage
IContextSource $mContext
 Current request context. More...
 
 $mIncludable
 
 $mIncluding
 
 $mName
 
 $mRestriction
 

Detailed Description

A special page that lists last changes made to the wiki.

Definition at line 33 of file SpecialRecentchanges.php.

Constructor & Destructor Documentation

◆ __construct()

SpecialRecentChanges::__construct (   $name = 'Recentchanges',
  $restriction = '' 
)

Member Function Documentation

◆ addModules()

SpecialRecentChanges::addModules ( )
protected

Add page-specific modules.

Reimplemented from ChangesListSpecialPage.

Definition at line 717 of file SpecialRecentchanges.php.

References $out, and SpecialPage\getOutput().

◆ buildQuery()

SpecialRecentChanges::buildQuery ( $tables,
$fields,
$conds,
$query_options,
$join_conds,
FormOptions  $opts 
)
protected

@inheritDoc

Reimplemented from ChangesListSpecialPage.

Definition at line 299 of file SpecialRecentchanges.php.

References $dbr, $tables, getDB(), FormOptions\reset(), and wfTimestamp().

◆ categoryFilterForm()

SpecialRecentChanges::categoryFilterForm ( FormOptions  $opts)
protected

Create an input to filter changes by categories.

Parameters
FormOptions$opts
Returns
array

Definition at line 769 of file SpecialRecentchanges.php.

References $input, Xml\checkLabel(), Xml\inputLabelSep(), list, SpecialPage\msg(), and text.

Referenced by getExtraOptions().

◆ checkLastModified()

SpecialRecentChanges::checkLastModified ( )

Get last modified date, for client caching Don't use this if we are using the patrol feature, patrol changes don't update the timestamp.

Returns
string|bool

Definition at line 730 of file SpecialRecentchanges.php.

References $dbr, and getDB().

Referenced by execute().

◆ doHeader()

◆ doMainQuery()

SpecialRecentChanges::doMainQuery (   $tables,
  $fields,
  $conds,
  $query_options,
  $join_conds,
FormOptions  $opts 
)
protected

◆ execute()

SpecialRecentChanges::execute (   $subpage)

◆ filterByCategories()

SpecialRecentChanges::filterByCategories ( $rows,
FormOptions  $opts 
)

Filter $rows by categories set in $opts.

Parameters
ResultWrapper&$rowsDatabase rows
FormOptions$opts

Definition at line 785 of file SpecialRecentchanges.php.

References $rev, $rows, as, captcha-old\count, Title\makeTitle(), and CategoryFinder\seed().

Referenced by doMainQuery().

◆ getCacheTTL()

SpecialRecentChanges::getCacheTTL ( )
protected
Returns
int Seconds that this page can be cached

Reimplemented from SpecialPage.

Definition at line 1001 of file SpecialRecentchanges.php.

◆ getCustomFilters()

SpecialRecentChanges::getCustomFilters ( )
protected

Get all custom filters.

Returns
array Map of filter URL param names to properties (msg/default)

Reimplemented from ChangesListSpecialPage.

Definition at line 250 of file SpecialRecentchanges.php.

References ChangesListSpecialPage\$customFilters, and Hooks\run().

◆ getDB()

SpecialRecentChanges::getDB ( )
protected

Return a IDatabase object for reading.

Returns
IDatabase

Reimplemented from ChangesListSpecialPage.

Definition at line 417 of file SpecialRecentchanges.php.

References DB_REPLICA, and wfGetDB().

Referenced by buildQuery(), checkLastModified(), and doMainQuery().

◆ getDefaultDays()

SpecialRecentChanges::getDefaultDays ( )

Get the default value of the number of days to display when loading the result set.

Supports fractional values, and should be cast to a float.

Returns
float

Reimplemented from ChangesListSpecialPage.

Definition at line 1009 of file SpecialRecentchanges.php.

References SpecialPage\getUser().

Referenced by getDefaultOptions().

◆ getDefaultLimit()

SpecialRecentChanges::getDefaultLimit ( )

Reimplemented from ChangesListSpecialPage.

Definition at line 1005 of file SpecialRecentchanges.php.

References SpecialPage\getUser().

Referenced by getDefaultOptions().

◆ getDefaultOptions()

SpecialRecentChanges::getDefaultOptions ( )

Get a FormOptions object containing the default options.

Returns
FormOptions

Reimplemented from ChangesListSpecialPage.

Reimplemented in SpecialRecentChangesLinked.

Definition at line 232 of file SpecialRecentchanges.php.

References FormOptions\FLOAT, getDefaultDays(), and getDefaultLimit().

◆ getExtraOptions()

SpecialRecentChanges::getExtraOptions (   $opts)

Get options to be displayed in a form.

Parameters
FormOptions$opts
Returns
array

Reimplemented from ChangesListSpecialPage.

Reimplemented in SpecialRecentChangesLinked.

Definition at line 688 of file SpecialRecentchanges.php.

References ChangeTags\buildTagFilterSelector(), categoryFilterForm(), captcha-old\count, SpecialPage\getConfig(), SpecialPage\getContext(), SpecialPage\getName(), namespaceFilterForm(), and Hooks\run().

Referenced by doHeader().

◆ getFeedQuery()

SpecialRecentChanges::getFeedQuery ( )
protected

Get URL query parameters for action=feedrecentchanges API feed of current recent changes view.

Returns
array

Definition at line 430 of file SpecialRecentchanges.php.

References $query, $value, SpecialPage\getConfig(), and ChangesListSpecialPage\getOptions().

Referenced by execute(), and outputFeedLinks().

◆ isIncludable()

SpecialRecentChanges::isIncludable ( )

Whether it's allowed to transclude the special page via {{Special:Foo/params}}.

Returns
bool

Reimplemented from SpecialPage.

Definition at line 997 of file SpecialRecentchanges.php.

◆ makeOptionsLink()

SpecialRecentChanges::makeOptionsLink (   $title,
  $override,
  $options,
  $active = false 
)

Makes change an option link which carries all the other options.

Parameters
string$titleTitle
array$overrideOptions to override
array$optionsCurrent options
bool$activeWhether to show the link in bold
Returns
string

Definition at line 852 of file SpecialRecentchanges.php.

References $options, $params, $title, ChangesListSpecialPage\convertParamsForLink(), SpecialPage\getLinkRenderer(), and SpecialPage\getPageTitle().

Referenced by optionsPanel().

◆ namespaceFilterForm()

SpecialRecentChanges::namespaceFilterForm ( FormOptions  $opts)
protected

Creates the choose namespace selection.

Parameters
FormOptions$opts
Returns
string

Definition at line 743 of file SpecialRecentchanges.php.

References Xml\checkLabel(), Xml\label(), SpecialPage\msg(), Html\namespaceSelector(), and text.

Referenced by getExtraOptions().

◆ optionsPanel()

SpecialRecentChanges::optionsPanel (   $defaults,
  $nondefaults,
  $numRows 
)

Creates the options panel.

Parameters
array$defaults
array$nondefaults
int$numRowsNumber of rows in the result to show after this header
Returns
string

Definition at line 873 of file SpecialRecentchanges.php.

References $attribs, ChangesListSpecialPage\$filterGroups, $lang, $link, $options, $user, $value, as, SpecialPage\getConfig(), ChangesListSpecialPage\getFilterGroups(), SpecialPage\getLanguage(), SpecialPage\getUser(), makeOptionsLink(), SpecialPage\msg(), Html\rawElement(), and wfTimestampNow().

Referenced by doHeader().

◆ outputChangesList()

◆ outputFeedLinks()

SpecialRecentChanges::outputFeedLinks ( )

Output feed links.

Reimplemented from ChangesListSpecialPage.

Definition at line 421 of file SpecialRecentchanges.php.

References SpecialPage\addFeedLinks(), and getFeedQuery().

◆ parseParameters()

SpecialRecentChanges::parseParameters (   $par,
FormOptions  $opts 
)

Process $par and put options found in $opts.

Used when including the page.

Parameters
string$par
FormOptions$opts

Reimplemented from ChangesListSpecialPage.

Reimplemented in SpecialRecentChangesLinked.

Definition at line 265 of file SpecialRecentchanges.php.

References as.

◆ registerFilters()

SpecialRecentChanges::registerFilters ( )
protected

◆ runMainQueryHook()

SpecialRecentChanges::runMainQueryHook ( $tables,
$fields,
$conds,
$query_options,
$join_conds,
  $opts 
)
protected

Reimplemented from ChangesListSpecialPage.

Definition at line 406 of file SpecialRecentchanges.php.

References $tables, and Hooks\run().

Referenced by SpecialRecentChangesLinked\doMainQuery(), and doMainQuery().

◆ setTopText()

SpecialRecentChanges::setTopText ( FormOptions  $opts)

Send the text to be displayed above the options.

Parameters
FormOptions$optsUnused

Reimplemented from ChangesListSpecialPage.

Reimplemented in SpecialRecentChangesLinked.

Definition at line 630 of file SpecialRecentchanges.php.

References $wgContLang, SpecialPage\getOutput(), SpecialPage\getPageTitle(), global, ChangesListSpecialPage\isStructuredFilterUiEnabled(), SpecialPage\msg(), Html\rawElement(), and MessageCache\singleton().

Referenced by doHeader().

◆ transformFilterDefinition()

SpecialRecentChanges::transformFilterDefinition ( array  $filterDefinition)
protected

@inheritDoc

Reimplemented from ChangesListSpecialPage.

Definition at line 176 of file SpecialRecentchanges.php.

◆ validateOptions()

SpecialRecentChanges::validateOptions ( FormOptions  $opts)

Validate a FormOptions object generated by getDefaultOptions() with values already populated.

Parameters
FormOptions$opts

Reimplemented from ChangesListSpecialPage.

Definition at line 290 of file SpecialRecentchanges.php.

References SpecialPage\getConfig(), FormOptions\validateBounds(), and FormOptions\validateIntBounds().

Member Data Documentation

◆ $savedQueriesPreferenceName

SpecialRecentChanges::$savedQueriesPreferenceName = 'rcfilters-saved-queries'
staticprotected

Definition at line 35 of file SpecialRecentchanges.php.

◆ $watchlistFilterGroupDefinition

SpecialRecentChanges::$watchlistFilterGroupDefinition
private

Definition at line 37 of file SpecialRecentchanges.php.


The documentation for this class was generated from the following file: