MediaWiki REL1_35
|
Special page which uses a ChangesList to show query results. More...
Public Member Functions | |
__construct ( $name, $restriction) | |
doHeader ( $opts, $numRows) | |
Set the text to be displayed above the changes. | |
execute ( $subpage) | |
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. | |
getDefaultDays () | |
Get the default value of the number of days to display when loading the result set. | |
getDefaultLimit () | |
Get the default value of the number of changes to display when loading the result set. | |
getDefaultOptions () | |
Get a FormOptions object containing the default options. | |
getExtraOptions ( $opts) | |
Get options to be displayed in a form. | |
getFilterGroup ( $groupName) | |
Gets a specified ChangesListFilterGroup by name. | |
getOptions () | |
Get the current FormOptions for this request. | |
getRows () | |
Get the database result for this special page instance. | |
getStructuredFilterJsData () | |
Gets structured filter information needed by JS. | |
isStructuredFilterUiEnabled () | |
Check whether the structured filter UI is enabled. | |
makeLegend () | |
Return the legend displayed within the fieldset. | |
outputChangesList ( $rows, $opts) | |
Build and output the actual changes list. | |
outputFeedLinks () | |
Output feed links. | |
parseParameters ( $par, FormOptions $opts) | |
Process $par and put options found in $opts. | |
registerFilterGroup (ChangesListFilterGroup $group) | |
Register a structured changes list filter group. | |
replaceOldOptions (FormOptions $opts) | |
Replace old options with their structured UI equivalents. | |
setBottomText (FormOptions $opts) | |
Send the text to be displayed after the options. | |
setTopText (FormOptions $opts) | |
Send the text to be displayed before the options. | |
setup ( $parameters) | |
Register all the filters, including legacy hook-driven ones. | |
validateOptions (FormOptions $opts) | |
Validate a FormOptions object generated by getDefaultOptions() with values already populated. | |
webOutput ( $rows, $opts) | |
Send output to the OutputPage object, only called if not used feeds. | |
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. | |
addHelpLink ( $to, $overrideBaseUrl=false) | |
Adds help link with an icon via page indicators. | |
checkPermissions () | |
Checks if userCanExecute, and if not throws a PermissionsError. | |
checkReadOnly () | |
If the wiki is currently in readonly mode, throws a ReadOnlyError. | |
doesWrites () | |
Indicates whether this special page may perform database writes. | |
getConfig () | |
Shortcut to get main config object. | |
getContext () | |
Gets the context this SpecialPage is executed in. | |
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. | |
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. | |
getFullTitle () | |
Return the full title, including $par. | |
getLanguage () | |
Shortcut to get user's language. | |
getLinkRenderer () | |
getLocalName () | |
Get the localised name of the special page Stable to override. | |
getName () | |
Get the name of this Special Page. | |
getOutput () | |
Get the OutputPage being used for this instance. | |
getPageTitle ( $subpage=false) | |
Get a self-referential title object. | |
getRequest () | |
Get the WebRequest being used for this instance. | |
getRestriction () | |
Get the permission that a user must have to execute this page. | |
getSkin () | |
Shortcut to get the skin being used for this instance. | |
getUser () | |
Shortcut to get the User executing this instance. | |
including ( $x=null) | |
Whether the special page is being evaluated via transclusion. | |
isCached () | |
Is this page cached? Expensive pages are cached or disabled in miser mode. | |
isExpensive () | |
Is this page expensive (for some definition of expensive)? Expensive pages are disabled or cached in miser mode. | |
isIncludable () | |
Whether it's allowed to transclude the special page via {{Special:Foo/params}} Stable to override. | |
isListed () | |
Whether this special page is listed in Special:SpecialPages Stable to override. | |
isRestricted () | |
Can be overridden by subclasses with more complicated permissions schemes. | |
listed ( $x=null) | |
Get or set whether this special page is listed in Special:SpecialPages. | |
maxIncludeCacheTime () | |
How long to cache page when it is being included. | |
msg ( $key,... $params) | |
Wrapper around wfMessage that sets the current context. | |
prefixSearchSubpages ( $search, $limit, $offset) | |
Return an array of subpages beginning with $search that this special page will accept. | |
requireLogin ( $reasonMsg='exception-nologin-text', $titleMsg='exception-nologin') | |
If the user is not logged in, throws UserNotLoggedIn error. | |
run ( $subPage) | |
Entry point. | |
setContext ( $context) | |
Sets the context this SpecialPage is executed in. | |
setHookContainer (HookContainer $hookContainer) | |
setLinkRenderer (LinkRenderer $linkRenderer) | |
setListed ( $listed) | |
Set whether this page is listed in Special:Specialpages, at run-time. | |
userCanExecute (User $user) | |
Checks if the given user (identified by an object) can execute this special page (as defined by $mRestriction). | |
Static Public Member Functions | |
static | checkStructuredFilterUiEnabled ( $user) |
Static method to check whether StructuredFilter UI is enabled for the given user. | |
static | getRcFiltersConfigSummary (ResourceLoaderContext $context) |
Get essential data about getRcFiltersConfigVars() for change detection. | |
static | getRcFiltersConfigVars (ResourceLoaderContext $context) |
Get config vars to export with the mediawiki.rcfilters.filters.ui module. | |
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. | |
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. | |
static | getTitleValueFor ( $name, $subpage=false, $fragment='') |
Get a localised TitleValue object for a specified special page name. | |
Protected Member Functions | |
addModules () | |
Add page-specific modules. | |
areFiltersInConflict () | |
Check if filters are in conflict and guaranteed to return no results. | |
buildQuery (&$tables, &$fields, &$conds, &$query_options, &$join_conds, FormOptions $opts) | |
Sets appropriate tables, fields, conditions, etc. | |
considerActionsForDefaultSavedQuery ( $subpage) | |
Check whether or not the page should load defaults, and if so, whether a default saved query is relevant to be redirected to. | |
convertParamsForLink ( $params) | |
Convert parameters values from true/false to 1/0 so they are not omitted by wfArrayToCgi() T38524. | |
doMainQuery ( $tables, $fields, $conds, $query_options, $join_conds, FormOptions $opts) | |
Process the query. | |
fetchOptionsFromRequest ( $opts) | |
Fetch values for a FormOptions object from the WebRequest associated with this instance. | |
getDB () | |
Return a IDatabase object for reading. | |
getFilterGroups () | |
Gets the currently registered filters groups. | |
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'. | |
getLegacyShowHideFilters () | |
getLinkDays () | |
includeRcFiltersApp () | |
Include the modules and configuration for the RCFilters app. | |
outputNoResults () | |
Add the "no results" message to the output. | |
outputTimeout () | |
Add the "timeout" message to the output. | |
registerFilters () | |
Register all filters and their groups (including those from hooks), plus handle conflicts and defaults. | |
registerFiltersFromDefinitions (array $definition) | |
Register filters from a definition object. | |
runMainQueryHook (&$tables, &$fields, &$conds, &$query_options, &$join_conds, $opts) | |
transformFilterDefinition (array $filterDefinition) | |
Transforms filter definition to prepare it for constructor. | |
Protected Member Functions inherited from SpecialPage | |
addFeedLinks ( $params) | |
Adds RSS/atom links. | |
afterExecute ( $subPage) | |
Gets called after. | |
beforeExecute ( $subPage) | |
Gets called before. | |
buildPrevNextNavigation ( $offset, $limit, array $query=[], $atend=false, $subpage=false) | |
Generate (prev x| next x) (20|50|100...) type links for paging. | |
checkLoginSecurityLevel ( $level=null) | |
Verifies that the user meets the security level, possibly reauthenticating them in the process. | |
displayRestrictionError () | |
Output an error message telling the user what access level they have to have Stable to override. | |
getCacheTTL () | |
Stable to override. | |
getHookContainer () | |
getHookRunner () | |
getLanguageConverter () | |
Shortcut to get language's converter. | |
getLoginSecurityLevel () | |
Tells if the special page does something security-sensitive and needs extra defense against a stolen account (e.g. | |
getRobotPolicy () | |
Return the robot policy. | |
getSubpagesForPrefixSearch () | |
Return an array of subpages that this special page will accept for prefix searches. | |
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. | |
prefixSearchString ( $search, $limit, $offset) | |
Perform a regular substring search for prefixSearchSubpages. | |
setHeaders () | |
Sets headers - this should be called from the execute() method of all derived classes! Stable to override. | |
setReauthPostData (array $data) | |
Record preserved POST data after a reauthentication. | |
useTransactionalTimeLimit () | |
Call wfTransactionalTimeLimit() if this request was POSTed. | |
Static Protected Member Functions | |
static | getChangeTagList (ResourceLoaderContext $context) |
Get information about change tags to export to JS via getRcFiltersConfigVars(). | |
static | getChangeTagListSummary (ResourceLoaderContext $context) |
Get information about change tags, without parsing messages, for getRcFiltersConfigSummary(). | |
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). | |
Protected Attributes | |
ChangesListFilterGroup[] | $filterGroups = [] |
Filter groups, and their contained filters This is an associative array (with group name as key) of ChangesListFilterGroup objects. | |
FormOptions | $rcOptions |
string | $rcSubpage |
Protected Attributes inherited from SpecialPage | |
IContextSource | $mContext |
Current request context. | |
$mIncludable | |
$mIncluding | |
$mName | |
$mRestriction | |
Static Protected Attributes | |
static string | $collapsedPreferenceName |
Preference name for collapsing the active filter display. | |
static string | $daysPreferenceName |
Preference name for 'days'. | |
static string | $limitPreferenceName |
Preference name for 'limit'. | |
static string | $savedQueriesPreferenceName |
Preference name for saved queries. | |
Private Member Functions | |
expandSymbolicNamespaceFilters (array $namespaces) | |
fixBackwardsCompatibilityOptions (FormOptions $opts) | |
Fix a special case (hideanons=1 and hideliu=1) in a special way, for backwards compatibility. | |
fixContradictoryOptions (FormOptions $opts) | |
Fix invalid options by resetting pairs that should never appear together. | |
webOutputHeader ( $rowCount, $opts) | |
Send header output to the OutputPage object, only called if not using feeds. | |
Private Attributes | |
array | $filterGroupDefinitions |
Definition information for the filters and their groups. | |
$hideCategorizationFilterDefinition | |
$legacyReviewStatusFilterGroupDefinition | |
$reviewStatusFilterGroupDefinition | |
const | TAG_DESC_CHARACTER_LIMIT = 120 |
Maximum length of a tag description in UTF-8 characters. | |
Special page which uses a ChangesList to show query results.
Definition at line 38 of file ChangesListSpecialPage.php.
ChangesListSpecialPage::__construct | ( | $name, | |
$restriction | |||
) |
Reimplemented in SpecialRecentChanges, and SpecialWatchlist.
Definition at line 111 of file ChangesListSpecialPage.php.
References $dbr, $s, SpecialPage\getHookRunner(), LIST_OR, ChangesListStringOptionsFilterGroup\NONE, RC_CATEGORIZE, RC_EDIT, RC_LOG, and RC_NEW.
|
protected |
Add page-specific modules.
Reimplemented in SpecialRecentChanges.
Definition at line 1815 of file ChangesListSpecialPage.php.
References SpecialPage\getOutput(), SpecialPage\including(), and isStructuredFilterUiEnabled().
Referenced by execute().
|
protected |
Check if filters are in conflict and guaranteed to return no results.
Definition at line 583 of file ChangesListSpecialPage.php.
References ChangesListFilter\getConflictingFilters(), getFilterGroups(), getOptions(), and wfLogWarning().
Referenced by SpecialWatchlist\doMainQuery().
|
protected |
Sets appropriate tables, fields, conditions, etc.
depending on which filters the user requested.
array | &$tables | Array of tables; see IDatabase::select $table |
array | &$fields | Array of fields; see IDatabase::select $vars |
array | &$conds | Array of conditions; see IDatabase::select $conds |
array | &$query_options | Array of query options; see IDatabase::select $options |
array | &$join_conds | Array of join conditions; see IDatabase::select $join_conds |
FormOptions | $opts |
Definition at line 1522 of file ChangesListSpecialPage.php.
References $dbr, expandSymbolicNamespaceFilters(), getDB(), isStructuredFilterUiEnabled(), FormOptions\reset(), and wfTimestamp().
Referenced by getRows().
|
static |
Static method to check whether StructuredFilter UI is enabled for the given user.
User | $user |
Reimplemented in SpecialWatchlist.
Definition at line 1976 of file ChangesListSpecialPage.php.
References wfDeprecated().
|
protected |
Check whether or not the page should load defaults, and if so, whether a default saved query is relevant to be redirected to.
If it is relevant, redirect properly with all necessary query parameters.
string | $subpage |
Definition at line 711 of file ChangesListSpecialPage.php.
References getOptions(), SpecialPage\getOutput(), SpecialPage\getPageTitle(), SpecialPage\getRequest(), getUser(), SpecialPage\including(), and isStructuredFilterUiEnabled().
Referenced by execute().
|
protected |
Convert parameters values from true/false to 1/0 so they are not omitted by wfArrayToCgi() T38524.
array | $params |
Definition at line 1501 of file ChangesListSpecialPage.php.
Referenced by validateOptions().
ChangesListSpecialPage::doHeader | ( | $opts, | |
$numRows | |||
) |
Set the text to be displayed above the changes.
FormOptions | $opts | |
int | $numRows | Number of rows in the result to show after this header |
Reimplemented in SpecialRecentChanges, and SpecialWatchlist.
Definition at line 1689 of file ChangesListSpecialPage.php.
References setBottomText(), and setTopText().
Referenced by webOutputHeader().
|
protected |
Process the query.
array | $tables | Array of tables; see IDatabase::select $table |
array | $fields | Array of fields; see IDatabase::select $vars |
array | $conds | Array of conditions; see IDatabase::select $conds |
array | $query_options | Array of query options; see IDatabase::select $options |
array | $join_conds | Array of join conditions; see IDatabase::select $join_conds |
FormOptions | $opts |
Reimplemented in SpecialRecentChanges, SpecialWatchlist, and SpecialRecentChangesLinked.
Definition at line 1592 of file ChangesListSpecialPage.php.
References $dbr, getDB(), ChangeTags\modifyDisplayQuery(), and runMainQueryHook().
Referenced by getRows().
ChangesListSpecialPage::execute | ( | $subpage | ) |
string | null | $subpage |
Reimplemented from SpecialPage.
Reimplemented in SpecialRecentChanges, and SpecialWatchlist.
Definition at line 623 of file ChangesListSpecialPage.php.
References $title, LinkBatch\add(), addModules(), considerActionsForDefaultSavedQuery(), SpecialPage\getConfig(), getDB(), getOptions(), SpecialPage\getOutput(), SpecialPage\getRequest(), getRows(), getUser(), includeRcFiltersApp(), LogFormatter\newFromRow(), NS_USER, NS_USER_TALK, SpecialPage\outputHeader(), outputTimeout(), SpecialPage\setHeaders(), webOutput(), and webOutputHeader().
|
private |
Definition at line 2007 of file ChangesListSpecialPage.php.
Referenced by buildQuery().
|
protected |
Fetch values for a FormOptions object from the WebRequest associated with this instance.
Intended for subclassing, e.g. to add a backwards-compatibility layer.
FormOptions | $opts |
Reimplemented in SpecialWatchlist.
Definition at line 1320 of file ChangesListSpecialPage.php.
References SpecialPage\getRequest().
Referenced by setup().
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.
string | $specialPageClassName | Class name of current special page |
IContextSource | $context | Context, for e.g. user |
IDatabase | $dbr | Database, for addQuotes, makeList, and similar |
array | &$tables | Array of tables; see IDatabase::select $table |
array | &$fields | Array of fields; see IDatabase::select $vars |
array | &$conds | Array of conditions; see IDatabase::select $conds |
array | &$query_options | Array of query options; see IDatabase::select $options |
array | &$join_conds | Array of join conditions; see IDatabase::select $join_conds |
array | $selectedExpLevels | The allowed active values, sorted |
int | $now | Number of seconds since the UNIX epoch, or 0 if not given (optional) |
Definition at line 1851 of file ChangesListSpecialPage.php.
References $dbr, $wgExperiencedUserEdits, $wgExperiencedUserMemberSince, $wgLearnerEdits, and $wgLearnerMemberSince.
|
private |
Fix a special case (hideanons=1 and hideliu=1) in a special way, for backwards compatibility.
This is deprecated and may be removed.
FormOptions | $opts |
Definition at line 1432 of file ChangesListSpecialPage.php.
References FormOptions\reset().
Referenced by fixContradictoryOptions().
|
private |
Fix invalid options by resetting pairs that should never appear together.
FormOptions | $opts |
Definition at line 1390 of file ChangesListSpecialPage.php.
References fixBackwardsCompatibilityOptions().
Referenced by validateOptions().
|
staticprotected |
Get information about change tags to export to JS via getRcFiltersConfigVars().
This manipulates the label and description of each tag, which are parsed, stripped and (in the case of description) truncated versions of these messages. Message parsing is expensive, so to detect whether the tag list has changed, use getChangeTagListSummary() instead.
The result of this function is cached in WANCache for 24 hours.
ResourceLoaderContext | $context |
Definition at line 970 of file ChangesListSpecialPage.php.
References ResourceLoaderContext\getLanguage().
|
staticprotected |
Get information about change tags, without parsing messages, for getRcFiltersConfigSummary().
Message contents are the raw values (->plain()), because parsing messages is expensive. Even though we're not parsing messages, building a data structure with the contents of hundreds of i18n messages is still not cheap (see T223260#5370610), so the result of this function is cached in WANCache for 24 hours.
Returns an array of associative arrays with information about each tag:
ResourceLoaderContext | $context |
Definition at line 912 of file ChangesListSpecialPage.php.
References $cache, ResourceLoaderContext\getLanguage(), ChangeTags\listExplicitlyDefinedTags(), ChangeTags\listSoftwareActivatedTags(), ChangeTags\tagLongDescriptionMessage(), ChangeTags\tagShortDescriptionMessage(), and ChangeTags\tagUsageStatistics().
|
protected |
Return a IDatabase object for reading.
Reimplemented in SpecialRecentChanges, and SpecialWatchlist.
Definition at line 1639 of file ChangesListSpecialPage.php.
References DB_REPLICA, and wfGetDB().
ChangesListSpecialPage::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.
Definition at line 2003 of file ChangesListSpecialPage.php.
References getUser().
Referenced by getDefaultOptions(), and includeRcFiltersApp().
ChangesListSpecialPage::getDefaultLimit | ( | ) |
Get the default value of the number of changes to display when loading the result set.
Reimplemented in SpecialRecentChanges.
Definition at line 1991 of file ChangesListSpecialPage.php.
References getUser().
Referenced by getDefaultOptions(), and includeRcFiltersApp().
ChangesListSpecialPage::getDefaultOptions | ( | ) |
Get a FormOptions object containing the default options.
By default, returns some basic options. The filters listed explicitly here are overriden in this method, in subclasses, but most filters (e.g. hideminor, userExpLevel filters, and more) are structured. Structured filters are overriden in registerFilters. not here.
Reimplemented in SpecialRecentChangesLinked.
Definition at line 1217 of file ChangesListSpecialPage.php.
References getDefaultDays(), getDefaultLimit(), SpecialPage\getRequest(), and isStructuredFilterUiEnabled().
Referenced by setup().
ChangesListSpecialPage::getExtraOptions | ( | $opts | ) |
Get options to be displayed in a form.
This should handle options returned by getDefaultOptions().
Not called by anything in this class (but is in subclasses), should be called by something… doHeader() maybe?
FormOptions | $opts |
Reimplemented in SpecialRecentChanges, and SpecialRecentChangesLinked.
Definition at line 1728 of file ChangesListSpecialPage.php.
ChangesListSpecialPage::getFilterGroup | ( | $groupName | ) |
Gets a specified ChangesListFilterGroup by name.
string | $groupName | Name of group |
Definition at line 1269 of file ChangesListSpecialPage.php.
Referenced by registerFilters(), SpecialWatchlist\registerFilters(), and replaceOldOptions().
|
protected |
Gets the currently registered filters groups.
Definition at line 1258 of file ChangesListSpecialPage.php.
Referenced by areFiltersInConflict().
|
protected |
Under which header this special page is listed in Special:SpecialPages See messages 'specialpages-group-*' for valid names This method defaults to group 'other'.
Stable to override
Reimplemented from SpecialPage.
Definition at line 1831 of file ChangesListSpecialPage.php.
|
protected |
Definition at line 1169 of file ChangesListSpecialPage.php.
Referenced by SpecialWatchlist\fetchOptionsFromRequest().
|
protected |
Definition at line 780 of file ChangesListSpecialPage.php.
References SpecialPage\getConfig().
Referenced by includeRcFiltersApp().
ChangesListSpecialPage::getOptions | ( | ) |
Get the current FormOptions for this request.
Definition at line 1038 of file ChangesListSpecialPage.php.
References setup().
Referenced by areFiltersInConflict(), considerActionsForDefaultSavedQuery(), execute(), SpecialWatchlist\execute(), getRows(), and SpecialRecentChangesLinked\getTargetTitle().
|
static |
Get essential data about getRcFiltersConfigVars() for change detection.
Definition at line 868 of file ChangesListSpecialPage.php.
References SpecialPage\getTitleFor().
|
static |
Get config vars to export with the mediawiki.rcfilters.filters.ui module.
Definition at line 884 of file ChangesListSpecialPage.php.
References SpecialPage\getTitleFor().
ChangesListSpecialPage::getRows | ( | ) |
Get the database result for this special page instance.
Used by ApiFeedRecentChanges.
Definition at line 1020 of file ChangesListSpecialPage.php.
References buildQuery(), doMainQuery(), and getOptions().
Referenced by execute().
ChangesListSpecialPage::getStructuredFilterJsData | ( | ) |
Gets structured filter information needed by JS.
Definition at line 1286 of file ChangesListSpecialPage.php.
Referenced by includeRcFiltersApp().
|
protected |
Include the modules and configuration for the RCFilters app.
Conditional on the user having the feature enabled.
If it is disabled, add a <body> class marking that
Definition at line 808 of file ChangesListSpecialPage.php.
References SpecialPage\getConfig(), getDefaultDays(), getDefaultLimit(), getLinkDays(), SpecialPage\getOutput(), getStructuredFilterJsData(), getUser(), SpecialPage\including(), isStructuredFilterUiEnabled(), and SpecialPage\msg().
Referenced by execute().
ChangesListSpecialPage::isStructuredFilterUiEnabled | ( | ) |
Check whether the structured filter UI is enabled.
Definition at line 1961 of file ChangesListSpecialPage.php.
References SpecialPage\getRequest(), and getUser().
Referenced by addModules(), buildQuery(), considerActionsForDefaultSavedQuery(), SpecialWatchlist\execute(), getDefaultOptions(), includeRcFiltersApp(), makeLegend(), SpecialWatchlist\registerFilters(), and replaceOldOptions().
ChangesListSpecialPage::makeLegend | ( | ) |
Return the legend displayed within the fieldset.
Definition at line 1737 of file ChangesListSpecialPage.php.
References getContext(), SpecialPage\getRequest(), and isStructuredFilterUiEnabled().
|
abstract |
Build and output the actual changes list.
IResultWrapper | $rows | Database rows |
FormOptions | $opts |
Reimplemented in SpecialRecentChanges, and SpecialWatchlist.
Referenced by webOutput().
ChangesListSpecialPage::outputFeedLinks | ( | ) |
Output feed links.
Reimplemented in SpecialRecentChanges, and SpecialWatchlist.
Definition at line 1671 of file ChangesListSpecialPage.php.
Referenced by webOutputHeader().
|
protected |
Add the "no results" message to the output.
Reimplemented in SpecialRecentChangesLinked.
Definition at line 996 of file ChangesListSpecialPage.php.
References SpecialPage\getOutput(), and SpecialPage\msg().
|
protected |
Add the "timeout" message to the output.
Definition at line 1007 of file ChangesListSpecialPage.php.
References SpecialPage\getOutput(), and SpecialPage\msg().
Referenced by execute().
ChangesListSpecialPage::parseParameters | ( | $par, | |
FormOptions | $opts | ||
) |
Process $par and put options found in $opts.
Used when including the page.
string | $par | |
FormOptions | $opts |
Reimplemented in SpecialRecentChanges, and SpecialRecentChangesLinked.
Definition at line 1332 of file ChangesListSpecialPage.php.
Referenced by setup().
ChangesListSpecialPage::registerFilterGroup | ( | ChangesListFilterGroup | $group | ) |
Register a structured changes list filter group.
ChangesListFilterGroup | $group |
Definition at line 1247 of file ChangesListSpecialPage.php.
References ChangesListFilterGroup\getName().
Referenced by SpecialWatchlist\registerFilters(), and registerFiltersFromDefinitions().
|
protected |
Register all filters and their groups (including those from hooks), plus handle conflicts and defaults.
You might want to customize these in the same method, in subclasses. You can call getFilterGroup to access a group, and (on the group) getFilter to access a filter, then make necessary modfications to the filter or group (e.g. with setDefault).
Reimplemented in SpecialRecentChanges, and SpecialWatchlist.
Definition at line 1055 of file ChangesListSpecialPage.php.
References SpecialPage\getConfig(), getFilterGroup(), SpecialPage\getHookRunner(), getUser(), SpecialPage\including(), registerFiltersFromDefinitions(), and transformFilterDefinition().
Referenced by setup().
|
protected |
Register filters from a definition object.
Array specifying groups and their filters; see Filter and ChangesListFilterGroup constructors.
There is light processing to simplify core maintenance.
array | $definition | -param array<int,array{class:string,filters:array}> $definition |
Definition at line 1143 of file ChangesListSpecialPage.php.
References registerFilterGroup(), and transformFilterDefinition().
Referenced by registerFilters().
ChangesListSpecialPage::replaceOldOptions | ( | FormOptions | $opts | ) |
Replace old options with their structured UI equivalents.
FormOptions | $opts |
Definition at line 1452 of file ChangesListSpecialPage.php.
References getFilterGroup(), isStructuredFilterUiEnabled(), FormOptions\reset(), and ChangesListStringOptionsFilterGroup\SEPARATOR.
Referenced by validateOptions().
|
protected |
Definition at line 1627 of file ChangesListSpecialPage.php.
References SpecialPage\getHookRunner(), and SpecialPage\getName().
Referenced by doMainQuery(), SpecialWatchlist\doMainQuery(), and SpecialRecentChangesLinked\doMainQuery().
ChangesListSpecialPage::setBottomText | ( | FormOptions | $opts | ) |
Send the text to be displayed after the options.
Should use $this->getOutput()->addWikiTextAsInterface() or similar methods to print the text.
FormOptions | $opts |
Definition at line 1715 of file ChangesListSpecialPage.php.
Referenced by doHeader().
ChangesListSpecialPage::setTopText | ( | FormOptions | $opts | ) |
Send the text to be displayed before the options.
Should use $this->getOutput()->addWikiTextAsInterface() or similar methods to print the text.
FormOptions | $opts |
Reimplemented in SpecialRecentChanges, SpecialRecentChangesLinked, and SpecialWatchlist.
Definition at line 1704 of file ChangesListSpecialPage.php.
Referenced by doHeader().
ChangesListSpecialPage::setup | ( | $parameters | ) |
Register all the filters, including legacy hook-driven ones.
Then create a FormOptions object with options as specified by the user
string | $parameters |
Definition at line 1191 of file ChangesListSpecialPage.php.
References fetchOptionsFromRequest(), getDefaultOptions(), parseParameters(), registerFilters(), and validateOptions().
Referenced by getOptions().
|
protected |
Transforms filter definition to prepare it for constructor.
See overrides of this method as well.
array | $filterDefinition | Original filter definition |
Reimplemented in SpecialRecentChanges, and SpecialWatchlist.
Definition at line 1129 of file ChangesListSpecialPage.php.
Referenced by registerFilters(), and registerFiltersFromDefinitions().
ChangesListSpecialPage::validateOptions | ( | FormOptions | $opts | ) |
Validate a FormOptions object generated by getDefaultOptions() with values already populated.
FormOptions | $opts |
Definition at line 1371 of file ChangesListSpecialPage.php.
References convertParamsForLink(), fixContradictoryOptions(), FormOptions\getChangedValues(), SpecialPage\getConfig(), SpecialPage\getOutput(), SpecialPage\getPageTitle(), replaceOldOptions(), FormOptions\validateBounds(), FormOptions\validateIntBounds(), and wfArrayToCgi().
Referenced by setup().
ChangesListSpecialPage::webOutput | ( | $rows, | |
$opts | |||
) |
Send output to the OutputPage object, only called if not used feeds.
IResultWrapper | $rows | Database rows |
FormOptions | $opts |
Definition at line 1662 of file ChangesListSpecialPage.php.
References outputChangesList(), and webOutputHeader().
Referenced by execute().
|
private |
Send header output to the OutputPage object, only called if not using feeds.
int | $rowCount | Number of database rows |
FormOptions | $opts |
Definition at line 1649 of file ChangesListSpecialPage.php.
References doHeader(), SpecialPage\including(), and outputFeedLinks().
Referenced by execute(), and webOutput().
|
staticprotected |
Preference name for collapsing the active filter display.
Subclasses should override this.
Definition at line 67 of file ChangesListSpecialPage.php.
|
staticprotected |
Preference name for 'days'.
Subclasses should override this.
Definition at line 55 of file ChangesListSpecialPage.php.
|
private |
Definition information for the filters and their groups.
The value is $groupDefinition, a parameter to the ChangesListFilterGroup constructor. However, priority is dynamically added for the core groups, to ease maintenance.
Groups are displayed to the user in the structured UI. However, if necessary, all of the filters in a group can be configured to only display on the unstuctured UI, in which case you don't need a group title.
Definition at line 91 of file ChangesListSpecialPage.php.
|
protected |
Filter groups, and their contained filters This is an associative array (with group name as key) of ChangesListFilterGroup objects.
Definition at line 109 of file ChangesListSpecialPage.php.
|
private |
Definition at line 101 of file ChangesListSpecialPage.php.
|
private |
Definition at line 95 of file ChangesListSpecialPage.php.
|
staticprotected |
Preference name for 'limit'.
Subclasses should override this.
Definition at line 61 of file ChangesListSpecialPage.php.
|
protected |
Definition at line 73 of file ChangesListSpecialPage.php.
|
protected |
Definition at line 70 of file ChangesListSpecialPage.php.
|
private |
Definition at line 98 of file ChangesListSpecialPage.php.
|
staticprotected |
Preference name for saved queries.
Subclasses that use saved queries should override this.
Definition at line 49 of file ChangesListSpecialPage.php.
|
private |
Maximum length of a tag description in UTF-8 characters.
Longer descriptions will be truncated.
Definition at line 43 of file ChangesListSpecialPage.php.