From: Tareq Al-Ahdal Date: Thu, 17 Mar 2022 18:36:12 +0000 (+0800) Subject: Merge branch 'master' into country-names-yaml-configuration X-Git-Tag: v4.1.0~64^2~22 X-Git-Url: https://git.openstreetmap.org./nominatim.git/commitdiff_plain/6be2077d922098d65f069557dea55542c15a5c98 Merge branch 'master' into country-names-yaml-configuration --- 6be2077d922098d65f069557dea55542c15a5c98 diff --cc lib-php/ParameterParser.php index 46e69501,98b95388..90e0cee3 --- a/lib-php/ParameterParser.php +++ b/lib-php/ParameterParser.php @@@ -114,19 -114,18 +114,19 @@@ class ParameterParse } foreach ($aLanguages as $sLanguage => $fLanguagePref) { - $aLangPrefOrder[$sLanguage] = $sLanguage; - $this->addNameTag($aLangPrefOrder, 'name:'.$sLanguage); ++ $this->addNameTag($aLangPrefOrder, $sLanguage); } - - $aLangPrefOrder['default'] = 'default'; - $aLangPrefOrder['brand'] = 'brand'; - $this->addNameTag($aLangPrefOrder, 'name'); ++ $this->addNameTag($aLangPrefOrder, 'default'); + $this->addNameTag($aLangPrefOrder, 'brand'); ++ foreach ($aLanguages as $sLanguage => $fLanguagePref) { - $aLangPrefOrder['official_name:'.$sLanguage] = 'official_name:'.$sLanguage; - $aLangPrefOrder['short_name:'.$sLanguage] = 'short_name:'.$sLanguage; + $this->addNameTag($aLangPrefOrder, 'official_name:'.$sLanguage); + $this->addNameTag($aLangPrefOrder, 'short_name:'.$sLanguage); } - $aLangPrefOrder['official_name'] = 'official_name'; - $aLangPrefOrder['short_name'] = 'short_name'; - $aLangPrefOrder['ref'] = 'ref'; - $aLangPrefOrder['type'] = 'type'; + $this->addNameTag($aLangPrefOrder, 'official_name'); + $this->addNameTag($aLangPrefOrder, 'short_name'); + $this->addNameTag($aLangPrefOrder, 'ref'); + $this->addNameTag($aLangPrefOrder, 'type'); return $aLangPrefOrder; } diff --cc test/php/Nominatim/ParameterParserTest.php index cb7b0e81,1488c987..2239b844 --- a/test/php/Nominatim/ParameterParserTest.php +++ b/test/php/Nominatim/ParameterParserTest.php @@@ -183,75 -183,49 +183,34 @@@ class ParameterParserTest extends \PHPU { $oParams = new ParameterParser(array('accept-language' => '')); $this->assertSame(array( - 'name:default' => 'name:default', - '_place_name:default' => '_place_name:default', - 'name' => 'name', - '_place_name' => '_place_name' + 'default' => 'default', - 'brand' => 'brand', - 'official_name:default' => 'official_name:default', - 'short_name:default' => 'short_name:default', - 'official_name' => 'official_name', - 'short_name' => 'short_name', - 'ref' => 'ref', - 'type' => 'type' - ), $oParams->getPreferredLanguages('default')); + ), array_slice($oParams->getPreferredLanguages('default'), 0, 4)); $oParams = new ParameterParser(array('accept-language' => 'de,en')); $this->assertSame(array( - 'name:de' => 'name:de', - '_place_name:de' => '_place_name:de', - 'name:en' => 'name:en', - '_place_name:en' => '_place_name:en', - 'name' => 'name', - '_place_name' => '_place_name' + 'de' => 'de', + 'en' => 'en', - 'name' => 'name', - 'brand' => 'brand', - 'official_name:de' => 'official_name:de', - 'short_name:de' => 'short_name:de', - 'official_name:en' => 'official_name:en', - 'short_name:en' => 'short_name:en', - 'official_name' => 'official_name', - 'short_name' => 'short_name', - 'ref' => 'ref', - 'type' => 'type' - ), $oParams->getPreferredLanguages('default')); ++ 'default' => 'default', + ), array_slice($oParams->getPreferredLanguages('default'), 0, 6)); $oParams = new ParameterParser(array('accept-language' => 'fr-ca,fr;q=0.8,en-ca;q=0.5,en;q=0.3')); $this->assertSame(array( - 'name:fr-ca' => 'name:fr-ca', - '_place_name:fr-ca' => '_place_name:fr-ca', - 'name:fr' => 'name:fr', - '_place_name:fr' => '_place_name:fr', - 'name:en-ca' => 'name:en-ca', - '_place_name:en-ca' => '_place_name:en-ca', - 'name:en' => 'name:en', - '_place_name:en' => '_place_name:en', - 'name' => 'name', - '_place_name' => '_place_name' + 'fr-ca' => 'fr-ca', + 'fr' => 'fr', ++ 'fr' => 'fr', + 'en-ca' => 'en-ca', + 'en' => 'en', - 'name' => 'name', - 'brand' => 'brand', - 'official_name:fr-ca' => 'official_name:fr-ca', - 'short_name:fr-ca' => 'short_name:fr-ca', - 'official_name:fr' => 'official_name:fr', - 'short_name:fr' => 'short_name:fr', - 'official_name:en-ca' => 'official_name:en-ca', - 'short_name:en-ca' => 'short_name:en-ca', - 'official_name:en' => 'official_name:en', - 'short_name:en' => 'short_name:en', - 'official_name' => 'official_name', - 'short_name' => 'short_name', - 'ref' => 'ref', - 'type' => 'type', - ), $oParams->getPreferredLanguages('default')); ++ 'default' => 'default', + ), array_slice($oParams->getPreferredLanguages('default'), 0, 10)); $oParams = new ParameterParser(array('accept-language' => 'ja_rm,zh_pinyin')); $this->assertSame(array( - 'name:ja_rm' => 'name:ja_rm', - '_place_name:ja_rm' => '_place_name:ja_rm', - 'name:zh_pinyin' => 'name:zh_pinyin', - '_place_name:zh_pinyin' => '_place_name:zh_pinyin', - 'name:ja' => 'name:ja', - '_place_name:ja' => '_place_name:ja', - 'name:zh' => 'name:zh', - '_place_name:zh' => '_place_name:zh', - 'name' => 'name', - '_place_name' => '_place_name' + 'ja_rm' => 'ja_rm', + 'zh_pinyin' => 'zh_pinyin', + 'ja' => 'ja', + 'zh' => 'zh', - 'name' => 'name', - 'brand' => 'brand', - 'official_name:ja_rm' => 'official_name:ja_rm', - 'short_name:ja_rm' => 'short_name:ja_rm', - 'official_name:zh_pinyin' => 'official_name:zh_pinyin', - 'short_name:zh_pinyin' => 'short_name:zh_pinyin', - 'official_name:ja' => 'official_name:ja', - 'short_name:ja' => 'short_name:ja', - 'official_name:zh' => 'official_name:zh', - 'short_name:zh' => 'short_name:zh', - 'official_name' => 'official_name', - 'short_name' => 'short_name', - 'ref' => 'ref', - 'type' => 'type', - ), $oParams->getPreferredLanguages('default')); ++ 'default' => 'default', + ), array_slice($oParams->getPreferredLanguages('default'), 0, 10)); } public function testHasSetAny()