}
/**
- * initialize various variables and generate the template
- *
- * @param OutputPage|null $out
+ * Initialize various variables and generate the template
*/
- function outputPage( OutputPage $out = null ) {
+ function outputPage() {
Profiler::instance()->setTemplated( true );
-
- $oldContext = null;
- if ( $out !== null ) {
- // Deprecated since 1.20, note added in 1.25
- wfDeprecated( __METHOD__, '1.25' );
- $oldContext = $this->getContext();
- $this->setContext( $out->getContext() );
- }
-
$out = $this->getOutput();
$this->initPage( $out );
// result may be an error
$this->printOrError( $res );
-
- if ( $oldContext ) {
- $this->setContext( $oldContext );
- }
}
/**
* @return QuickTemplate The template to be executed by outputPage
*/
protected function prepareQuickTemplate() {
- global $wgScript, $wgStylePath, $wgMimeType, $wgJsMimeType,
+ global $wgScript, $wgStylePath, $wgMimeType,
$wgSitename, $wgLogo, $wgMaxCredits,
$wgShowCreditsIfMax, $wgArticlePath,
$wgScriptPath, $wgServer;
}
$tpl->set( 'mimetype', $wgMimeType );
- $tpl->set( 'jsmimetype', $wgJsMimeType );
$tpl->set( 'charset', 'UTF-8' );
$tpl->set( 'wgScript', $wgScript );
$tpl->set( 'skinname', $this->skinname );
$tpl->set( 'handheld', $request->getBool( 'handheld' ) );
$tpl->set( 'loggedin', $this->loggedin );
$tpl->set( 'notspecialpage', !$title->isSpecialPage() );
- $tpl->set( 'searchaction', $this->escapeSearchLink() );
+ $tpl->set( 'searchaction', $this->getSearchLink() );
$tpl->set( 'searchtitle', SpecialPage::getTitleFor( 'Search' )->getPrefixedDBkey() );
$tpl->set( 'search', trim( $request->getVal( 'search' ) ) );
$tpl->set( 'stylepath', $wgStylePath );
$returnto['returnto'] = $page;
$query = $request->getVal( 'returntoquery', $this->thisquery );
$paramsArray = wfCgiToArray( $query );
- unset( $paramsArray['logoutToken'] );
$query = wfArrayToCgi( $paramsArray );
if ( $query != '' ) {
$returnto['returntoquery'] = $query;
'href' => self::makeSpecialUrl( 'Userlogout',
// Note: userlogout link must always contain an & character, otherwise we might not be able
// to detect a buggy precaching proxy (T19790)
- ( $title->isSpecial( 'Preferences' ) ? [] : $returnto )
- + [ 'logoutToken' => $this->getUser()->getEditToken( 'logoutToken', $this->getRequest() ) ] ),
+ ( $title->isSpecial( 'Preferences' ) ? [] : $returnto ) ),
'active' => false
];
}
$nav_urls['contributions'] = false;
$nav_urls['log'] = false;
$nav_urls['blockip'] = false;
+ $nav_urls['mute'] = false;
$nav_urls['emailuser'] = false;
$nav_urls['userrights'] = false;
}
if ( !$user->isAnon() ) {
+ if ( $this->getUser()->isRegistered() && $this->getConfig()->get( 'EnableSpecialMute' ) ) {
+ $nav_urls['mute'] = [
+ 'text' => $this->msg( 'mute-preferences' )->text(),
+ 'href' => self::makeSpecialUrlSubpage( 'Mute', $rootUser )
+ ];
+ }
+
$sur = new UserrightsPage;
$sur->setContext( $this->getContext() );
$canChange = $sur->userCanChangeRights( $user );