XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFESpaceNinjaServer

A simple server for a small space ninja game

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFESpaceNinjaServer

feat: handle leaderboard request from u10 (#3421)

Closes #3418 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/3421 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>

a2c2ddca
Sainan <63328889+Sainan@users.noreply.github.com>
提交于

代码差异

2 个文件 +23 -1
Modified src/controllers/stats/leaderboardController.ts +17 -0
@@ -15,6 +15,23 @@ export const leaderboardPostController: RequestHandler = async (req, res) => {
15 15 });
16 16 };
17 17
18 export const leaderboardU10Controller: RequestHandler = async (req, res) => {
19 let guildTier: number | undefined;
20 if ("guildTier" in req.query) {
21 guildTier = parseInt(req.query.guildTier as string);
22 }
23 res.json({
24 results: await getLeaderboard(
25 req.query.field as string,
26 parseInt(req.query.before as string),
27 parseInt(req.query.after as string),
28 req.query.pivotId as string | undefined,
29 req.query.guildId as string | undefined,
30 guildTier
31 )
32 });
33 };
34
18 35 export const leaderboardGetController: RequestHandler = async (req, res) => {
19 36 const payload: ILeaderboardRequest = {
20 37 field: "archived." + String(req.query.field),
Modified src/routes/stats.ts +6 -1
@@ -1,13 +1,18 @@
1 1 import express from "express";
2 2 import { viewController } from "../controllers/stats/viewController.ts";
3 3 import { uploadController } from "../controllers/stats/uploadController.ts";
4 import { leaderboardPostController, leaderboardGetController } from "../controllers/stats/leaderboardController.ts";
4 import {
5 leaderboardPostController,
6 leaderboardGetController,
7 leaderboardU10Controller
8 } from "../controllers/stats/leaderboardController.ts";
5 9
6 10 const statsRouter = express.Router();
7 11
8 12 statsRouter.get("/view.php", viewController);
9 13 statsRouter.get("/profileStats.php", viewController);
10 14 statsRouter.get("/leaderboard.php", leaderboardGetController);
15 statsRouter.get("/leaderboardWeekly.php", leaderboardU10Controller);
11 16 statsRouter.post("/upload.php", uploadController);
12 17 statsRouter.post("/view.php", viewController);
13 18 statsRouter.post("/leaderboardWeekly.php", leaderboardPostController);