dépôts
/
lhc
/
web
/
wiklou.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge "fix merge of Iec98e472" into Wikidata
[lhc/web/wiklou.git]
/
languages
/
Language.php
diff --git
a/languages/Language.php
b/languages/Language.php
index
1edca80
..
472871f
100644
(file)
--- a/
languages/Language.php
+++ b/
languages/Language.php
@@
-419,6
+419,16
@@
class Language {
*/
public function setNamespaces( array $namespaces ) {
$this->namespaceNames = $namespaces;
*/
public function setNamespaces( array $namespaces ) {
$this->namespaceNames = $namespaces;
+ $this->mNamespaceIds = null;
+ }
+
+ /**
+ * Resets all of the namespace caches. Mainly used for testing
+ */
+ public function resetNamespaces( ) {
+ $this->namespaceNames = null;
+ $this->mNamespaceIds = null;
+ $this->namespaceAliases = null;
}
/**
}
/**
@@
-3005,7
+3015,7
@@
class Language {
function listToText( array $l ) {
$s = '';
$m = count( $l ) - 1;
function listToText( array $l ) {
$s = '';
$m = count( $l ) - 1;
-
+
if ( $m === 0 ) {
return $l[0];
} elseif ( $m === 1 ) {
if ( $m === 0 ) {
return $l[0];
} elseif ( $m === 1 ) {
@@
-4187,7
+4197,17
@@
class Language {
* @return array Associative array with plural form, and plural rule as key-value pairs
*/
public function getCompiledPluralRules() {
* @return array Associative array with plural form, and plural rule as key-value pairs
*/
public function getCompiledPluralRules() {
- return self::$dataCache->getItem( strtolower( $this->mCode ), 'compiledPluralRules' );
+ $pluralRules = self::$dataCache->getItem( strtolower( $this->mCode ), 'compiledPluralRules' );
+ $fallbacks = Language::getFallbacksFor( $this->mCode );
+ if ( !$pluralRules ) {
+ foreach ( $fallbacks as $fallbackCode ) {
+ $pluralRules = self::$dataCache->getItem( strtolower( $fallbackCode ), 'compiledPluralRules' );
+ if ( $pluralRules ) {
+ break;
+ }
+ }
+ }
+ return $pluralRules;
}
/**
}
/**
@@
-4196,7
+4216,17
@@
class Language {
* @return array Associative array with plural form, and plural rule as key-value pairs
*/
public function getPluralRules() {
* @return array Associative array with plural form, and plural rule as key-value pairs
*/
public function getPluralRules() {
- return self::$dataCache->getItem( strtolower( $this->mCode ), 'pluralRules' );
+ $pluralRules = self::$dataCache->getItem( strtolower( $this->mCode ), 'pluralRules' );
+ $fallbacks = Language::getFallbacksFor( $this->mCode );
+ if ( !$pluralRules ) {
+ foreach ( $fallbacks as $fallbackCode ) {
+ $pluralRules = self::$dataCache->getItem( strtolower( $fallbackCode ), 'pluralRules' );
+ if ( $pluralRules ) {
+ break;
+ }
+ }
+ }
+ return $pluralRules;
}
/**
}
/**