diff --git a/api/src/routes/guilds/#guild_id/index.ts b/api/src/routes/guilds/#guild_id/index.ts
index 87103caa..af9ea9d6 100644
--- a/api/src/routes/guilds/#guild_id/index.ts
+++ b/api/src/routes/guilds/#guild_id/index.ts
@@ -1,18 +1,18 @@
import { Request, Response, Router } from "express";
import {
- ChannelModel,
+ Channel,
emitEvent,
EmojiModel,
getPermission,
GuildDeleteEvent,
- GuildModel,
+ Guild,
GuildUpdateEvent,
InviteModel,
- MemberModel,
- MessageModel,
- RoleModel,
+ Member,
+ Message,
+ Role,
toObject,
- UserModel
+ User
} from "@fosscord/util";
import { HTTPError } from "lambert-server";
import { GuildUpdateSchema } from "../../../schema/Guild";
@@ -26,11 +26,8 @@ const router = Router();
router.get("/", async (req: Request, res: Response) => {
const { guild_id } = req.params;
- const guild = await GuildModel.findOne({ id: guild_id })
- .populate({ path: "joined_at", match: { id: req.user_id } })
- .exec();
-
- const member = await MemberModel.exists({ guild_id: guild_id, id: req.user_id });
+ const guild = await Guild.findOneOrFail({ id: guild_id }).populate({ path: "joined_at", match: { id: req.user_id } });
+ const member = await Member.exists({ guild_id: guild_id, id: req.user_id });
if (!member) throw new HTTPError("You are not a member of the guild you are trying to access", 401);
return res.json(guild);
@@ -48,11 +45,11 @@ router.patch("/", check(GuildUpdateSchema), async (req: Request, res: Response)
if (body.banner) body.banner = await handleFile(`/banners/${guild_id}`, body.banner);
if (body.splash) body.splash = await handleFile(`/splashes/${guild_id}`, body.splash);
- const guild = await GuildModel.findOneAndUpdate({ id: guild_id }, body, { new: true })
- .populate({ path: "joined_at", match: { id: req.user_id } })
- .exec();
-
- const data = toObject(guild);
+ const guild = await Guild.findOneOrFailAndUpdate({ id: guild_id }, body, { new: true }).populate({
+ path: "joined_at",
+ match: { id: req.user_id }
+ });
+ const data = guild;
emitEvent({ event: "GUILD_UPDATE", data: data, guild_id } as GuildUpdateEvent);
|