implemented otp login
Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
@@ -12,6 +12,7 @@ import java.io.ByteArrayOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.net.URL;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import org.json.JSONObject;
|
||||
|
||||
public class Translations extends PathHandler implements Translator {
|
||||
@@ -34,7 +35,7 @@ public class Translations extends PathHandler implements Translator {
|
||||
}
|
||||
|
||||
private JSONObject loadTranslations(String lang) throws IOException {
|
||||
LOG.log(WARNING,"loadTranslations({0} not implemented!",lang);
|
||||
LOG.log(WARNING,"loadTranslations({0}) not implemented!",lang);
|
||||
var filename = lang + ".json";
|
||||
URL url = getClass().getClassLoader().getResource(filename);
|
||||
if (url == null) return new JSONObject();
|
||||
@@ -50,10 +51,19 @@ public class Translations extends PathHandler implements Translator {
|
||||
}
|
||||
|
||||
@Override
|
||||
public String translate(String language, String text) {
|
||||
public String translate(String language, String text, Map<String,String> fills) {
|
||||
try {
|
||||
var translations = getTranslations(language);
|
||||
return translations.has(text) ? translations.getString(text) : text;
|
||||
var keys = text.split("\\.");
|
||||
Object current = translations;
|
||||
for (var key : keys){
|
||||
if (current instanceof JSONObject json && json.has(key)) {
|
||||
current = json.get(key);
|
||||
} else current = null;
|
||||
}
|
||||
var translated = current instanceof String translation ? translation : text;
|
||||
for (var entry : fills.entrySet()) translated = translated.replaceAll("\\{"+entry.getKey()+"}",entry.getValue());
|
||||
return translated;
|
||||
} catch (IOException e) {
|
||||
return text;
|
||||
}
|
||||
|
||||
@@ -58,6 +58,7 @@
|
||||
"email": "E-Mail",
|
||||
"failed": "fehlgeschlagen",
|
||||
"foreign_id": "externe Kennung",
|
||||
"go_to_url_to_reset_password": "Um ein neues Passwort zu erhalten, öffnen Sie bitte den folgenden Link: {url}",
|
||||
"id": "Id",
|
||||
"impersonate": "zu Nutzer wechseln",
|
||||
"IMPERSONATE": "NUTZER WECHSELN",
|
||||
@@ -88,6 +89,7 @@
|
||||
"update": "aktualisieren",
|
||||
"UPDATE_USERS" : "Nutzer aktualisieren",
|
||||
"user_module" : "Umbrella User-Verwaltung",
|
||||
"your_password_reset_token" : "Ihr Token zum Erstellen eines neuen Passworts",
|
||||
"your_profile": "dein Profil"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user