36 private $templateParser =
null;
46 if ( $this->templateParser ===
null ) {
47 $this->templateParser =
new TemplateParser( $this->options[
'templateDirectory'] );
49 $this->templateParser->enableRecursivePartials(
true );
51 return $this->templateParser;
60 private function createTempUserBannerHTML() {
61 $isSupportedSkin = $this->
getOptions()[
'tempUserBanner'];
62 $isTempUser = $this->
getUser()->isTemp();
64 if ( !$isSupportedSkin || !$isTempUser ) {
74 $tempUserBanner =
new SkinComponentTempUserBanner(
79 return $tempUserBanner->getTemplateData()[
'html'];
92 $template = $this->options[
'template'] ??
'skin';
94 $html = $this->createTempUserBannerHTML();
95 $html .= $tp->processTemplate(
$template, $data );
105 return parent::doEditSectionLinksHTML( $links, $lang );
108 'class' =>
'mw-editsection',
109 'array-links' => $links
119 $printSource = Html::rawElement(
122 'class' =>
'printfooter',
123 'data-nosnippet' =>
''
127 $bodyContent = $out->getHTML() .
"\n" . $printSource;
131 $data = parent::getTemplateData() + [
136 'html-user-message' => $newTalksHtml ?
137 Html::rawElement(
'div', [
'class' =>
'usermessage' ], $newTalksHtml ) :
null,
139 'html-body-content' => $this->
wrapHTML( $out->getTitle(), $bodyContent ),
146 'link-mainpage' => Title::newMainPage()->getLocalURL(),
149 foreach ( $this->options[
'messages'] ?? [] as $message ) {
150 $data[
"msg-{$message}"] = $this->
msg( $message )->text();
157class_alias( SkinMustache::class,
'SkinMustache' );
msg( $key,... $params)
Get a Message object with context set Parameters are the same as wfMessage()
getContext()
Get the base IContextSource object.