]> git.openstreetmap.org Git - nominatim.git/blob - utils/country_languages.php
5f890083122846eabe1f5e06cdead0997b2a9366
[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         }