MediaWiki master
MediaWiki\Specials\SpecialVersion Class Reference

Version information about MediaWiki (core, extensions, libs), PHP, and the database. More...

Inherits MediaWiki\SpecialPage\SpecialPage.

Collaboration diagram for MediaWiki\Specials\SpecialVersion:

Public Member Functions

 __construct (ParserFactory $parserFactory, UrlUtils $urlUtils, IConnectionProvider $dbProvider)
 
 compare ( $a, $b)
 Callback to sort extensions by type.
 
 execute ( $par)
 
 getCreditsForExtension ( $type, array $extension)
 Creates and formats a version line for a single extension.
 
 getEntryPointInfo ()
 Get the list of entry points and their URLs.
 
 listAuthors ( $authors, $extName, $extDir)
 Return a formatted unsorted list of authors.
 
- Public Member Functions inherited from MediaWiki\SpecialPage\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.
 
 getAssociatedNavigationLinks ()
 Return an array of strings representing page titles that are discoverable to end users via UI.
 
 getAuthority ()
 Shortcut to get the Authority executing this instance.
 
 getConfig ()
 Shortcut to get main config object.
 
 getContentLanguage ()
 Shortcut to get content language.
 
 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.
 
 getName ()
 Get the canonical, unlocalized name of this special page without namespace.
 
 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.
 
 getShortDescription (string $path='')
 Similar to getDescription but takes into account sub pages and designed for display in tabs.
 
 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}}.
 
 isListed ()
 Whether this special page is listed in Special:SpecialPages.
 
 isRestricted ()
 Can be overridden by subclasses with more complicated permissions schemes.
 
 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.
 
 requireNamedUser ( $reasonMsg='exception-nologin-text', $titleMsg='exception-nologin')
 If the user is not logged in or is a temporary user, throws UserNotLoggedIn.
 
 run ( $subPage)
 Entry point.
 
 setContentLanguage (Language $contentLanguage)
 Set content language.
 
 setContext ( $context)
 Sets the context this SpecialPage is executed in.
 
 setHookContainer (HookContainer $hookContainer)
 
 setLinkRenderer (LinkRenderer $linkRenderer)
 
 setSpecialPageFactory (SpecialPageFactory $specialPageFactory)
 
 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 arrayToString ( $list)
 Convert an array or object to a string for display.
 
static getCopyrightAndAuthorList ()
 Get the "MediaWiki is copyright 2001-20xx by lots of cool folks" text.
 
static getCredits (ExtensionRegistry $reg, Config $conf)
 
static getExtensionTypeName ( $type)
 Returns the internationalized name for an extension type.
 
static getExtensionTypes ()
 Returns an array with the base extension types.
 
static getGitHeadSha1 ( $dir)
 
static getVersion ( $flags='', $lang=null)
 Return a string of the MediaWiki version with Git revision if available.
 
static getVersionLinked ()
 Return a wikitext-formatted string of the MediaWiki version with a link to the Git SHA1 of head if available.
 
static parseForeignResources ()
 
- Static Public Member Functions inherited from MediaWiki\SpecialPage\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.
 
static newSearchPage (User $user)
 Get the users preferred search page.
 

Protected Member Functions

 getExtensionCategory ( $type, ?string $text, array $creditsGroup)
 Creates and returns the HTML for a single extension category.
 
 getExternalLibraries (array $credits)
 Generate an HTML table for external libraries that are installed.
 
 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'.
 
 getParserFunctionHooks ()
 Obtains a list of installed parser function hooks and the associated H2 header.
 
 getParserTags ()
 Obtains a list of installed parser tags and the associated H2 header.
 
- Protected Member Functions inherited from MediaWiki\SpecialPage\SpecialPage
 addFeedLinks ( $params)
 Adds RSS/atom links.
 
 afterExecute ( $subPage)
 Gets called after.
 
 authorizeAction (?string $action=null)
 Utility function for authorizing an action to be performed by the special page.
 
 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.
 
 getAuthManager ()
 
 getCacheTTL ()
 
 getHookContainer ()
 
 getHookRunner ()
 
 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.
 
 getSpecialPageFactory ()
 
 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 By default the message key is the canonical name of the special page May be overridden, i.e.
 
 prefixSearchString ( $search, $limit, $offset, SearchEngineFactory $searchEngineFactory=null)
 Perform a regular substring search for prefixSearchSubpages.
 
 setAuthManager (AuthManager $authManager)
 Set the injected AuthManager from the special page constructor.
 
 setHeaders ()
 Sets headers - this should be called from the execute() method of all derived classes!
 
 setReauthPostData (array $data)
 Record preserved POST data after a reauthentication.
 
 useTransactionalTimeLimit ()
 Call wfTransactionalTimeLimit() if this request was POSTed.
 

Protected Attributes

string $coreId = ''
 The current rev id/SHA hash of MediaWiki core.
 
bool $firstExtOpened = false
 
TOCData $tocData
 
