summary refs log tree commit diff
path: root/src/api/routes/guilds/index.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/api/routes/guilds/index.ts')
-rw-r--r--src/api/routes/guilds/index.ts61
1 files changed, 38 insertions, 23 deletions
diff --git a/src/api/routes/guilds/index.ts b/src/api/routes/guilds/index.ts
index 0807cb96..69575aea 100644
--- a/src/api/routes/guilds/index.ts
+++ b/src/api/routes/guilds/index.ts
@@ -1,32 +1,47 @@
 import { Router, Request, Response } from "express";
-import { Role, Guild, Config, getRights, Member, DiscordApiErrors, GuildCreateSchema } from "@fosscord/util";
+import {
+	Role,
+	Guild,
+	Config,
+	getRights,
+	Member,
+	DiscordApiErrors,
+	GuildCreateSchema,
+} from "@fosscord/util";
 import { route } from "@fosscord/api";
 
 const router: Router = Router();
 
 //TODO: create default channel
 
-router.post("/", route({ body: "GuildCreateSchema", right: "CREATE_GUILDS" }), async (req: Request, res: Response) => {
-	const body = req.body as GuildCreateSchema;
-
-	const { maxGuilds } = Config.get().limits.user;
-	const guild_count = await Member.count({ where: { id: req.user_id } });
-	const rights = await getRights(req.user_id);
-	if ((guild_count >= maxGuilds) && !rights.has("MANAGE_GUILDS")) {
-		throw DiscordApiErrors.MAXIMUM_GUILDS.withParams(maxGuilds);
-	}
-
-	const guild = await Guild.createGuild({ ...body, owner_id: req.user_id });
-
-	const { autoJoin } = Config.get().guild;
-	if (autoJoin.enabled && !autoJoin.guilds?.length) {
-		// @ts-ignore
-		await Config.set({ guild: { autoJoin: { guilds: [guild.id] } } });
-	}
-
-	await Member.addToGuild(req.user_id, guild.id);
-
-	res.status(201).json({ id: guild.id });
-});
+router.post(
+	"/",
+	route({ body: "GuildCreateSchema", right: "CREATE_GUILDS" }),
+	async (req: Request, res: Response) => {
+		const body = req.body as GuildCreateSchema;
+
+		const { maxGuilds } = Config.get().limits.user;
+		const guild_count = await Member.count({ where: { id: req.user_id } });
+		const rights = await getRights(req.user_id);
+		if (guild_count >= maxGuilds && !rights.has("MANAGE_GUILDS")) {
+			throw DiscordApiErrors.MAXIMUM_GUILDS.withParams(maxGuilds);
+		}
+
+		const guild = await Guild.createGuild({
+			...body,
+			owner_id: req.user_id,
+		});
+
+		const { autoJoin } = Config.get().guild;
+		if (autoJoin.enabled && !autoJoin.guilds?.length) {
+			// @ts-ignore
+			await Config.set({ guild: { autoJoin: { guilds: [guild.id] } } });
+		}
+
+		await Member.addToGuild(req.user_id, guild.id);
+
+		res.status(201).json({ id: guild.id });
+	},
+);
 
 export default router;