From: Fomafix Date: Mon, 9 Nov 2015 05:43:11 +0000 (+0000) Subject: Apply wfBCP47() to HTTP response header Content-Language X-Git-Tag: 1.31.0-rc.0~5523 X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=commitdiff_plain;h=e53ff931ab17ba9e999ee550ddfdef89b172675f Apply wfBCP47() to HTTP response header Content-Language See https://tools.ietf.org/html/rfc7231#section-3.1.3 for Content-Language. This references https://tools.ietf.org/html/rfc5646 aka BCP 47. Example: curl -I https://crh.wikipedia.org/wiki/Ba%C5%9F_Saife | grep -i '^content-language:' should contain Content-language: crh-Latn instead of Content-language: crh-latn Change-Id: Ice4f40911c3761c2542430935bc1898bc4e7a4d4 --- diff --git a/includes/OutputPage.php b/includes/OutputPage.php index 4c4fb1c6e4..ba14b99557 100644 --- a/includes/OutputPage.php +++ b/includes/OutputPage.php @@ -2268,7 +2268,7 @@ class OutputPage extends ContextSource { ob_start(); $response->header( 'Content-type: ' . $config->get( 'MimeType' ) . '; charset=UTF-8' ); - $response->header( 'Content-language: ' . $config->get( 'LanguageCode' ) ); + $response->header( 'Content-language: ' . $config->get( 'ContLang' )->getHtmlCode() ); // Avoid Internet Explorer "compatibility view" in IE 8-10, so that // jQuery etc. can work correctly. diff --git a/includes/cache/HTMLFileCache.php b/includes/cache/HTMLFileCache.php index 52ae27912d..71011e03a0 100644 --- a/includes/cache/HTMLFileCache.php +++ b/includes/cache/HTMLFileCache.php @@ -154,7 +154,7 @@ class HTMLFileCache extends FileCacheBase { * @return void */ public function loadFromFileCache( IContextSource $context, $mode = self::MODE_NORMAL ) { - global $wgMimeType, $wgLanguageCode; + global $wgMimeType, $wgContLang; wfDebug( __METHOD__ . "()\n" ); $filename = $this->cachePath(); @@ -166,7 +166,7 @@ class HTMLFileCache extends FileCacheBase { $context->getOutput()->sendCacheControl(); header( "Content-Type: $wgMimeType; charset=UTF-8" ); - header( "Content-Language: $wgLanguageCode" ); + header( 'Content-Language: ' . $wgContLang->getHtmlCode() ); if ( $this->useGzip() ) { if ( wfClientAcceptsGzip() ) { header( 'Content-Encoding: gzip' );