int $tocIndex
 
int $tocSection
 
int $tocSubSection
 
- Protected Attributes inherited from MediaWiki\SpecialPage\SpecialPage
IContextSource $mContext
 Current request context.
 
bool $mIncludable
 Whether the special page can be included in an article.
 
bool $mIncluding
 Whether or not this special page is being included from an article.
 
string $mName
 The canonical name of this special page Also used as the message key for the default.
 
string $mRestriction
 Minimum user level required to access this page, or "" for anyone.
 

Static Protected Attributes

static string[] false $extensionTypes = false
 Lazy initialized key/value with message content.
 

Additional Inherited Members

- Static Protected Member Functions inherited from MediaWiki\SpecialPage\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).
 

Detailed Description

Version information about MediaWiki (core, extensions, libs), PHP, and the database.

Definition at line 59 of file SpecialVersion.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Specials\SpecialVersion::__construct ( ParserFactory $parserFactory,
UrlUtils $urlUtils,
IConnectionProvider $dbProvider )
Parameters
ParserFactory$parserFactory
UrlUtils$urlUtils
IConnectionProvider$dbProvider

Definition at line 97 of file SpecialVersion.php.

Member Function Documentation

◆ arrayToString()

static MediaWiki\Specials\SpecialVersion::arrayToString ( $list)
static

Convert an array or object to a string for display.

Access: internal
For use by ApiQuerySiteinfo (TODO: Turn into more stable method)
Parameters
mixed$listWill convert an array to string if given and return the parameter unaltered otherwise
Returns
mixed @fixme This should handle escaping more consistently, see FIXME in listToText

Definition at line 1358 of file SpecialVersion.php.

References wfMessage().

◆ compare()

MediaWiki\Specials\SpecialVersion::compare ( $a,
$b )

Callback to sort extensions by type.

Parameters
array$a
array$b
Returns
int

Definition at line 951 of file SpecialVersion.php.

◆ execute()

MediaWiki\Specials\SpecialVersion::execute ( $par)
Parameters
string | null$par

Reimplemented from MediaWiki\SpecialPage\SpecialPage.

Definition at line 126 of file SpecialVersion.php.

References MediaWiki\Html\element(), and MediaWiki\Parser\ParserOutput\setTOCData().

◆ getCopyrightAndAuthorList()

static MediaWiki\Specials\SpecialVersion::getCopyrightAndAuthorList ( )
static

Get the "MediaWiki is copyright 2001-20xx by lots of cool folks" text.

Access: internal
For use by WebInstallerWelcome
Returns
string Wikitext

Definition at line 343 of file SpecialVersion.php.

References MediaWiki\Message\Message\listParam(), and wfMessage().

◆ getCredits()

static MediaWiki\Specials\SpecialVersion::getCredits ( ExtensionRegistry $reg,
Config $conf )
static
Since
1.35
Parameters
ExtensionRegistry$reg
Config$confFor additional entries from $wgExtensionCredits.
Returns
array[]
See also
$wgExtensionCredits

Definition at line 115 of file SpecialVersion.php.

◆ getCreditsForExtension()

MediaWiki\Specials\SpecialVersion::getCreditsForExtension ( $type,
array $extension )

Creates and formats a version line for a single extension.

Information for five columns will be created. Parameters required in the $extension array for part rendering are indicated in ()

  • The name of (name), and URL link to (url), the extension
  • Official version number (version) and if available version control system revision (path), link, and date
  • If available the short name of the license (license-name) and a link to ((LICENSE)|(COPYING))(\.txt)? if it exists.
  • Description of extension (descriptionmsg or description)
  • List of authors (author) and link to a ((AUTHORS)|(CREDITS))(\.txt)? file if it exists
Parameters
string$typeCategory name of the extension
array$extension
Returns
string Raw HTML

Definition at line 973 of file SpecialVersion.php.

References CACHE_ANYTHING, and wfDebug().

◆ getEntryPointInfo()

MediaWiki\Specials\SpecialVersion::getEntryPointInfo ( )

Get the list of entry points and their URLs.

Returns
string HTML

Definition at line 1394 of file SpecialVersion.php.

References PROTO_RELATIVE, and wfScript().

◆ getExtensionCategory()

MediaWiki\Specials\SpecialVersion::getExtensionCategory ( $type,
?string $text,
array $creditsGroup )
protected

Creates and returns the HTML for a single extension category.

Since
1.17
Parameters
string$type
string | null$text
array$creditsGroup
Returns
string

Definition at line 929 of file SpecialVersion.php.

◆ getExtensionTypeName()

static MediaWiki\Specials\SpecialVersion::getExtensionTypeName ( $type)
static

Returns the internationalized name for an extension type.

Since
1.17
Parameters
string$type
Returns
string

Definition at line 562 of file SpecialVersion.php.

◆ getExtensionTypes()

static MediaWiki\Specials\SpecialVersion::getExtensionTypes ( )
static

