Custom instances per country

This commit is contained in:
Thomas 2020-10-14 10:57:28 +02:00
parent ca69a6e86d
commit 2f773b2f0f
1 changed files with 40 additions and 1 deletions

View File

@ -239,7 +239,7 @@ public class Helper {
final SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
String acad;
if (BuildConfig.full_instances) {
return sharedpreferences.getString(Helper.PREF_INSTANCE, "peertube.social");
return sharedpreferences.getString(Helper.PREF_INSTANCE, getDefaultInstance());
} else {
acad = sharedpreferences.getString(Helper.PREF_INSTANCE, "tube.ac-lyon.fr");
if (acad == null) {
@ -253,6 +253,45 @@ public class Helper {
}
}
private static String getDefaultInstance() {
String lang = Locale.getDefault().getLanguage();
if (lang.contains("-")) {
if (!lang.split("-")[0].trim().toLowerCase().startsWith("zh")) {
lang = lang.split("-")[0];
if(lang.split("-")[1].toLowerCase().contains("be")){
lang = "be";
}
else if(lang.split("-")[1].toLowerCase().contains("gb")){
lang = "gb";
}
} else {
lang = lang.split("-")[0] + "-" + lang.split("-")[1].toUpperCase();
}
}
switch (lang){
case "it":
return "peertube.uno";
case "be":
return "peertube.be";
case "fr":
return "video.liberta.vip";
case "de":
return "peertube.at";
case "ru":
return "peertube.su";
case "gb":
return "peertube.co.uk";
case "da":
case "sv":
case "nb":
case "fi":
case "is":
return "peertube.dk";
default:
return "peertube.social";
}
}
/**
* Convert a date in String -> format yyyy-MM-dd HH:mm:ss
*