add getSuffixedName

This commit is contained in:
Sainan 2025-03-09 12:55:24 +01:00
parent 92d53e1c00
commit 2f24b61825
3 changed files with 22 additions and 0 deletions

12
package-lock.json generated
View File

@ -10,6 +10,7 @@
"license": "GNU", "license": "GNU",
"dependencies": { "dependencies": {
"copyfiles": "^2.4.1", "copyfiles": "^2.4.1",
"crc-32": "^1.2.2",
"express": "^5", "express": "^5",
"mongoose": "^8.11.0", "mongoose": "^8.11.0",
"warframe-public-export-plus": "^0.5.41", "warframe-public-export-plus": "^0.5.41",
@ -1249,6 +1250,17 @@
"integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
"license": "MIT" "license": "MIT"
}, },
"node_modules/crc-32": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz",
"integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==",
"bin": {
"crc32": "bin/crc32.njs"
},
"engines": {
"node": ">=0.8"
}
},
"node_modules/create-require": { "node_modules/create-require": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz",

View File

@ -15,6 +15,7 @@
"license": "GNU", "license": "GNU",
"dependencies": { "dependencies": {
"copyfiles": "^2.4.1", "copyfiles": "^2.4.1",
"crc-32": "^1.2.2",
"express": "^5", "express": "^5",
"mongoose": "^8.11.0", "mongoose": "^8.11.0",
"warframe-public-export-plus": "^0.5.41", "warframe-public-export-plus": "^0.5.41",

View File

@ -8,6 +8,7 @@ import { PersonalRooms } from "@/src/models/personalRoomsModel";
import { Request } from "express"; import { Request } from "express";
import { config } from "@/src/services/configService"; import { config } from "@/src/services/configService";
import { createStats } from "@/src/services/statsService"; import { createStats } from "@/src/services/statsService";
import crc32 from "crc-32";
export const isCorrectPassword = (requestPassword: string, databasePassword: string): boolean => { export const isCorrectPassword = (requestPassword: string, databasePassword: string): boolean => {
return requestPassword === databasePassword; return requestPassword === databasePassword;
@ -108,3 +109,11 @@ export const isAdministrator = (account: TAccountDocument): boolean => {
} }
return !!config.administratorNames.find(x => x == account.DisplayName); return !!config.administratorNames.find(x => x == account.DisplayName);
}; };
const platform_magics = [753, 639, 247, 37, 60];
export const getSuffixedName = (account: TAccountDocument): string => {
const name = account.DisplayName;
const platformId = 0;
const suffix = ((crc32.str(name.toLowerCase() + "595") >>> 0) + platform_magics[platformId]) % 1000;
return name + "#" + suffix.toString().padStart(3, "0");
};