Returns an array with the base extension types.

Type is stored as array key, the message as array value.

TODO: ideally this would return all extension types.

Since
1.17
Returns
string[]

Definition at line 532 of file SpecialVersion.php.

References MediaWiki\MediaWikiServices\getInstance(), and wfMessage().

◆ getExternalLibraries()

MediaWiki\Specials\SpecialVersion::getExternalLibraries ( array $credits)
protected

Generate an HTML table for external libraries that are installed.

Parameters
array$credits
Returns
string

Definition at line 666 of file SpecialVersion.php.

References $path.

◆ getGitHeadSha1()

static MediaWiki\Specials\SpecialVersion::getGitHeadSha1 ( $dir)
static
Deprecated
since 1.41 Use GitInfo::repo() for MW_INSTALL_PATH, or new GitInfo otherwise.
Parameters
string$dirDirectory of the git checkout
Returns
string|false Sha1 of commit HEAD points to

Definition at line 1385 of file SpecialVersion.php.

References wfDeprecated().

◆ getGroupName()

MediaWiki\Specials\SpecialVersion::getGroupName ( )
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'.

Stability: stable
to override
Returns
string
Since
1.21

Reimplemented from MediaWiki\SpecialPage\SpecialPage.

Definition at line 1459 of file SpecialVersion.php.

◆ getParserFunctionHooks()

MediaWiki\Specials\SpecialVersion::getParserFunctionHooks ( )
protected

Obtains a list of installed parser function hooks and the associated H2 header.

Returns
string HTML output

Definition at line 894 of file SpecialVersion.php.

◆ getParserTags()

MediaWiki\Specials\SpecialVersion::getParserTags ( )
protected

Obtains a list of installed parser tags and the associated H2 header.

Returns
string HTML output

Definition at line 851 of file SpecialVersion.php.

◆ getVersion()

static MediaWiki\Specials\SpecialVersion::getVersion ( $flags = '',
$lang = null )
static

Return a string of the MediaWiki version with Git revision if available.

Parameters
string$flagsIf set to 'nodb', the language-specific parantheses are not used.
Language | string | null$langLanguage in which to render the version; ignored if $flags is set to 'nodb'.
Returns
string A version string, as wikitext. This should be parsed (unless nodb is set) and escaped before being inserted as HTML.

Definition at line 448 of file SpecialVersion.php.

References MW_VERSION, and wfMessage().

◆ getVersionLinked()

static MediaWiki\Specials\SpecialVersion::getVersionLinked ( )
static

Return a wikitext-formatted string of the MediaWiki version with a link to the Git SHA1 of head if available.

The fallback is just MW_VERSION.

Returns
string

Definition at line 475 of file SpecialVersion.php.

References MW_VERSION.

◆ listAuthors()

MediaWiki\Specials\SpecialVersion::listAuthors ( $authors,
$extName,
$extDir )

Return a formatted unsorted list of authors.

'And Others' If an item in the $authors array is '...' it is assumed to indicate an 'and others' string which will then be linked to an ((AUTHORS)|(CREDITS))(\.txt)? file if it exists in $dir.

Similarly an entry ending with ' ...]' is assumed to be a link to an 'and others' page.

If no '...' string variant is found, but an authors file is found an 'and others' will be added to the end of the credits.

Parameters
string | array$authors
string | bool$extNameName of the extension for link creation, false if no links should be created
string$extDirPath to the extension root directory
Returns
string HTML fragment

Definition at line 1268 of file SpecialVersion.php.

◆ parseForeignResources()

static MediaWiki\Specials\SpecialVersion::parseForeignResources ( )
static
Access: internal
Since
1.42
Returns
array

Definition at line 770 of file SpecialVersion.php.

References $source.

Member Data Documentation

◆ $coreId

string MediaWiki\Specials\SpecialVersion::$coreId = ''
protected

The current rev id/SHA hash of MediaWiki core.

Definition at line 69 of file SpecialVersion.php.

◆ $extensionTypes

string [] false MediaWiki\Specials\SpecialVersion::$extensionTypes = false
staticprotected

Lazy initialized key/value with message content.

Definition at line 74 of file SpecialVersion.php.

◆ $firstExtOpened

bool MediaWiki\Specials\SpecialVersion::$firstExtOpened = false
protected

Definition at line 64 of file SpecialVersion.php.

◆ $tocData

TOCData MediaWiki\Specials\SpecialVersion::$tocData
protected

Definition at line 77 of file SpecialVersion.php.

◆ $tocIndex

int MediaWiki\Specials\SpecialVersion::$tocIndex
protected

Definition at line 80 of file SpecialVersion.php.

◆ $tocSection

int MediaWiki\Specials\SpecialVersion::$tocSection
protected

Definition at line 83 of file SpecialVersion.php.

◆ $tocSubSection

int MediaWiki\Specials\SpecialVersion::$tocSubSection
protected

Definition at line 86 of file SpecialVersion.php.


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