2012-11-15 03:50:52 +04:00
#!/usr/bin/php -Cq
< ? php
2016-09-04 04:19:48 +03:00
require_once ( dirname ( dirname ( __FILE__ )) . '/settings/settings.php' );
require_once ( CONST_BasePath . '/lib/init-cmd.php' );
2016-03-09 02:07:46 +03:00
2016-09-10 22:10:52 +03:00
ini_set ( 'memory_limit' , '800M' );
ini_set ( 'display_errors' , 'stderr' );
2012-11-15 03:50:52 +04:00
2016-09-10 22:10:52 +03:00
$aCMDOptions
= array (
" Import country language data from osm wiki " ,
array ( 'help' , 'h' , 0 , 1 , 0 , 0 , false , 'Show Help' ),
array ( 'quiet' , 'q' , 0 , 1 , 0 , 0 , 'bool' , 'Quiet output' ),
array ( 'verbose' , 'v' , 0 , 1 , 0 , 0 , 'bool' , 'Verbose output' ),
);
getCmdOpt ( $_SERVER [ 'argv' ], $aCMDOptions , $aCMDResult , true , true );
2012-11-15 03:50:52 +04:00
2016-09-04 04:19:48 +03:00
include ( CONST_InstallPath . '/settings/phrase_settings.php' );
2012-11-15 03:50:52 +04:00
2016-09-08 04:16:22 +03:00
if ( true ) {
2016-09-04 04:19:48 +03:00
$sURL = 'http://wiki.openstreetmap.org/wiki/Special:Export/Nominatim/Country_Codes' ;
$sWikiPageXML = file_get_contents ( $sURL );
2016-09-08 04:16:22 +03:00
if ( preg_match_all ( '#\\| ([a-z]{2}) \\|\\| [^|]+\\|\\| ([a-z,]+)#' , $sWikiPageXML , $aMatches , PREG_SET_ORDER )) {
foreach ( $aMatches as $aMatch ) {
2016-09-04 04:19:48 +03:00
$aLanguages = explode ( ',' , $aMatch [ 2 ]);
2016-09-08 04:16:22 +03:00
foreach ( $aLanguages as $i => $s ) {
2016-09-04 04:19:48 +03:00
$aLanguages [ $i ] = '"' . pg_escape_string ( $s ) . '"' ;
}
2016-09-11 06:22:51 +03:00
echo " UPDATE country_name set country_default_language_codes = ' { " . join ( ',' , $aLanguages ) . " }' where country_code = ' " . pg_escape_string ( $aMatch [ 1 ]) . " '; \n " ;
2016-09-04 04:19:48 +03:00
}
}
}