返回提交历史
Modified
config-vanilla.json
+3
-0
Modified
src/routes/webui.ts
+7
-0
Modified
src/services/configService.ts
+3
-0
Modified
src/services/configWatcherService.ts
+10
-0
Modified
static/webui/index.html
+1
-0
Modified
static/webui/script.js
+1
-1
XFEstudio/XFESpaceNinjaServer
feat: webui.defaultLanguage config (#3618)
Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/3618 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
eec217d0
代码差异
6 个文件
+25
-1
@@ -28,6 +28,9 @@
28
28
"skipTutorial": false,
29
29
"fullyStockedVendors": false,
30
30
"skipClanKeyCrafting": false,
31
"webui": {
32
"defaultLanguage": "en"
33
},
31
34
"unfaithfulBugFixes": {
32
35
"ignore1999LastRegionPlayed": false,
33
36
"fixXtraCheeseTimer": false,
@@ -3,6 +3,7 @@ import path from "path";
3
3
import fs from "fs/promises";
4
4
import { repoDir, rootDir } from "../helpers/pathHelper.ts";
5
5
import { args } from "../helpers/commandLineArguments.ts";
6
import { config } from "../services/configService.ts";
6
7
7
8
const baseDir = args.dev ? repoDir : rootDir;
8
9
@@ -64,6 +65,12 @@ webuiRouter.get("/favicon.ico", async (_req, res) => {
64
65
res.send(await fs.readFile(path.join(repoDir, "static/fixed_responses/favicon.ico")));
65
66
});
66
67
68
// Serve config
69
webuiRouter.get("/webui/config.js", (_req, res) => {
70
res.set("Content-Type", "text/javascript;charset=utf8");
71
res.send("webui_conf=" + JSON.stringify(config.webui ?? {}));
72
});
73
67
74
// Serve warframe-riven-info
68
75
webuiRouter.get("/webui/riven-tool/", async (_req, res) => {
69
76
res.set("Content-Type", "text/html;charset=utf8");
@@ -38,6 +38,9 @@ export interface IConfig {
38
38
skipTutorial?: boolean;
39
39
fullyStockedVendors?: boolean;
40
40
skipClanKeyCrafting?: boolean;
41
webui?: {
42
defaultLanguage?: string;
43
};
41
44
unfaithfulBugFixes?: {
42
45
ignore1999LastRegionPlayed?: boolean;
43
46
fixXtraCheeseTimer?: boolean;
@@ -101,6 +101,16 @@ export const validateConfig = (): void => {
101
101
}
102
102
}
103
103
}
104
if (config.webui?.defaultLanguage) {
105
if (
106
["en", "de", "es", "fr", "it", "ja", "ko", "pl", "pt", "ru", "tr", "uk", "zh", "tc", "th"].indexOf(
107
config.webui.defaultLanguage
108
) == -1
109
) {
110
config.webui.defaultLanguage = "en";
111
modified = true;
112
}
113
}
104
114
if (
105
115
config.worldState?.galleonOfGhouls &&
106
116
config.worldState.galleonOfGhouls != 1 &&
@@ -1711,6 +1711,7 @@
1711
1711
<script src="/webui/libs/whirlpool-js.min.js"></script>
1712
1712
<script src="/webui/libs/single.js"></script>
1713
1713
<script src="/webui/riven-tool/RivenParser.js"></script>
1714
<script src="/webui/config.js"></script>
1714
1715
<script src="/webui/script.js"></script>
1715
1716
<script src="/webui/libs/bootstrap.bundle.min.js"></script>
1716
1717
<script>
@@ -285,7 +285,7 @@ function setActiveLanguage(lang) {
285
285
document.documentElement.appendChild(script);
286
286
});
287
287
}
288
setActiveLanguage(localStorage.getItem("lang") ?? "en");
288
setActiveLanguage(localStorage.getItem("lang") ?? webui_conf.defaultLanguage ?? en);
289
289
290
290
function setLanguage(lang) {
291
291
setActiveLanguage(lang);