Catch Blocks

This commit is contained in:
PxlLoewe
2026-02-01 00:01:06 +01:00
parent 829d6d8cde
commit a60cd67c44
5 changed files with 92 additions and 65 deletions

View File

@@ -142,6 +142,7 @@ const removeConnectedAircrafts = async () => {
}); });
}; };
const removePermissionsForBannedUsers = async () => { const removePermissionsForBannedUsers = async () => {
try {
const removePermissionsPenaltys = await prisma.penalty.findMany({ const removePermissionsPenaltys = await prisma.penalty.findMany({
where: { where: {
removePermissionApplied: false, removePermissionApplied: false,
@@ -210,6 +211,9 @@ const removePermissionsForBannedUsers = async () => {
data: { addPermissionApplied: true }, data: { addPermissionApplied: true },
}); });
} }
} catch (error) {
console.error("Error removing permissions for banned users:", error);
}
}; };
removePermissionsForBannedUsers(); removePermissionsForBannedUsers();

View File

@@ -66,6 +66,8 @@ export const setUserStandardNamePermissions = async ({
const publicUser = getPublicUser(user); const publicUser = getPublicUser(user);
const member = await getMember(memberId); const member = await getMember(memberId);
if (!member) throw new Error("Member not found");
await member.setNickname(`${publicUser.fullName} - ${user.publicId}`); await member.setNickname(`${publicUser.fullName} - ${user.publicId}`);
const isPilot = user.permissions.includes("PILOT"); const isPilot = user.permissions.includes("PILOT");
const isDispatcher = user.permissions.includes("DISPO"); const isDispatcher = user.permissions.includes("DISPO");
@@ -79,10 +81,14 @@ export const setUserStandardNamePermissions = async ({
}; };
router.post("/set-standard-name", async (req, res) => { router.post("/set-standard-name", async (req, res) => {
try {
const { memberId, userId } = req.body; const { memberId, userId } = req.body;
await setUserStandardNamePermissions({ memberId, userId }); await setUserStandardNamePermissions({ memberId, userId });
res.status(200).json({ message: "Standard name and permissions set" }); res.status(200).json({ message: "Standard name and permissions set" });
} catch (error) {
res.status(500).json({ error: (error as unknown as Error).message });
}
}); });
export default router; export default router;

View File

@@ -20,12 +20,12 @@ export const getMember = async (memberId: string) => {
try { try {
let member = guild.members.cache.get(memberId); let member = guild.members.cache.get(memberId);
if (!member) { if (!member) {
member = await guild.members.fetch(memberId); member = await guild.members.fetch(memberId).catch((e) => undefined);
} }
return member; return member;
} catch (error) { } catch (error) {
console.error("Error fetching member:", error); console.error("Error fetching member:", error);
throw new Error("Member not found"); return null;
} }
}; };
@@ -37,6 +37,10 @@ router.post("/rename", async (req: Request, res: Response) => {
} }
try { try {
const member = await getMember(memberId); const member = await getMember(memberId);
if (!member) {
res.status(404).json({ error: "Member not found" });
return;
}
await member.setNickname(newName); await member.setNickname(newName);
console.log(`Member ${member.id} renamed to ${newName}`); console.log(`Member ${member.id} renamed to ${newName}`);
res.status(200).json({ message: "Member renamed successfully" }); res.status(200).json({ message: "Member renamed successfully" });
@@ -52,6 +56,9 @@ export const changeMemberRoles = async (
action: "add" | "remove", action: "add" | "remove",
) => { ) => {
const member = await getMember(memberId); const member = await getMember(memberId);
if (!member) {
throw new Error("Member not found");
}
const currentRoleIds = member.roles.cache.map((role) => role.id); const currentRoleIds = member.roles.cache.map((role) => role.id);
const filteredRoleIds = const filteredRoleIds =

View File

@@ -663,10 +663,15 @@ export const AdminForm = ({
> >
<Button <Button
onClick={async () => { onClick={async () => {
await setStandardName({ const res = (await setStandardName({
memberId: discordAccount.discordId, memberId: discordAccount.discordId,
userId: user.id, userId: user.id,
}); })) as unknown as { error?: string };
console.log(res);
if (res?.error) {
toast.error(res.error);
return;
}
toast.success("Standard Name wurde gesetzt!", { toast.success("Standard Name wurde gesetzt!", {
style: { style: {
background: "var(--color-base-100)", background: "var(--color-base-100)",

View File

@@ -1,5 +1,5 @@
"use server"; "use server";
import axios from "axios"; import axios, { AxiosError } from "axios";
const discordAxiosClient = axios.create({ const discordAxiosClient = axios.create({
baseURL: process.env.CORE_SERVER_URL || "http://localhost:3005", baseURL: process.env.CORE_SERVER_URL || "http://localhost:3005",
@@ -55,12 +55,17 @@ export const setStandardName = async ({
memberId: string; memberId: string;
userId: string; userId: string;
}) => { }) => {
discordAxiosClient return discordAxiosClient
.post("/helper/set-standard-name", { .post("/helper/set-standard-name", {
memberId, memberId,
userId, userId,
}) })
.catch((error) => { .catch((error) => {
console.error("Error removing roles from member:", error); console.log("Error removing roles from member:", error);
return {
error:
((error as unknown as AxiosError).response?.data as unknown as { error: string }).error ||
(error as unknown as AxiosError).message,
};
}); });
}; };