X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=blobdiff_plain;f=includes%2Finterwiki%2FInterwikiLookupAdapter.php;h=076c37fe1fbd0e742f5bfb04f67be36a640e7383;hp=60d6f43ddd1313f6e27949a54f7cd581cbf47b21;hb=12601ff7d2796752404bfb331fccc41083d31f9f;hpb=dcdb8e463e3b2be121c61c91df13ea36d270a602 diff --git a/includes/interwiki/InterwikiLookupAdapter.php b/includes/interwiki/InterwikiLookupAdapter.php index 60d6f43ddd..076c37fe1f 100644 --- a/includes/interwiki/InterwikiLookupAdapter.php +++ b/includes/interwiki/InterwikiLookupAdapter.php @@ -60,7 +60,6 @@ class InterwikiLookupAdapter implements InterwikiLookup { * @return bool Whether it exists */ public function isValidInterwiki( $prefix ) { - return array_key_exists( $prefix, $this->getInterwikiMap() ); } @@ -87,16 +86,20 @@ class InterwikiLookupAdapter implements InterwikiLookup { * See InterwikiLookup::getAllPrefixes * * @param string|null $local If set, limits output to local/non-local interwikis - * @return string[] List of prefixes + * @return array[] interwiki rows */ public function getAllPrefixes( $local = null ) { - if ( $local === null ) { - return array_keys( $this->getInterwikiMap() ); - } $res = []; foreach ( $this->getInterwikiMap() as $interwikiId => $interwiki ) { - if ( $interwiki->isLocal() === $local ) { - $res[] = $interwikiId; + if ( $local === null || $interwiki->isLocal() === $local ) { + $res[] = [ + 'iw_prefix' => $interwikiId, + 'iw_url' => $interwiki->getURL(), + 'iw_api' => $interwiki->getAPI(), + 'iw_wikiid' => $interwiki->getWikiID(), + 'iw_local' => $interwiki->isLocal(), + 'iw_trans' => $interwiki->isTranscludable(), + ]; } } return $res;