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