forked from OpenWF/SpaceNinjaServer
fix: login failure on u25 & u26 (#1967)
also updated the setGuildMotd response for the old UI before LongMOTD Reviewed-on: OpenWF/SpaceNinjaServer#1967 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
This commit is contained in:
parent
468efed71c
commit
8ae5fcfad0
@ -18,6 +18,7 @@ export const getAllianceController: RequestHandler = async (req, res) => {
|
|||||||
res.end();
|
res.end();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// POST request since U27
|
||||||
/*interface IGetAllianceRequest {
|
/*interface IGetAllianceRequest {
|
||||||
memberCount: number;
|
memberCount: number;
|
||||||
clanLeaderName: string;
|
clanLeaderName: string;
|
||||||
|
@ -101,30 +101,36 @@ const createLoginResponse = (myAddress: string, account: IDatabaseAccountJson, b
|
|||||||
id: account.id,
|
id: account.id,
|
||||||
DisplayName: account.DisplayName,
|
DisplayName: account.DisplayName,
|
||||||
CountryCode: account.CountryCode,
|
CountryCode: account.CountryCode,
|
||||||
ForceLogoutVersion: account.ForceLogoutVersion,
|
|
||||||
AmazonAuthToken: account.AmazonAuthToken,
|
AmazonAuthToken: account.AmazonAuthToken,
|
||||||
AmazonRefreshToken: account.AmazonRefreshToken,
|
AmazonRefreshToken: account.AmazonRefreshToken,
|
||||||
ConsentNeeded: account.ConsentNeeded,
|
ConsentNeeded: account.ConsentNeeded,
|
||||||
TrackedSettings: account.TrackedSettings,
|
TrackedSettings: account.TrackedSettings,
|
||||||
Nonce: account.Nonce,
|
Nonce: account.Nonce,
|
||||||
Groups: [],
|
|
||||||
IRC: config.myIrcAddresses ?? [myAddress],
|
IRC: config.myIrcAddresses ?? [myAddress],
|
||||||
NRS: config.NRS,
|
NRS: config.NRS,
|
||||||
BuildLabel: buildLabel
|
BuildLabel: buildLabel
|
||||||
};
|
};
|
||||||
|
if (version_compare(buildLabel, "2019.08.29.20.01") >= 0) {
|
||||||
|
// U25.7 and up
|
||||||
|
resp.ForceLogoutVersion = account.ForceLogoutVersion;
|
||||||
|
}
|
||||||
|
if (version_compare(buildLabel, "2019.10.31.22.42") >= 0) {
|
||||||
|
// U26 and up
|
||||||
|
resp.Groups = [];
|
||||||
|
}
|
||||||
if (version_compare(buildLabel, "2021.04.13.19.58") >= 0) {
|
if (version_compare(buildLabel, "2021.04.13.19.58") >= 0) {
|
||||||
resp.DTLS = 99;
|
resp.DTLS = 99;
|
||||||
if (version_compare(buildLabel, "2022.04.29.12.53") >= 0) {
|
}
|
||||||
resp.ClientType = account.ClientType;
|
if (version_compare(buildLabel, "2022.04.29.12.53") >= 0) {
|
||||||
if (version_compare(buildLabel, "2022.09.06.19.24") >= 0) {
|
resp.ClientType = account.ClientType;
|
||||||
resp.CrossPlatformAllowed = account.CrossPlatformAllowed;
|
}
|
||||||
resp.HUB = `https://${myAddress}/api/`;
|
if (version_compare(buildLabel, "2022.09.06.19.24") >= 0) {
|
||||||
resp.MatchmakingBuildId = buildConfig.matchmakingBuildId;
|
resp.CrossPlatformAllowed = account.CrossPlatformAllowed;
|
||||||
if (version_compare(buildLabel, "2023.04.25.23.40") >= 0) {
|
resp.HUB = `https://${myAddress}/api/`;
|
||||||
resp.platformCDNs = [`https://${myAddress}/`];
|
resp.MatchmakingBuildId = buildConfig.matchmakingBuildId;
|
||||||
}
|
}
|
||||||
}
|
if (version_compare(buildLabel, "2023.04.25.23.40") >= 0) {
|
||||||
}
|
resp.platformCDNs = [`https://${myAddress}/`];
|
||||||
}
|
}
|
||||||
return resp;
|
return resp;
|
||||||
};
|
};
|
||||||
|
@ -2,6 +2,7 @@ import { Alliance, Guild, GuildMember } from "@/src/models/guildModel";
|
|||||||
import { hasGuildPermissionEx } from "@/src/services/guildService";
|
import { hasGuildPermissionEx } from "@/src/services/guildService";
|
||||||
import { getInventory } from "@/src/services/inventoryService";
|
import { getInventory } from "@/src/services/inventoryService";
|
||||||
import { getAccountForRequest, getSuffixedName } from "@/src/services/loginService";
|
import { getAccountForRequest, getSuffixedName } from "@/src/services/loginService";
|
||||||
|
import { version_compare } from "@/src/services/worldStateService";
|
||||||
import { GuildPermission, ILongMOTD } from "@/src/types/guildTypes";
|
import { GuildPermission, ILongMOTD } from "@/src/types/guildTypes";
|
||||||
import { RequestHandler } from "express";
|
import { RequestHandler } from "express";
|
||||||
|
|
||||||
@ -55,5 +56,9 @@ export const setGuildMotdController: RequestHandler = async (req, res) => {
|
|||||||
await guild.save();
|
await guild.save();
|
||||||
}
|
}
|
||||||
|
|
||||||
res.json({ IsLongMOTD, MOTD });
|
if (!account.BuildLabel || version_compare(account.BuildLabel, "2020.03.24.20.24") > 0) {
|
||||||
|
res.json({ IsLongMOTD, MOTD });
|
||||||
|
} else {
|
||||||
|
res.send(MOTD).end();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
@ -170,6 +170,7 @@ apiRouter.get("/deleteSession.php", deleteSessionController);
|
|||||||
apiRouter.get("/divvyAllianceVault.php", divvyAllianceVaultController);
|
apiRouter.get("/divvyAllianceVault.php", divvyAllianceVaultController);
|
||||||
apiRouter.get("/dojo", dojoController);
|
apiRouter.get("/dojo", dojoController);
|
||||||
apiRouter.get("/drones.php", dronesController);
|
apiRouter.get("/drones.php", dronesController);
|
||||||
|
apiRouter.get("/getAlliance.php", getAllianceController);
|
||||||
apiRouter.get("/getDailyDealStockLevels.php", getDailyDealStockLevelsController);
|
apiRouter.get("/getDailyDealStockLevels.php", getDailyDealStockLevelsController);
|
||||||
apiRouter.get("/getFriends.php", getFriendsController);
|
apiRouter.get("/getFriends.php", getFriendsController);
|
||||||
apiRouter.get("/getGuild.php", getGuildController);
|
apiRouter.get("/getGuild.php", getGuildController);
|
||||||
@ -308,6 +309,7 @@ apiRouter.post("/trainingResult.php", trainingResultController);
|
|||||||
apiRouter.post("/unlockShipFeature.php", unlockShipFeatureController);
|
apiRouter.post("/unlockShipFeature.php", unlockShipFeatureController);
|
||||||
apiRouter.post("/updateAlignment.php", updateAlignmentController);
|
apiRouter.post("/updateAlignment.php", updateAlignmentController);
|
||||||
apiRouter.post("/updateChallengeProgress.php", updateChallengeProgressController);
|
apiRouter.post("/updateChallengeProgress.php", updateChallengeProgressController);
|
||||||
|
apiRouter.post("/updateInventory.php", missionInventoryUpdateController); // U26 and below
|
||||||
apiRouter.post("/updateNodeIntros.php", genericUpdateController);
|
apiRouter.post("/updateNodeIntros.php", genericUpdateController);
|
||||||
apiRouter.post("/updateQuest.php", updateQuestController);
|
apiRouter.post("/updateQuest.php", updateQuestController);
|
||||||
apiRouter.post("/updateSession.php", updateSessionPostController);
|
apiRouter.post("/updateSession.php", updateSessionPostController);
|
||||||
|
@ -5,7 +5,7 @@ export interface IAccountAndLoginResponseCommons {
|
|||||||
CountryCode: string;
|
CountryCode: string;
|
||||||
ClientType?: string;
|
ClientType?: string;
|
||||||
CrossPlatformAllowed?: boolean;
|
CrossPlatformAllowed?: boolean;
|
||||||
ForceLogoutVersion: number;
|
ForceLogoutVersion?: number;
|
||||||
AmazonAuthToken?: string;
|
AmazonAuthToken?: string;
|
||||||
AmazonRefreshToken?: string;
|
AmazonRefreshToken?: string;
|
||||||
ConsentNeeded: boolean;
|
ConsentNeeded: boolean;
|
||||||
@ -45,7 +45,7 @@ export interface ILoginRequest {
|
|||||||
|
|
||||||
export interface ILoginResponse extends IAccountAndLoginResponseCommons {
|
export interface ILoginResponse extends IAccountAndLoginResponseCommons {
|
||||||
id: string;
|
id: string;
|
||||||
Groups: IGroup[];
|
Groups?: IGroup[];
|
||||||
BuildLabel: string;
|
BuildLabel: string;
|
||||||
MatchmakingBuildId?: string;
|
MatchmakingBuildId?: string;
|
||||||
platformCDNs?: string[];
|
platformCDNs?: string[];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user