|
MediaWiki
master
|
Base class for template-based skins. More...


Public Member Functions | |
| formatLanguageName ($name) | |
| Format language name for use in sidebar interlanguage links list. More... | |
| getLanguages () | |
| Generates array of language links for the current page. More... | |
| getPersonalToolsList () | |
| Get the HTML for the p-personal list. More... | |
| makeArticleUrlDetails ($name, $urlaction= '') | |
| makeTalkUrlDetails ($name, $urlaction= '') | |
| outputPage (OutputPage $out=null) | |
| initialize various variables and generate the template More... | |
| printOrError ($str) | |
| Output the string, or print error message if it's an error object of the appropriate type. More... | |
| setupSkinUserCss (OutputPage $out) | |
| Add specific styles for this skin. More... | |
| setupTemplate ($classname, $repository=false, $cache_dir=false) | |
| Create the template engine object; we feed it a bunch of data and eventually it spits out some HTML. More... | |
| tabAction ($title, $message, $selected, $query= '', $checkEdit=false) | |
| Builds an array with tab definition. More... | |
| useCombinedLoginLink () | |
| Output a boolean indicating if buildPersonalUrls should output separate login and create account links or output a combined link By default we simply return a global config setting that affects most skins This is setup as a method so that like with $wgLogo and getLogo() a skin can override this setting and always output one or the other if it has a reason it can't output one of the two modes. More... | |
Public Member Functions inherited from Skin | |
| aboutLink () | |
| Gets the link to the wiki's about page. More... | |
| 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. More... | |
| addToSidebar (&$bar, $message) | |
| Add content from a sidebar system message Currently only used for MediaWiki:Sidebar (but may be used by Extensions) More... | |
| addToSidebarPlain (&$bar, $text) | |
| Add content from plain text. More... | |
| bottomScripts () | |
| This gets called shortly before the "</body>" tag. More... | |
| buildSidebar () | |
| Build an array that represents the sidebar(s), the navigation bar among them. More... | |
| commentBlock ($comment, $title=null, $local=false, $wikiId=null) | |
| disclaimerLink () | |
| Gets the link to the wiki's general disclaimers page. More... | |
| doEditSectionLink (Title $nt, $section, $tooltip=null, $lang=false) | |
| Create a section edit link. More... | |
| drawCategoryBrowser ($tree) | |
| Render the array as a series of links. More... | |
| editUrlOptions () | |
| Return URL options for the 'edit page' link. More... | |
| escapeSearchLink () | |
| footerLink ($desc, $page) | |
| Returns an HTML link for use in the footer. More... | |
| generateRollback ($rev, IContextSource $context=null, $options=[ 'verify']) | |
| 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. More... | |
| getHtmlElementAttributes () | |
| Return values for <html> element. More... | |
| getLogo () | |
| URL to the logo. More... | |
| 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) More... | |
| getPageClasses ($title) | |
| TODO: document. More... | |
| getPoweredBy () | |
| Gets the powered by MediaWiki icon. More... | |
| getRelevantTitle () | |
| Return the "relevant" title. More... | |
| getRelevantUser () | |
| Return the "relevant" user. More... | |
| getRevisionId () | |
| Get the current revision ID. More... | |
| getSearchLink () | |
| getSiteNotice () | |
| Get the site notice. More... | |
| getSkinName () | |
| getSkinStylePath ($name) | |
| Return a fully resolved style path url to images or styles stored in the current skins's folder. More... | |
| getUndeleteLink () | |
| initPage (OutputPage $out) | |
| isRevisionCurrent () | |
| Whether the revision displayed is the latest revision of the page. More... | |
| link ($target, $html=null, $customAttribs=[], $query=[], $options=[]) | |
| linkKnown ($target, $html=null, $customAttribs=[], $query=[], $options=[ 'known', 'noclasses']) | |
| logoText ($align= '') | |
| mainPageLink () | |
| Gets the link to the wiki's main page. More... | |
| makeFooterIcon ($icon, $withImage= 'withImage') | |
| Renders a $wgFooterIcons icon according to the method's arguments. More... | |
| outputPage (OutputPage $out=null) | |
| Outputs the HTML generated by other functions. More... | |
| printSource () | |
| Text with the permalink to the source page, usually shown on the footer of a printed page. More... | |
| privacyLink () | |
| Gets the link to the wiki's privacy policy page. More... | |
| setRelevantTitle ($t) | |
| Set the "relevant" title. More... | |
| setRelevantUser ($u) | |
| Set the "relevant" user. More... | |
| setupSkinUserCss (OutputPage $out) | |
| Add skin specific stylesheets Calling this method with an $out of anything but the same OutputPage inside ->getOutput() is deprecated. More... | |
| showEmailUser ($id) | |
| showIPinHeader () | |
| subPageSubtitle ($out=null) | |
| userLink ($userId, $userName, $altUserName=false) | |
| userToolLinks ($userId, $userText, $redContribsWhenNoEdits=false, $flags=0, $edits=null) | |
Public Member Functions inherited from ContextSource | |
| canUseWikiPage () | |
| Check whether a WikiPage object can be get with getWikiPage(). More... | |
| exportSession () | |
| Export the resolved user IP, HTTP headers, user ID, and session ID. More... | |
| getConfig () | |
| Get the Config object. More... | |
| getContext () | |
| Get the base IContextSource object. More... | |
| getLanguage () | |
| Get the Language object. More... | |
| getOutput () | |
| Get the OutputPage object. More... | |
| getRequest () | |
| Get the WebRequest object. More... | |
| getSkin () | |
| Get the Skin object. More... | |
| getStats () | |
| Get the Stats object. More... | |
| getTiming () | |
| Get the Timing object. More... | |
| getTitle () | |
| Get the Title object. More... | |
| getUser () | |
| Get the User object. More... | |
| getWikiPage () | |
| Get the WikiPage object. More... | |
| msg () | |
| Get a Message object with context set Parameters are the same as wfMessage() More... | |
| setContext (IContextSource $context) | |
| Set the IContextSource object. More... | |
Public Attributes | |
| $loggedin | |
| string | $skinname = 'monobook' |
| Name of our skin, it probably needs to be all lower case. More... | |
| string | $template = 'QuickTemplate' |
| For QuickTemplate, the name of the subclass which will actually fill the template. More... | |
| $thispage | |
| $thisquery | |
| $titletxt | |
| $username | |
| $userpage | |
| $userpageUrlDetails | |
Public Attributes inherited from Skin | |
| string | $stylename = null |
| Stylesheets set to use. More... | |
Protected Member Functions | |
| buildContentNavigationUrls () | |
| a structured array of links usually used for the tabs in a skin More... | |
| buildNavUrls () | |
| build array of common navigation links More... | |
| buildPersonalUrls () | |
| build array of urls for personal toolbar More... | |
| getNameSpaceKey () | |
| Generate strings used for xml 'id' names. More... | |
| prepareQuickTemplate () | |
| initialize various variables and generate the template More... | |
| setupTemplateForOutput () | |
| wrapHTML ($title, $html) | |
| Wrap the body text with language information and identifiable element. More... | |
Protected Member Functions inherited from Skin | |
| afterContentHook () | |
| This runs a hook to allow extensions placing their stuff after content and article metadata (e.g. More... | |
| generateDebugHTML () | |
| Generate debug data HTML for displaying at the bottom of the main content area. More... | |
| lastModified () | |
| Get the timestamp of the latest revision, formatted in user language. More... | |
| preloadExistence () | |
| Preload the existence of three commonly-requested pages in a single query. More... | |
Private Member Functions | |
| buildContentActionUrls ($content_navigation) | |
| an array of edit links by default used for the tabs More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from Skin | |
| static | checkTitle (&$title, $name) |
| make sure we have some title to operate on More... | |
| static | getAllowedSkins () |
| Fetch the list of user-selectable skins in regards to $wgSkipSkins. More... | |
| static | getDynamicStylesheetQuery () |
| Get the query to generate a dynamic stylesheet. More... | |
| static | getSkinNameMessages () |
| Fetch the skinname messages for available skins. More... | |
| static | getSkinNames () |
| Fetch the set of available skins. More... | |
| static | makeI18nUrl ($name, $urlaction= '') |
| static | makeInternalOrExternalUrl ($name) |
| If url string starts with http, consider as external URL, else internal. More... | |
| static | makeKnownUrlDetails ($name, $urlaction= '') |
| Make URL details where the article exists (or at least it's convenient to think so) More... | |
| static | makeMainPageUrl ($urlaction= '') |
| static | makeNSUrl ($name, $urlaction= '', $namespace=NS_MAIN) |
| this can be passed the NS number as defined in Language.php More... | |
| static | makeSpecialUrl ($name, $urlaction= '', $proto=null) |
| Make a URL for a Special Page using the given query and protocol. More... | |
| static | makeSpecialUrlSubpage ($name, $subpage, $urlaction= '') |
| static | makeUrl ($name, $urlaction= '') |
| static | makeUrlDetails ($name, $urlaction= '') |
| these return an array with the 'href' and boolean 'exists' More... | |
| static | makeVariablesScript ($data) |
| static | normalizeKey ($key) |
| Normalize a skin preference value to a form that can be loaded. More... | |
Protected Attributes inherited from Skin | |
| $mRelevantTitle = null | |
| $mRelevantUser = null | |
| $skinname = null | |
Base class for template-based skins.
Template-filler skin base class Formerly generic PHPTal (http://phptal.sourceforge.net/) skin Based on Brion's smarty skin
Definition at line 36 of file SkinTemplate.php.
|
private |
an array of edit links by default used for the tabs
| array | $content_navigation |
Definition at line 1169 of file SkinTemplate.php.
References $value, as, and wfDebug().
Referenced by prepareQuickTemplate().
|
protected |
a structured array of links usually used for the tabs in a skin
There are 4 standard sections namespaces: Used for namespace tabs like special, page, and talk namespaces views: Used for primary page views like read, edit, history actions: Used for most extra page actions like deletion, protection, etc... variants: Used to list the language variants for the page
Each section's value is a key/value array of links for that section. The links themselves have these common keys:
Views also have an extra key which can be used:
content_navigation using code also expects these ids to be present on the links, however these are usually automatically generated by SkinTemplate itself and are not necessary when using a hook. The only things these may matter to are people modifying content_navigation after it's initial creation:
Definition at line 849 of file SkinTemplate.php.
References $code, $link, $out, $params, $request, $section, $skinname, $title, $user, $wgDisableLangConversion, as, ContextSource\canUseWikiPage(), Skin\editUrlOptions(), Content\equals(), false, Action\getActionName(), ContextSource\getContext(), ContextSource\getOutput(), Skin\getRelevantTitle(), ContextSource\getRequest(), MWNamespace\getRestrictionLevels(), ContextSource\getTitle(), SpecialPage\getTitleFor(), ContextSource\getUser(), ContextSource\getWikiPage(), global, Skin\isRevisionCurrent(), ContextSource\msg(), NS_FILE, NS_MEDIAWIKI, Hooks\run(), ContextSource\setContext(), tabAction(), text, wfBCP47(), and wfMessageFallback().
Referenced by prepareQuickTemplate().
|
protected |
build array of common navigation links
Definition at line 1209 of file SkinTemplate.php.
References $out, $request, $user, $wgUploadNavigationUrl, ContextSource\getContext(), ContextSource\getOutput(), Skin\getRelevantUser(), ContextSource\getRequest(), Skin\getRevisionId(), ContextSource\getTitle(), SpecialPage\getTitleFor(), ContextSource\getUser(), global, UploadBase\isAllowed(), UploadBase\isEnabled(), ContextSource\msg(), Hooks\run(), SpecialPage\setContext(), and Skin\showEmailUser().
Referenced by prepareQuickTemplate().
|
protected |
build array of urls for personal toolbar
Definition at line 571 of file SkinTemplate.php.
References $page, $personal_urls, $query, $request, $title, $username, $wgDisableAuthManager, false, ContextSource\getRequest(), ContextSource\getTitle(), ContextSource\getUser(), global, User\groupHasPermission(), Title\isSpecialPage(), list, makeTalkUrlDetails(), ContextSource\msg(), Title\newFromText(), SpecialPageFactory\resolveAlias(), Hooks\run(), useCombinedLoginLink(), and wfArrayToCgi().
Referenced by getPersonalToolsList(), and prepareQuickTemplate().
| SkinTemplate::formatLanguageName | ( | $name | ) |
Format language name for use in sidebar interlanguage links list.
By default it is capitalized.
| string | $name | Language name, e.g. "English" or "español" |
Definition at line 537 of file SkinTemplate.php.
References $name, and ContextSource\getLanguage().
Referenced by getLanguages().
| SkinTemplate::getLanguages | ( | ) |
Generates array of language links for the current page.
Definition at line 101 of file SkinTemplate.php.
References $wgHideInterlanguageLinks, as, Language\fetchLanguageName(), formatLanguageName(), ContextSource\getLanguage(), ContextSource\getOutput(), ContextSource\getTitle(), global, Title\newFromText(), Hooks\run(), text, wfBCP47(), and wfMessage().
Referenced by prepareQuickTemplate().
|
protected |
Generate strings used for xml 'id' names.
Definition at line 1325 of file SkinTemplate.php.
References ContextSource\getTitle().
| SkinTemplate::getPersonalToolsList | ( | ) |
Get the HTML for the p-personal list.
Definition at line 519 of file SkinTemplate.php.
References $html, as, buildPersonalUrls(), and setupTemplateForOutput().
| SkinTemplate::makeArticleUrlDetails | ( | $name, | |
$urlaction = '' |
|||
| ) |
Definition at line 805 of file SkinTemplate.php.
References $name, $title, and Title\newFromText().
| SkinTemplate::makeTalkUrlDetails | ( | $name, | |
$urlaction = '' |
|||
| ) |
Definition at line 789 of file SkinTemplate.php.
References $name, $title, and Title\newFromText().
Referenced by buildPersonalUrls().
| SkinTemplate::outputPage | ( | OutputPage | $out = null | ) |
initialize various variables and generate the template
| OutputPage | $out |
Definition at line 233 of file SkinTemplate.php.
References $out, $res, ContextSource\getContext(), ContextSource\getOutput(), Skin\initPage(), Profiler\instance(), prepareQuickTemplate(), printOrError(), ContextSource\setContext(), and wfDeprecated().
|
protected |
initialize various variables and generate the template
Definition at line 291 of file SkinTemplate.php.
References $link, $out, $request, $title, $wgArticlePath, $wgContLang, $wgFooterIcons, $wgJsMimeType, $wgLogo, $wgMaxCredits, $wgMimeType, $wgScript, $wgScriptPath, $wgServer, $wgShowCreditsIfMax, $wgSitename, $wgStylePath, Skin\aboutLink(), Skin\afterContentHook(), as, Skin\bottomScripts(), buildContentActionUrls(), buildContentNavigationUrls(), buildNavUrls(), buildPersonalUrls(), Skin\buildSidebar(), Skin\disclaimerLink(), Skin\escapeSearchLink(), Action\factory(), Skin\generateDebugHTML(), Skin\getCategories(), ContextSource\getContext(), Skin\getCopyright(), Skin\getCopyrightIcon(), ContextSource\getLanguage(), getLanguages(), Skin\getNewtalks(), ContextSource\getOutput(), Skin\getPoweredBy(), ContextSource\getRequest(), Skin\getSiteNotice(), ContextSource\getTitle(), SpecialPage\getTitleFor(), Skin\getUndeleteLink(), ContextSource\getWikiPage(), global, Skin\isRevisionCurrent(), Skin\lastModified(), Skin\logoText(), ContextSource\msg(), Skin\printSource(), Skin\privacyLink(), Html\rawElement(), Hooks\run(), setupTemplateForOutput(), Skin\subPageSubtitle(), wfDebug(), wfReportTime(), and wrapHTML().
Referenced by outputPage().
| SkinTemplate::printOrError | ( | $str | ) |
Output the string, or print error message if it's an error object of the appropriate type.
For the base class, assume strings all around.
| string | $str |
Definition at line 549 of file SkinTemplate.php.
Referenced by outputPage().
| SkinTemplate::setupSkinUserCss | ( | OutputPage | $out | ) |
Add specific styles for this skin.
| OutputPage | $out |
Definition at line 62 of file SkinTemplate.php.
References OutputPage\addModuleStyles(), OutputPage\getHTML(), and OutputPage\isSyndicated().
Create the template engine object; we feed it a bunch of data and eventually it spits out some HTML.
Should have interface roughly equivalent to PHPTAL 0.7.
| string | $classname | |
| bool | string | $repository | Subdirectory where we keep template files |
| bool | string | $cache_dir |
Definition at line 92 of file SkinTemplate.php.
References ContextSource\getConfig().
Referenced by setupTemplateForOutput().
|
protected |
Definition at line 195 of file SkinTemplate.php.
References $query, $request, $title, $user, ContextSource\getRequest(), ContextSource\getTitle(), ContextSource\getUser(), setupTemplate(), and wfArrayToCgi().
Referenced by getPersonalToolsList(), and prepareQuickTemplate().
| SkinTemplate::tabAction | ( | $title, | |
| $message, | |||
| $selected, | |||
$query = '', |
|||
$checkEdit = false |
|||
| ) |
Builds an array with tab definition.
| Title | $title | Page Where the tab links to |
| string | array | $message | Message key or an array of message keys (will fall back) |
| bool | $selected | Display the tab as selected |
| string | $query | Query string attached to tab URL |
| bool | $checkEdit | Check if $title exists and mark with .new if one doesn't |
Definition at line 739 of file SkinTemplate.php.
References $query, $title, $wgContLang, ContextSource\getContext(), MWNamespace\getSubject(), global, Hooks\run(), true, and wfMessageFallback().
Referenced by buildContentNavigationUrls().
| SkinTemplate::useCombinedLoginLink | ( | ) |
Output a boolean indicating if buildPersonalUrls should output separate login and create account links or output a combined link By default we simply return a global config setting that affects most skins This is setup as a method so that like with $wgLogo and getLogo() a skin can override this setting and always output one or the other if it has a reason it can't output one of the two modes.
Definition at line 562 of file SkinTemplate.php.
References $wgUseCombinedLoginLink, and global.
Referenced by buildPersonalUrls().
|
protected |
Wrap the body text with language information and identifiable element.
| Title | $title | |
| string | $html | body text |
Definition at line 267 of file SkinTemplate.php.
References $html, $title, Action\getActionName(), NS_FILE, NS_SPECIAL, and Html\rawElement().
Referenced by prepareQuickTemplate().
| SkinTemplate::$loggedin |
Definition at line 53 of file SkinTemplate.php.
| string SkinTemplate::$skinname = 'monobook' |
Name of our skin, it probably needs to be all lower case.
Child classes should override the default.
Definition at line 41 of file SkinTemplate.php.
Referenced by buildContentNavigationUrls().
| string SkinTemplate::$template = 'QuickTemplate' |
For QuickTemplate, the name of the subclass which will actually fill the template.
Child classes should override the default.
Definition at line 47 of file SkinTemplate.php.
| SkinTemplate::$thispage |
Definition at line 49 of file SkinTemplate.php.
| SkinTemplate::$thisquery |
Definition at line 52 of file SkinTemplate.php.
| SkinTemplate::$titletxt |
Definition at line 50 of file SkinTemplate.php.
| SkinTemplate::$username |
Definition at line 54 of file SkinTemplate.php.
Referenced by buildPersonalUrls().
| SkinTemplate::$userpage |
Definition at line 51 of file SkinTemplate.php.
| SkinTemplate::$userpageUrlDetails |
Definition at line 55 of file SkinTemplate.php.