MediaWiki  1.23.2
SpecialVersion Class Reference

Give information about the version of MediaWiki, PHP, the DB and extensions. More...

Inheritance diagram for SpecialVersion:
Collaboration diagram for SpecialVersion:

Public Member Functions

 __construct ()
 
 compare ( $a, $b)
 Callback to sort extensions by type. More...
 
 execute ( $par)
 main() More...
 
 getCreditsForExtension (array $extension)
 Creates and formats a version line for a single extension. More...
 
 getEntryPointInfo ()
 Get the list of entry points and their URLs. More...
 
 getExtensionCredits ()
 Generate wikitext showing extensions name, URL, author and description. More...
 
 listAuthors ( $authors, $extName, $extDir)
 Return a formatted unsorted list of authors. More...
 
 listToText ( $list, $sort=true)
 Convert an array of items into a list for display. More...
 
- Public Member Functions inherited from SpecialPage
 __construct ( $name='', $restriction='', $listed=true, $function=false, $file='default', $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...
 
 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...
 
 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...
 
 getFile ()
 Get the file which will be included by SpecialPage::execute() if your extension is still stuck in the past and hasn't overridden the execute() method. 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...
 
 getLang ()
 Shortcut to get user's language. More...
 
 getLanguage ()
 Shortcut to get user's language. More...
 
 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...
 
 isIncludable ()
 Whether it's allowed to transclude the special page via {{Special:Foo/params}}. 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...
 
 msg ()
 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...
 
 requireLogin ( $reasonMsg=null, $titleMsg=null)
 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...
 
 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...
 

Static Public Member Functions

static arrayToString ( $list)
 Convert an array or object to a string for display. More...
 
static getCopyrightAndAuthorList ()
 Get the "MediaWiki is copyright 2001-20xx by lots of cool guys" text. More...
 
static getExtAuthorsFileName ( $extDir)
 Obtains the full path of an extensions authors or credits file if one exists. More...
 
static getExtensionTypeName ( $type)
 Returns the internationalized name for an extension type. More...
 
static getExtensionTypes ()
 Returns an array with the base extension types. More...
 
static getExtLicenseFileName ( $extDir)
 Obtains the full path of an extensions copying or license file if one exists. More...
 
static getGitHeadSha1 ( $dir)
 
static getSvnInfo ( $dir)
 Get an associative array of information about a given path, from its .svn subdirectory. More...
 
static getSvnRevision ( $dir)
 Retrieve the revision number of a Subversion working directory. More...
 
static getVersion ( $flags='')
 Return a string of the MediaWiki version with SVN revision if available. More...
 
static getVersionLinked ()
 Return a wikitext-formatted string of the MediaWiki version with a link to the SVN revision or the git SHA1 of head if available. More...
 
static softwareInformation ()
 Returns wiki text showing the third party software versions (apache, php, mysql). More...
 
- 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. More...
 

Protected Member Functions

 getExtensionCategory ( $type, $message)
 Creates and returns the HTML for a single extension category. 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...
 
 getParserFunctionHooks ()
 Obtains a list of installed parser function hooks and the associated H2 header. More...
 
 getParserTags ()
 Obtains a list of installed parser tags and the associated H2 header. 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...
 
 getRobotPolicy ()
 Return the robot policy. More...
 

Protected Attributes

 $coreId = ''
 Stores the current rev id/SHA hash of MediaWiki core. More...
 
 $firstExtOpened = false
 
- Protected Attributes inherited from SpecialPage
IContextSource $mContext
 Current request context. More...
 
 $mIncludable
 
 $mIncluding
 
 $mName
 

Static Protected Attributes

static $extensionTypes = false
 
static $viewvcUrls
 

Private Member Functions

 getWgHooks ()
 Generate wikitext showing hooks in $wgHooks. More...
 
 IPInfo ()
 Get information about client's IP address. More...
 
 openExtType ( $text, $name=null)
 

Static Private Member Functions

static getMediaWikiCredits ()
 Returns wiki text showing the license information. More...
 
static getVersionLinkedGit ()
 
static getVersionLinkedSvn ()
 
static getwgVersionLinked ()
 

Detailed Description

Give information about the version of MediaWiki, PHP, the DB and extensions.

Definition at line 31 of file SpecialVersion.php.

Constructor & Destructor Documentation

◆ __construct()

SpecialVersion::__construct ( )

Definition at line 47 of file SpecialVersion.php.

Member Function Documentation

◆ arrayToString()

static SpecialVersion::arrayToString (   $list)
static

Convert an array or object to a string for display.

Parameters
mixed$listwill convert an array to string if given and return the paramater unaltered otherwise
Returns
mixed

Definition at line 992 of file SpecialVersion.php.

References wfMessage().

Referenced by listToText().

◆ compare()

SpecialVersion::compare (   $a,
  $b 
)

Callback to sort extensions by type.

Parameters
$aarray
$barray
Returns
int

Definition at line 565 of file SpecialVersion.php.

References SpecialPage\getLanguage().

◆ execute()

◆ getCopyrightAndAuthorList()

static SpecialVersion::getCopyrightAndAuthorList ( )
static

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

Returns
String

Definition at line 170 of file SpecialVersion.php.

References $wgLang, array(), format, MWTimestamp\getLocalInstance(), global, text, and wfMessage().

Referenced by getMediaWikiCredits().

◆ getCreditsForExtension()

SpecialVersion::getCreditsForExtension ( 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 linke 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
$extensionArray
Returns
string raw HTML

Definition at line 592 of file SpecialVersion.php.

References $cache, $html, $IP, $out, array(), CACHE_ANYTHING, Html\closeElement(), Html\element(), getExtLicenseFileName(), getGitHeadSha1(), SpecialPage\getLanguage(), SpecialPage\getOutput(), SpecialPage\getPageTitle(), getSvnInfo(), global, Linker\link(), list, listAuthors(), Linker\makeExternalLink(), SpecialPage\msg(), Html\openElement(), Html\rawElement(), wfDebug(), wfGetCache(), and wfMemcKey().

Referenced by getExtensionCategory().

◆ getEntryPointInfo()

SpecialVersion::getEntryPointInfo ( )

Get the list of entry points and their URLs.

Returns
string Wikitext

Definition at line 1129 of file SpecialVersion.php.

References $out, $value, $wgArticlePath, array(), as, Html\closeElement(), Html\element(), SpecialPage\getLanguage(), global, SpecialPage\msg(), Html\openElement(), PROTO_RELATIVE, Html\rawElement(), text, wfExpandUrl(), and wfScript().

Referenced by execute().

◆ getExtAuthorsFileName()

static SpecialVersion::getExtAuthorsFileName (   $extDir)
static

Obtains the full path of an extensions authors or credits file if one exists.

Parameters
string$extDirPath to the extensions root directory
Since
1.23
Returns
bool|string False if no such file exists, otherwise returns a path to it.

Definition at line 911 of file SpecialVersion.php.

References $file, and as.

Referenced by execute(), and listAuthors().

◆ getExtensionCategory()

SpecialVersion::getExtensionCategory (   $type,
  $message 
)
protected

Creates and returns the HTML for a single extension category.

Since
1.17
Parameters
$typeString
$messageString
Returns
string

Definition at line 541 of file SpecialVersion.php.

References $out, $type, array(), as, getCreditsForExtension(), global, and openExtType().

Referenced by getExtensionCredits().

◆ getExtensionCredits()

SpecialVersion::getExtensionCredits ( )

Generate wikitext showing extensions name, URL, author and description.

Returns
string Wikitext

Definition at line 427 of file SpecialVersion.php.

References $extensions, $extensionTypes, $out, $type, array(), as, Xml\closeElement(), Xml\element(), getExtensionCategory(), getExtensionTypes(), global, SpecialPage\msg(), Xml\openElement(), text, and wfRunHooks().

Referenced by execute().

◆ getExtensionTypeName()

static SpecialVersion::getExtensionTypeName (   $type)
static

Returns the internationalized name for an extension type.

Since
1.17
Parameters
$typeString
Returns
string

Definition at line 416 of file SpecialVersion.php.

References $type, and getExtensionTypes().

◆ getExtensionTypes()

static 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, including those added by SpecialVersionExtensionTypes. This is not possible since this hook is passing along $this though.

Since
1.17
Returns
array

Definition at line 388 of file SpecialVersion.php.

References $extensionTypes, array(), text, wfMessage(), and wfRunHooks().

Referenced by getExtensionCredits(), and getExtensionTypeName().

◆ getExtLicenseFileName()

static SpecialVersion::getExtLicenseFileName (   $extDir)
static

Obtains the full path of an extensions copying or license file if one exists.

Parameters
string$extDirPath to the extensions root directory
Since
1.23
Returns
bool|string False if no such file exists, otherwise returns a path to it.

Definition at line 940 of file SpecialVersion.php.

References $file, and as.

Referenced by execute(), and getCreditsForExtension().

◆ getGitHeadSha1()

static SpecialVersion::getGitHeadSha1 (   $dir)
static
Parameters
string$dirdirectory of the git checkout
Returns
bool|String sha1 of commit HEAD points to

Definition at line 1119 of file SpecialVersion.php.

References $dir.

Referenced by getCreditsForExtension(), and getVersion().

◆ getGroupName()

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'.

Returns
string
Since
1.21

Reimplemented from SpecialPage.

Definition at line 1186 of file SpecialVersion.php.

◆ getMediaWikiCredits()

static SpecialVersion::getMediaWikiCredits ( )
staticprivate

Returns wiki text showing the license information.

Returns
string

Definition at line 148 of file SpecialVersion.php.

References $ret, array(), Xml\element(), getCopyrightAndAuthorList(), text, and wfMessage().

Referenced by execute().

◆ getParserFunctionHooks()

SpecialVersion::getParserFunctionHooks ( )
protected

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

Returns
string HTML output

Definition at line 512 of file SpecialVersion.php.

References $out, $wgParser, array(), global, listToText(), Linker\makeExternalLink(), SpecialPage\msg(), and Html\rawElement().

Referenced by execute().

◆ getParserTags()

SpecialVersion::getParserTags ( )
protected

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

Returns
string HTML output

Definition at line 480 of file SpecialVersion.php.

References $out, $value, $wgParser, array(), global, listToText(), Linker\makeExternalLink(), SpecialPage\msg(), and Html\rawElement().

Referenced by execute().

◆ getSvnInfo()

static SpecialVersion::getSvnInfo (   $dir)
static

Get an associative array of information about a given path, from its .svn subdirectory.

Returns false on error, such as if the directory was not checked out with subversion.

Returned keys are: Required: checkout-rev The revision which was checked out Optional: directory-rev The revision when the directory was last modified url The subversion URL of the directory repo-url The base URL of the repository viewvc-url A ViewVC URL pointing to the checked-out revision

Parameters
$dirstring
Returns
array|bool

Definition at line 1029 of file SpecialVersion.php.

References $dir, $lines, array(), as, file, wfRestoreWarnings(), and wfSuppressWarnings().

Referenced by getCreditsForExtension(), getSvnRevision(), getVersion(), and getVersionLinkedSvn().

◆ getSvnRevision()

static SpecialVersion::getSvnRevision (   $dir)
static

Retrieve the revision number of a Subversion working directory.

Parameters
string$dirdirectory of the svn checkout
Returns
int Revision number

Definition at line 1103 of file SpecialVersion.php.

References $dir, and getSvnInfo().

◆ getVersion()

static SpecialVersion::getVersion (   $flags = '')
static

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

Parameters
$flagsString
Returns
mixed

Definition at line 246 of file SpecialVersion.php.

References $flags, $IP, $version, getGitHeadSha1(), getSvnInfo(), global, wfMessage(), wfProfileIn(), and wfProfileOut().

Referenced by WikiStatsOutput\heading(), and ApiMain\makeHelpMsg().

◆ getVersionLinked()

static SpecialVersion::getVersionLinked ( )
static

Return a wikitext-formatted string of the MediaWiki version with a link to the SVN revision or the git SHA1 of head if available.

Git is prefered over Svn The fallback is just $wgVersion

Returns
mixed

Definition at line 285 of file SpecialVersion.php.

References getVersionLinkedGit(), getVersionLinkedSvn(), global, wfProfileIn(), and wfProfileOut().

Referenced by softwareInformation().

◆ getVersionLinkedGit()

static SpecialVersion::getVersionLinkedGit ( )
staticprivate
Since
1.22 Returns the HEAD date in addition to the sha1 and link
Returns
bool|string wgVersion + HEAD sha1 stripped to the first 7 chars with link and date, or false on failure

Definition at line 352 of file SpecialVersion.php.

References $IP, $wgLang, Html\element(), getwgVersionLinked(), and global.

Referenced by getVersionLinked().

◆ getVersionLinkedSvn()

static SpecialVersion::getVersionLinkedSvn ( )
staticprivate
Returns
string wgVersion + a link to subversion revision of svn BASE

Definition at line 309 of file SpecialVersion.php.

References $IP, $version, getSvnInfo(), getwgVersionLinked(), global, and wfMessage().

Referenced by getVersionLinked().

◆ getWgHooks()

SpecialVersion::getWgHooks ( )
private

Generate wikitext showing hooks in $wgHooks.

Returns
string Wikitext

Definition at line 766 of file SpecialVersion.php.

References $ret, $wgHooks, array(), as, Html\closeElement(), Html\element(), global, listToText(), SpecialPage\msg(), Html\openElement(), and text.

Referenced by execute().

◆ getwgVersionLinked()

static SpecialVersion::getwgVersionLinked ( )
staticprivate
Returns
string

Definition at line 335 of file SpecialVersion.php.

References array(), global, and wfRunHooks().

Referenced by getVersionLinkedGit(), and getVersionLinkedSvn().

◆ IPInfo()

SpecialVersion::IPInfo ( )
private

Get information about client's IP address.

Returns
string HTML fragment

Definition at line 837 of file SpecialVersion.php.

References SpecialPage\getRequest().

Referenced by execute().

◆ listAuthors()

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$extNameName of the extension for link creation
string$extDirPath to the extension root directory
Returns
string HTML fragment

Definition at line 863 of file SpecialVersion.php.

References array(), as, getExtAuthorsFileName(), SpecialPage\getOutput(), SpecialPage\getPageTitle(), Linker\link(), listToText(), SpecialPage\msg(), and text.

Referenced by getCreditsForExtension().

◆ listToText()

SpecialVersion::listToText (   $list,
  $sort = true 
)

Convert an array of items into a list for display.

Parameters
array$listList of elements to display
bool$sortWhether to sort the items in $list
Returns
string

Definition at line 966 of file SpecialVersion.php.

References $sort, array(), arrayToString(), and SpecialPage\getLanguage().

Referenced by getParserFunctionHooks(), getParserTags(), getWgHooks(), and listAuthors().

◆ openExtType()

SpecialVersion::openExtType (   $text,
  $name = null 
)
private

◆ softwareInformation()

static SpecialVersion::softwareInformation ( )
static

Returns wiki text showing the third party software versions (apache, php, mysql).

Returns
string

Definition at line 205 of file SpecialVersion.php.

References $dbr, $name, $out, $version, array(), as, Xml\closeElement(), DB_SLAVE, Xml\element(), getVersionLinked(), Xml\openElement(), text, wfGetDB(), wfMessage(), and wfRunHooks().

Referenced by execute().

Member Data Documentation

◆ $coreId

SpecialVersion::$coreId = ''
protected

Stores the current rev id/SHA hash of MediaWiki core.

Definition at line 37 of file SpecialVersion.php.

◆ $extensionTypes

SpecialVersion::$extensionTypes = false
staticprotected

Definition at line 39 of file SpecialVersion.php.

Referenced by getExtensionCredits(), and getExtensionTypes().

◆ $firstExtOpened

SpecialVersion::$firstExtOpened = false
protected

Definition at line 32 of file SpecialVersion.php.

◆ $viewvcUrls

SpecialVersion::$viewvcUrls
staticprotected
Initial value:
'svn+ssh://svn.wikimedia.org/svnroot/mediawiki' => 'http://svn.wikimedia.org/viewvc/mediawiki',
'http://svn.wikimedia.org/svnroot/mediawiki' => 'http://svn.wikimedia.org/viewvc/mediawiki',
'https://svn.wikimedia.org/svnroot/mediawiki' => 'https://svn.wikimedia.org/viewvc/mediawiki',
)

Definition at line 41 of file SpecialVersion.php.


The documentation for this class was generated from the following file:
array
the array() calling protocol came about after MediaWiki 1.4rc1.
List of Api Query prop modules.