]> git.openstreetmap.org Git - nominatim.git/blob - utils/country_languages.php
9d3b1e810c5ac4da3b97d24ef3047504ba38e66b
[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 {
22     $sURL = 'http://wiki.openstreetmap.org/wiki/Special:Export/Nominatim/Country_Codes';
23     $sWikiPageXML = file_get_contents($sURL);
24     if (preg_match_all('#\\| ([a-z]{2}) \\|\\| [^|]+\\|\\| ([a-z,]+)#', $sWikiPageXML, $aMatches, PREG_SET_ORDER))
25     {
26         foreach($aMatches as $aMatch)
27         {
28             $aLanguages = explode(',', $aMatch[2]);
29             foreach($aLanguages as $i => $s)
30             {
31                 $aLanguages[$i] = '"'.pg_escape_string($s).'"';
32             }
33             echo "UPDATE country_name set country_default_language_codes = '{".join(',',$aLanguages)."}' where country_code = '".pg_escape_string($aMatch[1])."';\n";
34         }
35     }
36 }