-
Notifications
You must be signed in to change notification settings - Fork 1
/
ExtractText.i18n.php
40 lines (38 loc) · 1.53 KB
/
ExtractText.i18n.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
/**
* This is a backwards-compatibility shim, generated by:
* https://git.wikimedia.org/blob/mediawiki%2Fcore.git/HEAD/maintenance%2FgenerateJsonI18n.php
*
* Beginning with MediaWiki 1.23, translation strings are stored in json files,
* and the EXTENSION.i18n.php file only exists to provide compatibility with
* older releases of MediaWiki. For more information about this migration, see:
* https://www.mediawiki.org/wiki/Requests_for_comment/Localisation_format
*
* This shim maintains compatibility back to MediaWiki 1.17.
*/
$messages = [];
if (!function_exists("wfJsonI18nShim1b3b6a378e417def")) {
function wfJsonI18nShim1b3b6a378e417def($cache, $code, &$cachedData)
{
$codeSequence = array_merge([$code], $cachedData["fallbackSequence"]);
foreach ($codeSequence as $csCode) {
$fileName = dirname(__FILE__) . "/i18n/$csCode.json";
if (is_readable($fileName)) {
$data = FormatJson::decode(file_get_contents($fileName), true);
foreach (array_keys($data) as $key) {
if ($key === "" || $key[0] === "@") {
unset($data[$key]);
}
}
$cachedData["messages"] = array_merge(
$data,
$cachedData["messages"]
);
}
$cachedData["deps"][] = new FileDependency($fileName);
}
return true;
}
$GLOBALS["wgHooks"]["LocalisationCacheRecache"][] =
"wfJsonI18nShim1b3b6a378e417def";
}