Fix zh-CN GeoIP locale issue

This commit is contained in:
pop4959 2020-03-05 01:08:55 -08:00
parent c10b39c1c7
commit ffc83343fe

View File

@ -155,6 +155,10 @@ public class EssentialsGeoIPPlayerListener implements Listener, IConf {
if (config.getBoolean("enable-locale")) { if (config.getBoolean("enable-locale")) {
// Get geolocation based on Essentials' locale. If the locale is not avaliable, use "en". // Get geolocation based on Essentials' locale. If the locale is not avaliable, use "en".
String locale = ess.getI18n().getCurrentLocale().toString().replace('_', '-'); String locale = ess.getI18n().getCurrentLocale().toString().replace('_', '-');
// This fixes an inconsistency where Essentials uses "zh" but MaxMind expects "zh-CN".
if ("zh".equalsIgnoreCase(locale)) {
locale = "zh-CN";
}
mmreader = new DatabaseReader.Builder(databaseFile).locales(Arrays.asList(locale,"en")).build(); mmreader = new DatabaseReader.Builder(databaseFile).locales(Arrays.asList(locale,"en")).build();
} else { } else {
mmreader = new DatabaseReader.Builder(databaseFile).build(); mmreader = new DatabaseReader.Builder(databaseFile).build();