Commit | Line | Data |
---|---|---|
1c305d4c SJ |
1 | #!/usr/bin/php5 |
2 | <?php | |
3 | ||
4 | require_once 'connect.db.inc.php'; | |
5 | require_once '../../classes/address.php'; | |
6 | require_once '../../classes/gmapsgeocoder.php'; | |
7 | require_once '../../classes/geocoder.php'; | |
8 | ||
9 | $globals->debug = 0; // Do not store backtraces. | |
10 | ||
11 | $it = XDB::iterator('SELECT gl.language, gc.country, gc.iso_3166_1_a2 | |
12 | FROM geoloc_languages AS gl | |
13 | INNER JOIN geoloc_countries AS gc ON (gl.iso_3166_1_a2 = gc.iso_3166_1_a2)'); | |
14 | ||
15 | echo $it->total() . " pays à remplir.\n"; | |
16 | while ($item = $it->next()) { | |
17 | if ($item['language'] != 'fr') { | |
18 | $address = new Address(array('text' => $item['country'])); | |
19 | $gmapsGeocoder = new GMapsGeocoder(); | |
20 | $gmapsGeocoder->getGeocodedAddress($address, $item['language'], true); | |
21 | $country = $address->country; | |
22 | } else { | |
23 | $country = $item['country']; | |
24 | } | |
25 | $countryPlain = mb_strtoupper(replace_accent($country)); | |
26 | XDB::execute('UPDATE geoloc_languages | |
27 | SET country = {?}, countryPlain = {?} | |
28 | WHERE iso_3166_1_a2 = {?} AND language = {?}', | |
29 | $country, $countryPlain, $item['iso_3166_1_a2'], $item['language']); | |
30 | sleep(1); | |
31 | } | |
32 | ||
33 | $it = XDB::rawIterator('SELECT country, iso_3166_1_a2 | |
34 | FROM geoloc_countries'); | |
35 | echo $it->total() . " pays à simplifier.\n"; | |
36 | while ($item = $it->next()) { | |
37 | XDB::execute('UPDATE geoloc_countries | |
38 | SET countryPlain = {?} | |
39 | WHERE iso_3166_1_a2 = {?}', | |
40 | mb_strtoupper(replace_accent($item['country'])), $item['iso_3166_1_a2']); | |
41 | } | |
42 | ||
43 | // Fixes geocoding errors. | |
44 | XDB::rawExecute("REPLACE INTO geoloc_languages (iso_3166_1_a2, language, country, countryPlain) | |
45 | VALUES ('FM', 'en', 'Federated States of Micronesia', 'FEDERATED STATES OF MICRONESIA'), | |
46 | ('MH', 'en', 'Republic of the Marshall Islands', 'REPUBLIC OF THE MARSHALL ISLANDS'), | |
47 | ('PS', 'ar', 'دولة فلسطين', 'دولة فلسطين'), | |
48 | ('SB', 'en', 'Solomon Islands', 'SOLOMON ISLANDS'), | |
49 | ('TW', 'zh-CN', '台湾', '台湾'), | |
50 | ('TW', 'zh-TW', '台灣', '台灣'), | |
51 | ('CZ', 'cs', 'Česká Republika', 'CESKA REPUBLIKA'), | |
52 | ('CZ', 'sk', 'Česká Republika', 'CESKA REPUBLIKA'), | |
53 | ('DO', 'es', 'República Dominicana', 'REPUBLICA DOMINICANA'), | |
54 | ('GD', 'en', 'Grenada', 'GRENADA'), | |
55 | ('MD', 'ro', 'Republica Moldova', 'REPUBLICA MOLDOVA'), | |
56 | ('RU', 'ru', 'Россия', 'Россия'), | |
57 | ('SK', 'sk', 'Slovenská Republika', 'SLOVENSKA REPUBLIKA'), | |
58 | ('TZ', 'en', 'United Republic of Tanzania', 'UNITED REPUBLIC OF TANZANIA')"); | |
59 | ||
60 | /* vim:set et sw=4 sts=4 ts=4: */ | |
61 | ?> |