diff --git a/api/assets/checkLocale.js b/api/assets/checkLocale.js
new file mode 100644
index 00000000..016d66c8
--- /dev/null
+++ b/api/assets/checkLocale.js
@@ -0,0 +1,47 @@
+ const localStorage = window.localStorage;
+ // TODO: remote auth
+ // window.GLOBAL_ENV.REMOTE_AUTH_ENDPOINT = window.GLOBAL_ENV.GATEWAY_ENDPOINT.replace(/wss?:/, "");
+ localStorage.setItem("gatewayURL", window.GLOBAL_ENV.GATEWAY_ENDPOINT);
+ localStorage.setItem(
+ "DeveloperOptionsStore",
+ `{"trace":false,"canary":false,"logGatewayEvents":true,"logOverlayEvents":true,"logAnalyticsEvents":true,"sourceMapsEnabled":false,"axeEnabled":false}`
+ );
+
+ const supportedLocales = [
+ "bg",
+ "cs",
+ "da",
+ "de",
+ "el",
+ "en-GB",
+ "es-ES",
+ "fi",
+ "fr",
+ "hi",
+ "hr",
+ "hu",
+ "it",
+ "ja",
+ "ko",
+ "lt",
+ "nl",
+ "no",
+ "pl",
+ "pt-BR",
+ "ro",
+ "ru",
+ "sv-SE",
+ "th",
+ "tr",
+ "uk",
+ "vi",
+ "zh-CN",
+ "zh-TW"
+ ];
+
+ const settings = JSON.parse(localStorage.getItem("UserSettingsStore"));
+ if (settings && !supportedLocales.includes(settings.locale)) {
+ // fix client locale wrong and client not loading at all
+ settings.locale = "en-US";
+ localStorage.setItem("UserSettingsStore", JSON.stringify(settings));
+ }
\ No newline at end of file
diff --git a/api/assets/dff87c953f43b561d71fbcfe8a93a79a.png b/api/assets/dff87c953f43b561d71fbcfe8a93a79a.png
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/api/assets/dff87c953f43b561d71fbcfe8a93a79a.png
diff --git a/api/assets/preload-plugins/autoRegister.js b/api/assets/preload-plugins/autoRegister.js
new file mode 100644
index 00000000..bb0b903d
--- /dev/null
+++ b/api/assets/preload-plugins/autoRegister.js
@@ -0,0 +1,62 @@
+// Auto register guest account:
+const prefix = [
+ "mysterious",
+ "adventurous",
+ "courageous",
+ "precious",
+ "cynical",
+ "flamer ",
+ "despicable",
+ "suspicious",
+ "gorgeous",
+ "impeccable",
+ "lovely",
+ "stunning",
+ "keyed",
+ "phoned",
+ "glorious",
+ "amazing",
+ "strange",
+ "arcane"
+];
+const suffix = [
+ "Anonymous",
+ "Boy",
+ "Lurker",
+ "Keyhitter",
+ "User",
+ "Enjoyer",
+ "Hunk",
+ "Coolstar",
+ "Wrestling",
+ "TylerTheCreator",
+ "Ad",
+ "Gamer",
+ "Games",
+ "Programmer"
+];
+
+Array.prototype.random = function () {
+ return this[Math.floor(Math.random() * this.length)];
+};
+
+function _generateName() {
+ return `${prefix.random()}${suffix.random()}`;
+}
+
+var token = JSON.parse(localStorage.getItem("token"));
+if (!token && location.pathname !== "/login" && location.pathname !== "/register") {
+ fetch(`${window.GLOBAL_ENV.API_ENDPOINT}/auth/register`, {
+ method: "POST",
+ headers: { "content-type": "application/json" },
+ body: JSON.stringify({ username: `${_generateName()}`, consent: true }) //${Date.now().toString().slice(-4)}
+ })
+ .then((x) => x.json())
+ .then((x) => {
+ localStorage.setItem("token", `"${x.token}"`);
+ if (!window.localStorage) {
+ // client already loaded -> need to reload to apply the newly registered user token
+ location.reload();
+ }
+ });
+}
diff --git a/api/assets/user.css b/api/assets/user.css
new file mode 100644
index 00000000..a7e5c4f3
--- /dev/null
+++ b/api/assets/user.css
@@ -0,0 +1 @@
+/* Your custom CSS goes here, enjoy! */
\ No newline at end of file
|