v2.0.3 #133

Merged
PxlLoewe merged 8 commits from staging into release 2025-07-29 23:33:11 +00:00
3 changed files with 58 additions and 2 deletions
Showing only changes of commit 1bdccc46fe - Show all commits

View File

@@ -0,0 +1,32 @@
import { prisma } from "@repo/db";
export const getUserPenaltys = async (userId: string) => {
const openTimeban = await prisma.penalty.findMany({
where: {
userId: userId,
until: {
gte: new Date(),
},
suspended: false,
type: "TIME_BAN",
},
include: {
CreatedUser: true,
},
});
const openBans = await prisma.penalty.findMany({
where: {
userId: userId,
suspended: false,
type: "BAN",
},
include: {
CreatedUser: true,
},
});
return {
openTimeban,
openBans,
};
};

View File

@@ -3,6 +3,7 @@ import { addRolesToMember, removeRolesFromMember, renameMember } from "modules/d
import { getNextDateWithTime } from "@repo/shared-components";
import { DISCORD_ROLES } from "@repo/db";
import { Server, Socket } from "socket.io";
import { getUserPenaltys } from "helper";
export const handleConnectDispatch =
(socket: Socket, io: Server) =>
@@ -28,8 +29,17 @@ export const handleConnectDispatch =
return;
}
if (!user.permissions?.includes("DISPO")) {
socket.emit("error", "You do not have permission to connect to the dispatch server.");
const userPenaltys = await getUserPenaltys(user.id);
if (
userPenaltys.openTimeban.length > 0 ||
user.isBanned ||
userPenaltys.openBans.length > 0
) {
socket.emit("connect-message", {
message: "Du hast eine aktive Strafe und kannst dich deshalb nicht verbinden.",
});
socket.disconnect();
return;
}

View File

@@ -3,6 +3,7 @@ import { addRolesToMember, removeRolesFromMember, renameMember } from "modules/d
import { getNextDateWithTime } from "@repo/shared-components";
import { DISCORD_ROLES } from "@repo/db";
import { Server, Socket } from "socket.io";
import { getUserPenaltys } from "helper";
export const handleConnectPilot =
(socket: Socket, io: Server) =>
@@ -34,6 +35,19 @@ export const handleConnectPilot =
socket.disconnect();
return;
}
const userPenaltys = await getUserPenaltys(userId);
if (
userPenaltys.openTimeban.length > 0 ||
user.isBanned ||
userPenaltys.openBans.length > 0
) {
socket.emit("connect-message", {
message: "Du hast eine aktive Strafe und kannst dich deshalb nicht verbinden.",
});
socket.disconnect();
return;
}
if (!user) return Error("User not found");