ApiQueryInfo.php: Add code and direction of the page content language
authorFomafix <fomafix@googlemail.com>
Wed, 4 Nov 2015 16:50:48 +0000 (16:50 +0000)
committer[[mw:User:Fomafix]] <gerritpatchuploader@gmail.com>
Wed, 4 Nov 2015 16:50:48 +0000 (16:50 +0000)
This change introduces two new keys in the response:
* "pagelanguagehtmlcode" for the BCP 47 conform language code
* "pagelanguagedir" for the direction of the language

Example:
 "pagelanguagehtmlcode": "en-GB"
 "pagelanguagedir": "ltr"

The existing key "pagelanguage" contains the internal language code format:
 "pagelanguage": "en-gb"

This duplication avoids reimplementing wfBCP47() and a mapping from
all language codes to the direction of the languages in JavaScript.

Bug: T117392
Change-Id: I26d033e33bfa60c8ff72ba70bb564cba4303a8b6

includes/api/ApiQueryInfo.php

index 7967826..7dcf23a 100644 (file)
@@ -387,7 +387,11 @@ class ApiQueryInfo extends ApiQueryBase {
                $dbkey = $title->getDBkey();
 
                $pageInfo['contentmodel'] = $title->getContentModel();
-               $pageInfo['pagelanguage'] = $title->getPageLanguage()->getCode();
+
+               $pageLanguage = $title->getPageLanguage();
+               $pageInfo['pagelanguage'] = $pageLanguage->getCode();
+               $pageInfo['pagelanguagehtmlcode'] = $pageLanguage->getHtmlCode();
+               $pageInfo['pagelanguagedir'] = $pageLanguage->getDir();
 
                if ( $titleExists ) {
                        $pageInfo['touched'] = wfTimestamp( TS_ISO_8601, $this->pageTouched[$pageid] );