MediaWiki REL1_35
SkinMustache Class Reference

Generic template for use with Mustache templates. More...

Inheritance diagram for SkinMustache:
Collaboration diagram for SkinMustache:

Public Member Functions

 generateHTML ()
 Subclasses not wishing to use the QuickTemplate render method can rewrite this method, for example to use TemplateParser::processTemplate.
Since
1.35
Returns
string of complete document HTML to output to the page which includes <!DOCTYPE> and opening and closing html tags.
Render the associated template.
 
 getTemplateData ()
 Subclasses may extend this method to add additional template data.
 
- Public Member Functions inherited from SkinTemplate
 getPersonalToolsList ()
 Get the HTML for the p-personal list.
 
 getStructuredPersonalTools ()
 Get personal tools for the user.
 
 makeArticleUrlDetails ( $name, $urlaction='')
 
 makePersonalToolsList ( $personalTools=null, $options=[])
 Get the HTML for the personal tools list Please ensure setupTemplateContext is called before calling this method.
 
 outputPage ()
 Initialize various variables and generate the template Stable to override.
 
 tabAction ( $title, $message, $selected, $query='', $checkEdit=false)
 Builds an array with tab definition.
 
- Public Member Functions inherited from Skin
 __construct ( $options=null)
 
 aboutLink ()
 Gets the link to the wiki's about page.
 
 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.
 
 editUrlOptions ()
 Return URL options for the 'edit page' link.
 
 footerLink ( $desc, $page)
 Returns an HTML link for use in the footer.
 
 getAfterPortlet (string $name)
 Allows extensions to hook into known portlets and add stuff to them.
 
 getCategories ()
 
 getCategoryLinks ()
 
 getCopyright ( $type='detect')
 
 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.
 
 getIndicatorsHTML ( $indicators)
 Get the suggested HTML for page status indicators: icons (or short text snippets) usually displayed in the top-right corner of the page, outside of the main content.
 
 getLanguages ()
 Generates array of language links for the current page.
 
 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.
 
 getPersonalToolsForMakeListItem ( $urls)
 Create an array of personal tools items from the data in the quicktemplate stored by SkinTemplate.
 
 getRelevantTitle ()
 Return the "relevant" title.
 
 getRelevantUser ()
 Return the "relevant" user.
 
 getRevisionId ()
 Get the current revision ID.
 
 getSiteFooterLinks ()
 Gets the link to the wiki's privacy policy, about page, and disclaimer page.
 
 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)
 Stable to override.
 
 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.
 
 makeLink ( $key, $item, $options=[])
 Makes a link, usually used by makeListItem to generate a link for an item in a list used in navigation lists, portlets, portals, sidebars, etc...
 
 makeListItem ( $key, $item, $options=[])
 Generates a list item for a navigation, portlet, portal, sidebar... list.
 
 makeSearchButton ( $mode, $attrs=[])
 
 makeSearchInput ( $attrs=[])
 
 makeToolbox ( $navUrls, $feedUrls)
 Create an array of common toolbox items from the data in the quicktemplate stored by SkinTemplate.
 
 mapInterwikiToLanguage ( $code)
 Allows correcting the language of interlanguage links which, mostly due to legacy reasons, do not always match the standards compliant language tag.
 
 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.
 
 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 ()
 Stable to override.
 
 getWikiPage ()
 Get the WikiPage object.
 
 msg ( $key,... $params)
 Get a Message object with context set Parameters are the same as wfMessage()
 
 setContext (IContextSource $context)
 

Protected Member Functions

 getTemplateParser ()
 Get the template parser, it will be lazily created if not already set.
 
- Protected Member Functions inherited from SkinTemplate
 buildContentNavigationUrls ()
 a structured array of links usually used for the tabs in a skin
 
 buildNavUrls ()
 build array of common navigation links and run the SkinTemplateBuildNavUrlsNav_urlsAfterPermalink hook.
 
 buildPersonalUrls ()
 build array of urls for personal toolbar Please ensure setupTemplateContext is called before calling this method.
 
 getFooterIcons ()
 Get template representation of the footer.
 
 getJsConfigVars ()
 Returns array of config variables that should be added only to this skin for use in JavaScript.
 
 getNameSpaceKey ()
 Generate strings used for xml 'id' names.
 
 prepareQuickTemplate ()
 initialize various variables and generate the template
 
 prepareSubtitle ()
 Prepare the subtitle of the page for output in the skin if one has been set.
 
 prepareUndeleteLink ()
 Prepare undelete link for output in page.
 
 prepareUserLanguageAttributes ()
 Prepare user language attribute links.
 
 setupTemplate ( $classname)
 Create the template engine object; we feed it a bunch of data and eventually it spits out some HTML.
 
 setupTemplateContext ()
 Setup class properties that are necessary prior to calling setupTemplateForOutput.
 
 setupTemplateForOutput ()
 
 wrapHTML ( $title, $html)
 Wrap the body text with language information and identifiable element.
 
