]> git.openstreetmap.org Git - nominatim.git/blob - utils/country_languages.php
3a36b5ea2ce48f1164f3d183a528de1b04b0e9fe
[nominatim.git] / utils / country_languages.php
1 #!/usr/bin/php -Cq
2 <?php
3
4 require_once(dirname(dirname(__FILE__)).'/settings/settings.php');
5 require_once(CONST_BasePath.'/lib/init-cmd.php');
6
7     ini_set('memory_limit', '800M');
8     ini_set('display_errors', 'stderr');
9
10     $aCMDOptions = array(
11             "Import country language data from osm wiki",
12             array('help', 'h', 0, 1, 0, 0, false, 'Show Help'),
13             array('quiet', 'q', 0, 1, 0, 0, 'bool', 'Quiet output'),
14             array('verbose', 'v', 0, 1, 0, 0, 'bool', 'Verbose output'),
15     );
16     getCmdOpt($_SERVER['argv'], $aCMDOptions, $aCMDResult, true, true);
17
18 include(CONST_InstallPath.'/settings/phrase_settings.php');
19
20 if (true) {
21     $sURL = 'http://wiki.openstreetmap.org/wiki/Special:Export/Nominatim/Country_Codes';
22     $sWikiPageXML = file_get_contents($sURL);
23     if (preg_match_all('#\\| ([a-z]{2}) \\|\\| [^|]+\\|\\| ([a-z,]+)#', $sWikiPageXML, $aMatches, PREG_SET_ORDER)) {
24         foreach ($aMatches as $aMatch) {
25             $aLanguages = explode(',', $aMatch[2]);
26             foreach ($aLanguages as $i => $s) {
27                 $aLanguages[$i] = '"'.pg_escape_string($s).'"';
28             }
29             echo "UPDATE country_name set country_default_language_codes = '{".join(',',$aLanguages)."}' where country_code = '".pg_escape_string($aMatch[1])."';\n";
30         }
31     }
32 }