MediaWiki REL1_34
|
The main skin class which provides methods and properties for all other skins. More...
Public Member Functions | |
__construct ( $skinname=null) | |
aboutLink () | |
Gets the link to the wiki's about page. | |
addToBodyAttributes ( $out, &$bodyAttrs) | |
This will be called by OutputPage::headElement when it is creating the "<body>" tag, skins can override it if they have a need to add in any body attributes or classes of their own. | |
addToSidebar (&$bar, $message) | |
Add content from a sidebar system message Currently only used for MediaWiki:Sidebar (but may be used by Extensions) | |
addToSidebarPlain (&$bar, $text) | |
Add content from plain text. | |
bottomScripts () | |
This gets called shortly before the "</body>" tag. | |
buildSidebar () | |
Build an array that represents the sidebar(s), the navigation bar among them. | |
disclaimerLink () | |
Gets the link to the wiki's general disclaimers page. | |
doEditSectionLink (Title $nt, $section, $tooltip, Language $lang) | |
Create a section edit link. | |
drawCategoryBrowser ( $tree) | |
Render the array as a series of links. | |
editUrlOptions () | |
Return URL options for the 'edit page' link. | |
escapeSearchLink () | |
footerLink ( $desc, $page) | |
Returns an HTML link for use in the footer. | |
getCategories () | |
getCategoryLinks () | |
getCopyright ( $type='detect') | |
getCopyrightIcon () | |
getDefaultModules () | |
Defines the ResourceLoader modules that should be added to the skin It is recommended that skins wishing to override call parent::getDefaultModules() and substitute out any modules they wish to change by using a key to look them up. | |
getHtmlElementAttributes () | |
Return values for <html> element. | |
getLogo () | |
URL to the logo. | |
getNewtalks () | |
Gets new talk page messages for the current user and returns an appropriate alert message (or an empty string if there are no messages) | |
getPageClasses ( $title) | |
TODO: document. | |
getPoweredBy () | |
Gets the powered by MediaWiki icon. | |
getRelevantTitle () | |
Return the "relevant" title. | |
getRelevantUser () | |
Return the "relevant" user. | |
getRevisionId () | |
Get the current revision ID. | |
getSearchLink () | |
getSiteNotice () | |
Get the site notice. | |
getSkinName () | |
getSkinStylePath ( $name) | |
Return a fully resolved style path URL to images or styles stored in the current skin's folder. | |
getUndeleteLink () | |
initPage (OutputPage $out) | |
isRevisionCurrent () | |
Whether the revision displayed is the latest revision of the page. | |
logoText ( $align='') | |
mainPageLink () | |
Gets the link to the wiki's main page. | |
makeFooterIcon ( $icon, $withImage='withImage') | |
Renders a $wgFooterIcons icon according to the method's arguments. | |
outputPage () | |
Outputs the HTML generated by other functions. | |
printSource () | |
Text with the permalink to the source page, usually shown on the footer of a printed page. | |
privacyLink () | |
Gets the link to the wiki's privacy policy page. | |
setRelevantTitle ( $t) | |
Set the "relevant" title. | |
setRelevantUser ( $u) | |
Set the "relevant" user. | |
setupSkinUserCss (OutputPage $out) | |
Hook point for adding style modules to OutputPage. | |
shouldPreloadLogo () | |
Whether the logo should be preloaded with an HTTP link header or not. | |
showEmailUser ( $id) | |
subPageSubtitle ( $out=null) | |
Public Member Functions inherited from ContextSource | |
canUseWikiPage () | |
Check whether a WikiPage object can be get with getWikiPage(). | |
exportSession () | |
Export the resolved user IP, HTTP headers, user ID, and session ID. | |
getConfig () | |
getContext () | |
Get the base IContextSource object. | |
getLanguage () | |
getOutput () | |
getRequest () | |
getSkin () | |
getStats () | |
getTiming () | |
getTitle () | |
getUser () | |
getWikiPage () | |
Get the WikiPage object. | |
msg ( $key,... $params) | |
Get a Message object with context set Parameters are the same as wfMessage() | |
setContext (IContextSource $context) | |
Static Public Member Functions | |
static | checkTitle (&$title, $name) |
make sure we have some title to operate on | |
static | getAllowedSkins () |
Fetch the list of user-selectable skins in regards to $wgSkipSkins. | |
static | getDynamicStylesheetQuery () |
Get the query to generate a dynamic stylesheet. | |
static | getSkinNameMessages () |
Fetch the skinname messages for available skins. | |
static | getSkinNames () |
Fetch the set of available skins. | |
static | makeI18nUrl ( $name, $urlaction='') |
static | makeInternalOrExternalUrl ( $name) |
If url string starts with http, consider as external URL, else internal. | |
static | makeKnownUrlDetails ( $name, $urlaction='') |
Make URL details where the article exists (or at least it's convenient to think so) | |
static | makeMainPageUrl ( $urlaction='') |
static | makeNSUrl ( $name, $urlaction='', $namespace=NS_MAIN) |
this can be passed the NS number as defined in Language.php | |
static | makeSpecialUrl ( $name, $urlaction='', $proto=null) |
Make a URL for a Special Page using the given query and protocol. | |
static | makeSpecialUrlSubpage ( $name, $subpage, $urlaction='') |
static | makeUrl ( $name, $urlaction='') |
static | makeUrlDetails ( $name, $urlaction='') |
these return an array with the 'href' and boolean 'exists' | |
static | makeVariablesScript ( $data, $nonce=null) |
static | normalizeKey ( $key) |
Normalize a skin preference value to a form that can be loaded. | |
Public Attributes | |
string | $stylename = null |
Stylesheets set to use. | |
Protected Member Functions | |
afterContentHook () | |
This runs a hook to allow extensions placing their stuff after content and article metadata (e.g. | |
generateDebugHTML () | |
Generate debug data HTML for displaying at the bottom of the main content area. | |
lastModified () | |
Get the timestamp of the latest revision, formatted in user language. | |
preloadExistence () | |
Preload the existence of three commonly-requested pages in a single query. | |
Protected Attributes | |
$mRelevantTitle = null | |
$mRelevantUser = null | |
string null | $skinname = null |
Private Member Functions | |
footerLinkTitle ( $desc, $page) | |
getCachedNotice ( $name) | |
Get a cached notice. | |
The main skin class which provides methods and properties for all other skins.
See docs/skin.txt for more information.
Skin::__construct | ( | $skinname = null | ) |
Skin::aboutLink | ( | ) |
Gets the link to the wiki's about page.
Definition at line 1091 of file Skin.php.
References footerLink().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::addToBodyAttributes | ( | $out, | |
& | $bodyAttrs ) |
This will be called by OutputPage::headElement when it is creating the "<body>" tag, skins can override it if they have a need to add in any body attributes or classes of their own.
OutputPage | $out | |
array | &$bodyAttrs |
Definition at line 497 of file Skin.php.
Referenced by OutputPage\headElement().
Skin::addToSidebar | ( | & | $bar, |
$message ) |
Add content from a sidebar system message Currently only used for MediaWiki:Sidebar (but may be used by Extensions)
This is just a wrapper around addToSidebarPlain() for backwards compatibility
array | &$bar | |
string | $message |
Definition at line 1369 of file Skin.php.
References addToSidebarPlain(), and ContextSource\msg().
Referenced by buildSidebar().
Skin::addToSidebarPlain | ( | & | $bar, |
$text ) |
Add content from plain text.
array | &$bar | |
string | $text |
Definition at line 1380 of file Skin.php.
References $line, $lines, $title, ContextSource\getConfig(), getTitle(), ContextSource\msg(), wfMatchesDomainList(), and wfUrlProtocols().
Referenced by addToSidebar().
|
protected |
This runs a hook to allow extensions placing their stuff after content and article metadata (e.g.
categories). Note: This function has nothing to do with afterContent().
This hook is placed here in order to allow using the same hook for all skins, both the SkinTemplate based ones and the older ones, which directly use this class to get their data.
The output of this function gets processed in SkinTemplate::outputPage() for the SkinTemplate based skins, all other skins should directly echo it.
Definition at line 651 of file Skin.php.
References wfDebug().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::bottomScripts | ( | ) |
This gets called shortly before the "</body>" tag.
</body>
Definition at line 686 of file Skin.php.
References ContextSource\getOutput().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::buildSidebar | ( | ) |
Build an array that represents the sidebar(s), the navigation bar among them.
BaseTemplate::getSidebar can be used to simplify the format and id generation in new skins.
The format of the returned array is [ heading => content, ... ], where:
Note that extensions can control the sidebar contents using the SkinBuildSidebar hook and can technically insert anything in here; skin creators are expected to handle values described above.
Reimplemented in SkinApi.
Definition at line 1320 of file Skin.php.
References addToSidebar(), and ContextSource\getConfig().
Referenced by SkinTemplate\prepareQuickTemplate().
|
static |
Skin::disclaimerLink | ( | ) |
Gets the link to the wiki's general disclaimers page.
Definition at line 1099 of file Skin.php.
References footerLink().
Referenced by SkinTemplate\prepareQuickTemplate().
Create a section edit link.
SecurityCheck-XSS $links has keys of different taint types
Title | $nt | The title being linked to (may not be the same as the current page, if the section is included from a template) |
string | $section | The designation of the section being pointed to, to be included in the link, like "§ion=$section" |
string | null | $tooltip | The tooltip to use for the link: will be escaped and wrapped in the 'editsectionhint' message |
Language | $lang | Language object |
Definition at line 1652 of file Skin.php.
References $lang, and ContextSource\msg().
Skin::drawCategoryBrowser | ( | $tree | ) |
Render the array as a series of links.
array | $tree | Categories tree returned by Title::getParentCategoryTree |
Definition at line 592 of file Skin.php.
References drawCategoryBrowser().
Referenced by drawCategoryBrowser(), and getCategoryLinks().
Skin::editUrlOptions | ( | ) |
Return URL options for the 'edit page' link.
This may include an 'oldid' specifier, if the current page view is such.
Definition at line 1110 of file Skin.php.
References ContextSource\getOutput(), getRevisionId(), and isRevisionCurrent().
Referenced by SkinTemplate\buildContentNavigationUrls().
Skin::escapeSearchLink | ( | ) |
Definition at line 842 of file Skin.php.
References getSearchLink(), and wfDeprecated().
Skin::footerLink | ( | $desc, | |
$page ) |
Returns an HTML link for use in the footer.
string | $desc | The i18n message key for the link text |
string | $page | The i18n message key for the page to link to |
Definition at line 1047 of file Skin.php.
References $title, footerLinkTitle(), and ContextSource\msg().
Referenced by aboutLink(), disclaimerLink(), and privacyLink().
|
private |
string | $desc | |
string | $page |
Definition at line 1065 of file Skin.php.
References $title, and ContextSource\msg().
Referenced by footerLink(), and preloadExistence().
|
protected |
Generate debug data HTML for displaying at the bottom of the main content area.
Definition at line 677 of file Skin.php.
Referenced by SkinTemplate\prepareQuickTemplate().
|
static |
Fetch the list of user-selectable skins in regards to $wgSkipSkins.
Useful for Special:Preferences and other places where you only want to show skins users can use.
Definition at line 83 of file Skin.php.
References $wgSkipSkins.
Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\generateSkinOptions().
|
private |
Get a cached notice.
string | $name | Message name, or 'default' for $wgSiteNotice |
Definition at line 1567 of file Skin.php.
References $cache, ContextSource\getConfig(), ContextSource\getOutput(), and ContextSource\msg().
Referenced by getSiteNotice().
Skin::getCategories | ( | ) |
Definition at line 616 of file Skin.php.
References getCategoryLinks(), ContextSource\getOutput(), getTitle(), getUser(), and NS_CATEGORY.
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::getCategoryLinks | ( | ) |
Definition at line 525 of file Skin.php.
References $s, $t, $title, drawCategoryBrowser(), ContextSource\getConfig(), ContextSource\getOutput(), getTitle(), getUser(), ContextSource\msg(), and NS_CATEGORY.
Referenced by getCategories().
Skin::getCopyright | ( | $type = 'detect' | ) |
string | $type |
Definition at line 851 of file Skin.php.
References $title, $type, ContextSource\getConfig(), ContextSource\getOutput(), getTitle(), isRevisionCurrent(), Linker\makeExternalLink(), and ContextSource\msg().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::getCopyrightIcon | ( | ) |
Definition at line 900 of file Skin.php.
References ContextSource\getConfig().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::getDefaultModules | ( | ) |
Defines the ResourceLoader modules that should be added to the skin It is recommended that skins wishing to override call parent::getDefaultModules() and substitute out any modules they wish to change by using a key to look them up.
Any modules defined with the 'styles' key will be added as render blocking CSS via Output::addModuleStyles. Similarly, each key should refer to a list of modules
Reimplemented in SkinApi, and SkinFallback.
Definition at line 179 of file Skin.php.
References $modules, ContextSource\getOutput(), and getUser().
|
static |
Get the query to generate a dynamic stylesheet.
Skin::getHtmlElementAttributes | ( | ) |
Return values for <html> element.
Definition at line 481 of file Skin.php.
References $lang, and ContextSource\getLanguage().
Referenced by OutputPage\headElement().
Skin::getLogo | ( | ) |
URL to the logo.
Definition at line 505 of file Skin.php.
References ContextSource\getConfig().
Referenced by logoText().
Skin::getNewtalks | ( | ) |
Gets new talk page messages for the current user and returns an appropriate alert message (or an empty string if there are no messages)
Reimplemented in SkinApi.
Definition at line 1473 of file Skin.php.
References ContextSource\getOutput(), getUser(), and ContextSource\msg().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::getPageClasses | ( | $title | ) |
TODO: document.
Title | $title |
Reimplemented in SkinVector.
Definition at line 443 of file Skin.php.
References $title, $type, getPermissionManager(), and getUser().
Referenced by OutputPage\headElement().
Skin::getPoweredBy | ( | ) |
Gets the powered by MediaWiki icon.
Definition at line 930 of file Skin.php.
References ContextSource\getConfig().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::getRelevantTitle | ( | ) |
Return the "relevant" title.
A "relevant" title is not necessarily the actual title of the page. Special pages like Special:MovePage use set the page they are acting on as their "relevant" title, this allows the skin system to display things such as content tabs which belong to to that page instead of displaying a basic special page tab which has almost no meaning.
Definition at line 349 of file Skin.php.
References getTitle().
Referenced by SkinTemplate\buildContentNavigationUrls(), getRelevantUser(), and preloadExistence().
Skin::getRelevantUser | ( | ) |
Return the "relevant" user.
A "relevant" user is similar to a relevant title. Special pages like Special:Contributions mark the user which they are relevant to so that things like the toolbox can display the information they usually are only able to display on a user's userpage and talkpage.
Definition at line 370 of file Skin.php.
References $title, getRelevantTitle(), and NS_USER.
Referenced by SkinTemplate\buildNavUrls().
Skin::getRevisionId | ( | ) |
Get the current revision ID.
Definition at line 316 of file Skin.php.
References ContextSource\getOutput().
Referenced by editUrlOptions(), and lastModified().
Skin::getSearchLink | ( | ) |
Definition at line 833 of file Skin.php.
References $searchPage.
Referenced by escapeSearchLink(), and SkinTemplate\prepareQuickTemplate().
Skin::getSiteNotice | ( | ) |
Get the site notice.
Reimplemented in SkinApi.
Definition at line 1616 of file Skin.php.
References getCachedNotice(), and getUser().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::getSkinName | ( | ) |
Definition at line 158 of file Skin.php.
Referenced by OutputPage\headElement(), and Gadget\isSkinSupported().
|
static |
Fetch the skinname messages for available skins.
Definition at line 67 of file Skin.php.
References wfDeprecated().
|
static |
Fetch the set of available skins.
Definition at line 57 of file Skin.php.
Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\generateSkinOptions().
Skin::getSkinStylePath | ( | $name | ) |
Return a fully resolved style path URL to images or styles stored in the current skin's folder.
This method returns a URL resolved using the configured skin style path.
Requires $stylename to be set, otherwise throws MWException.
string | $name | The name or path of a skin resource file |
MWException |
Definition at line 1148 of file Skin.php.
References ContextSource\getConfig().
Skin::getUndeleteLink | ( | ) |
Definition at line 726 of file Skin.php.
References $title, getContext(), ContextSource\getLanguage(), ContextSource\getRequest(), getTitle(), and ContextSource\msg().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::initPage | ( | OutputPage | $out | ) |
OutputPage | $out |
Reimplemented in SkinFallback, SkinTimeless, and SkinVector.
Definition at line 165 of file Skin.php.
References preloadExistence().
Referenced by SkinTemplate\outputPage().
Skin::isRevisionCurrent | ( | ) |
Whether the revision displayed is the latest revision of the page.
Definition at line 326 of file Skin.php.
References ContextSource\getOutput().
Referenced by editUrlOptions(), and getCopyright().
|
protected |
Get the timestamp of the latest revision, formatted in user language.
Definition at line 953 of file Skin.php.
References $s, $t, ContextSource\getLanguage(), ContextSource\getOutput(), getRevisionId(), getTitle(), getUser(), and ContextSource\msg().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::logoText | ( | $align = '' | ) |
string | $align |
Definition at line 981 of file Skin.php.
References $s, getLogo(), and ContextSource\msg().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::mainPageLink | ( | ) |
Gets the link to the wiki's main page.
Definition at line 1031 of file Skin.php.
References $s, and ContextSource\msg().
Skin::makeFooterIcon | ( | $icon, | |
$withImage = 'withImage' ) |
Renders a $wgFooterIcons icon according to the method's arguments.
array | $icon | The icon to build the html for, see $wgFooterIcons for the format of this array. |
bool | string | $withImage | Whether to use the icon's image or output a text-only footericon. |
Definition at line 1006 of file Skin.php.
References ContextSource\getConfig().
|
static |
string | $name | |
string | string[] | $urlaction |
Definition at line 1206 of file Skin.php.
References $title, and wfMessage().
|
static |
If url string starts with http, consider as external URL, else internal.
string | $name |
Definition at line 1230 of file Skin.php.
References wfUrlProtocols().
|
static |
|
static |
|
static |
this can be passed the NS number as defined in Language.php
string | $name | |
string | string[] | $urlaction | |
int | $namespace |
Definition at line 1245 of file Skin.php.
References $title.
|
static |
Make a URL for a Special Page using the given query and protocol.
If $proto is set to null, make a local URL. Otherwise, make a full URL with the protocol specified.
string | $name | Name of the Special page |
string | string[] | $urlaction | Query to append |
string | null | $proto | Protocol to use or null for a local URL |
Definition at line 1181 of file Skin.php.
References $title.
|
static |
|
static |
|
static |
|
static |
|
static |
Normalize a skin preference value to a form that can be loaded.
If a skin can't be found, it will fall back to the configured default ($wgDefaultSkin), or the hardcoded default ($wgFallbackSkin) if the default skin is unavailable too.
string | $key | 'monobook', 'vector', etc. |
Definition at line 104 of file Skin.php.
References $fallback, $wgDefaultSkin, and $wgFallbackSkin.
|
abstract |
Outputs the HTML generated by other functions.
Reimplemented in SkinTemplate.
|
protected |
Preload the existence of three commonly-requested pages in a single query.
Definition at line 270 of file Skin.php.
References $title, footerLinkTitle(), getRelevantTitle(), and getUser().
Referenced by initPage().
Skin::printSource | ( | ) |
Text with the permalink to the source page, usually shown on the footer of a printed page.
Definition at line 708 of file Skin.php.
References ContextSource\getOutput(), getTitle(), ContextSource\msg(), and wfExpandIRI().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::privacyLink | ( | ) |
Gets the link to the wiki's privacy policy page.
Definition at line 1083 of file Skin.php.
References footerLink().
Referenced by SkinTemplate\prepareQuickTemplate().
Skin::setRelevantTitle | ( | $t | ) |
Skin::setRelevantUser | ( | $u | ) |
Skin::setupSkinUserCss | ( | OutputPage | $out | ) |
Hook point for adding style modules to OutputPage.
OutputPage | $out | Legacy parameter, identical to $this->getOutput() |
Reimplemented in SkinMonoBook, SkinTimeless, and SkinVector.
Skin::shouldPreloadLogo | ( | ) |
Whether the logo should be preloaded with an HTTP link header or not.
Reimplemented in SkinVector.
Skin::showEmailUser | ( | $id | ) |
User | int | $id |
Definition at line 1124 of file Skin.php.
References getUser(), and SpecialEmailUser\validateTarget().
Referenced by SkinTemplate\buildNavUrls().
Skin::subPageSubtitle | ( | $out = null | ) |
OutputPage | null | $out | Defaults to $this->getOutput() if left as null |
Definition at line 774 of file Skin.php.
References $lang, $title, ContextSource\getLanguage(), ContextSource\getOutput(), and ContextSource\msg().
Referenced by SkinTemplate\prepareQuickTemplate().
|
protected |
Definition at line 42 of file Skin.php.
Referenced by __construct().
string Skin::$stylename = null |