- Protected Member Functions inherited from Skin
 afterContentHook ()
 This runs a hook to allow extensions placing their stuff after content and article metadata (e.g.
 
 buildFeedUrls ()
 Build data structure representing syndication links.
 
 drawCategoryBrowser ( $tree)
 Render the array as a series of links.
 
 generateDebugHTML ()
 Generate debug data HTML for displaying at the bottom of the main content area.
 
 getCopyrightIcon ()
 
 getFooterLinks ()
 Get template representation of the footer containing site footer links as well as standard footer links.
 
 getIndicatorsData ( $indicators)
 Return an array of indicator data.
 
 getLogo ()
 URL to the default square logo (1x key) Please use ResourceLoaderSkinModule::getAvailableLogos.
 
 getPoweredBy ()
 Gets the powered by MediaWiki icon.
 
 getSearchLink ()
 
 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.
 

Private Member Functions

 buildSearchProps ()
 
 tailElement ( $out)
 The final bits that go to the bottom of a page HTML document including the closing tags.
 

Private Attributes

TemplateParser null $templateParser = null
 

Additional Inherited Members

- Static Public Member Functions inherited from Skin
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 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 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 makeVariablesScript ( $data, $nonce=null)
 
static normalizeKey ( $key)
 Normalize a skin preference value to a form that can be loaded.
 
- Public Attributes inherited from SkinTemplate
 $loggedin
 
string $skinname = 'monobook'
 Name of our skin, it probably needs to be all lower case.
 
string $template = QuickTemplate::class
 For QuickTemplate, the name of the subclass which will actually fill the template.
 
 $thispage
 
 $thisquery
 
 $titletxt
 
 $username
 
 $userpage
 
 $userpageUrlDetails
 
- Public Attributes inherited from Skin
string $stylename = null
 Stylesheets set to use.
 
- Static Protected Member Functions inherited from Skin
static makeKnownUrlDetails ( $name, $urlaction='')
 Make URL details where the article exists (or at least it's convenient to think so)
 
static makeUrlDetails ( $name, $urlaction='')
 these return an array with the 'href' and boolean 'exists'
 
- Protected Attributes inherited from Skin
 $mRelevantTitle = null
 
 $mRelevantUser = null
 
array $options = []
 Skin options passed into constructor.
 
string null $skinname = null
 

Detailed Description

Generic template for use with Mustache templates.

Since
1.35

Definition at line 26 of file SkinMustache.php.

Member Function Documentation

◆ buildSearchProps()

SkinMustache::buildSearchProps ( )
private
Returns
array

Definition at line 111 of file SkinMustache.php.

Referenced by getTemplateData().

◆ generateHTML()

SkinMustache::generateHTML ( )

Subclasses not wishing to use the QuickTemplate render method can rewrite this method, for example to use TemplateParser::processTemplate.

Since
1.35
Returns
string of complete document HTML to output to the page which includes <!DOCTYPE> and opening and closing html tags.
Render the associated template.

The master template is assumed to be 'skin' unless template has been passed in the skin options to the constructor.

Reimplemented from SkinTemplate.

Definition at line 52 of file SkinMustache.php.

References SkinTemplate\$template, ContextSource\getOutput(), getTemplateData(), getTemplateParser(), SkinTemplate\setupTemplateContext(), and tailElement().

◆ getTemplateData()

SkinMustache::getTemplateData ( )

Subclasses may extend this method to add additional template data.

The data keys should be valid English words. Compound words should be hypenated except if they are normally written as one word. Each key should be prefixed with a type hint, this may be enforced by the class PHPUnit test.

Plain strings are prefixed with 'html-', plain arrays with 'array-' and complex array data with 'data-'. 'is-' and 'has-' prefixes can be used for boolean variables.

Returns
array Data for a mustache template

Reimplemented in SkinFallback.

Definition at line 84 of file SkinMustache.php.

References Skin\afterContentHook(), buildSearchProps(), Skin\getCategories(), Skin\getIndicatorsData(), ContextSource\getOutput(), Skin\getSiteNotice(), SkinTemplate\prepareSubtitle(), SkinTemplate\prepareUndeleteLink(), SkinTemplate\prepareUserLanguageAttributes(), Skin\printSource(), and SkinTemplate\wrapHTML().

Referenced by generateHTML().

◆ getTemplateParser()

SkinMustache::getTemplateParser ( )
protected

Get the template parser, it will be lazily created if not already set.

The template directory is defined in the skin options passed to the class constructor.

Returns
TemplateParser

Definition at line 39 of file SkinMustache.php.

References $templateParser.

Referenced by generateHTML().

◆ tailElement()

SkinMustache::tailElement (   $out)
private

The final bits that go to the bottom of a page HTML document including the closing tags.

Parameters
OutputPage$out
Returns
string

Definition at line 139 of file SkinMustache.php.

References wfReportTime().

Referenced by generateHTML().

Member Data Documentation

◆ $templateParser

TemplateParser null SkinMustache::$templateParser = null
private

Definition at line 30 of file SkinMustache.php.

Referenced by getTemplateParser().


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