X-Git-Url: http://git.cyclocoop.org/%22%20.%20generer_url_ecrire%28%22calendrier%22%2C%22type=semaine%22%29%20.%20%22?a=blobdiff_plain;f=includes%2FOutputPage.php;h=a03282ab0230b27f6e63933d5d6342d91afdefe2;hb=c546fae8ed67279d21daf0652349975fa034f7d1;hp=bc9eaa9a0c5cf85eca545d3354c43005b628899e;hpb=bceb90ceedc4f8256bad231311bd59a0bb4f2a4e;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/OutputPage.php b/includes/OutputPage.php index bc9eaa9a0c..a03282ab02 100644 --- a/includes/OutputPage.php +++ b/includes/OutputPage.php @@ -255,7 +255,7 @@ class OutputPage extends ContextSource { function __construct( IContextSource $context = null ) { if ( $context === null ) { # Extensions should use `new RequestContext` instead of `new OutputPage` now. - wfDeprecated( __METHOD__ ); + wfDeprecated( __METHOD__, '1.18' ); } else { $this->setContext( $context ); } @@ -851,11 +851,10 @@ class OutputPage extends ContextSource { $this->getContext()->setTitle( $t ); } - /** * Replace the subtile with $str * - * @param $str String|Message: new value of the subtitle + * @param $str String|Message: new value of the subtitle. String should be safe HTML. */ public function setSubtitle( $str ) { $this->clearSubtitle(); @@ -875,7 +874,7 @@ class OutputPage extends ContextSource { /** * Add $str to the subtitle * - * @param $str String|Message to add to the subtitle + * @param $str String|Message to add to the subtitle. String should be safe HTML. */ public function addSubtitle( $str ) { if ( $str instanceof Message ) { @@ -1903,7 +1902,7 @@ class OutputPage extends ContextSource { * @deprecated since 1.18 Use HttpStatus::getMessage() instead. */ public static function getStatusMessage( $code ) { - wfDeprecated( __METHOD__ ); + wfDeprecated( __METHOD__, '1.18' ); return HttpStatus::getMessage( $code ); } @@ -1990,8 +1989,15 @@ class OutputPage extends ContextSource { wfProfileOut( 'Output-skin' ); } + // This hook allows last minute changes to final overall output by modifying output buffer + wfRunHooks( 'AfterFinalPageOutput', array( $this ) ); + $this->sendCacheControl(); + + wfRunHooks( 'AfterFinalPageOutput', array( &$this ) ); + ob_end_flush(); + wfProfileOut( __METHOD__ ); } @@ -2340,11 +2346,20 @@ $templates * @param $title Title to link * @param $query Array query string parameters * @param $text String text of the link (input is not escaped) + * @param $options Options array to pass to Linker */ - public function addReturnTo( $title, $query = array(), $text = null ) { - $this->addLink( array( 'rel' => 'next', 'href' => $title->getFullURL() ) ); + public function addReturnTo( $title, $query = array(), $text = null, $options = array() ) { + if( in_array( 'http', $options ) ) { + $proto = PROTO_HTTP; + } elseif( in_array( 'https', $options ) ) { + $proto = PROTO_HTTPS; + } else { + $proto = PROTO_RELATIVE; + } + + $this->addLink( array( 'rel' => 'next', 'href' => $title->getFullURL( '', false, $proto ) ) ); $link = $this->msg( 'returnto' )->rawParams( - Linker::link( $title, $text, array(), $query ) )->escaped(); + Linker::link( $title, $text, array(), $query, $options ) )->escaped(); $this->addHTML( "

{$link}

\n" ); } @@ -2448,7 +2463,7 @@ $templates */ private function addDefaultModules() { global $wgIncludeLegacyJavaScript, $wgPreloadJavaScriptMwUtil, $wgUseAjax, - $wgAjaxWatch, $wgEnableMWSuggest; + $wgAjaxWatch; // Add base resources $this->addModules( array( @@ -2476,8 +2491,8 @@ $templates $this->addModules( 'mediawiki.page.watch.ajax' ); } - if ( $wgEnableMWSuggest && !$this->getUser()->getOption( 'disablesuggest', false ) ) { - $this->addModules( 'mediawiki.legacy.mwsuggest' ); + if ( !$this->getUser()->getOption( 'disablesuggest', false ) ) { + $this->addModules( 'mediawiki.searchSuggest' ); } } @@ -2901,7 +2916,7 @@ $templates * @return array */ public function getJSVars() { - global $wgUseAjax, $wgEnableMWSuggest, $wgContLang; + global $wgUseAjax, $wgContLang; $latestRevID = 0; $pageID = 0; @@ -2967,9 +2982,6 @@ $templates foreach ( $title->getRestrictionTypes() as $type ) { $vars['wgRestriction' . ucfirst( $type )] = $title->getRestrictions( $type ); } - if ( $wgUseAjax && $wgEnableMWSuggest && !$this->getUser()->getOption( 'disablesuggest', false ) ) { - $vars['wgSearchNamespaces'] = SearchEngine::userNamespaces( $this->getUser() ); - } if ( $title->isMainPage() ) { $vars['wgIsMainPage'] = true; } @@ -3537,9 +3549,6 @@ $templates * message names, or arrays, in which case the first element is the message name, * and subsequent elements are the parameters to that message. * - * The special named parameter 'options' in a message specification array is passed - * through to the $options parameter of wfMsgExt(). - * * Don't use this for messages that are not in users interface language. * * For example: @@ -3548,7 +3557,7 @@ $templates * * Is equivalent to: * - * $wgOut->addWikiText( "
\n" . wfMsgNoTrans( 'some-error' ) . "\n
" ); + * $wgOut->addWikiText( "
\n" . wfMessage( 'some-error' )->plain() . "\n
" ); * * The newline after opening div is needed in some wikitext. See bug 19226. * @@ -3565,14 +3574,17 @@ $templates $args = $spec; $name = array_shift( $args ); if ( isset( $args['options'] ) ) { - $options = $args['options']; unset( $args['options'] ); + wfDeprecated( + 'Adding "options" to ' . __METHOD__ . ' is no longer supported', + '1.20' + ); } } else { $args = array(); $name = $spec; } - $s = str_replace( '$' . ( $n + 1 ), wfMsgExt( $name, $options, $args ), $s ); + $s = str_replace( '$' . ( $n + 1 ), $this->msg( $name, $args )->plain(), $s ); } $this->addWikiText( $s ); }