summary refs log tree commit diff
path: root/api/src/routes/guilds/index.ts
diff options
context:
space:
mode:
Diffstat (limited to 'api/src/routes/guilds/index.ts')
-rw-r--r--api/src/routes/guilds/index.ts46
1 files changed, 0 insertions, 46 deletions
diff --git a/api/src/routes/guilds/index.ts b/api/src/routes/guilds/index.ts
deleted file mode 100644
index 10721413..00000000
--- a/api/src/routes/guilds/index.ts
+++ /dev/null
@@ -1,46 +0,0 @@
-import { Router, Request, Response } from "express";
-import { Role, Guild, Snowflake, Config, getRights, Member, Channel, DiscordApiErrors, handleFile } from "@fosscord/util";
-import { route } from "@fosscord/api";
-import { ChannelModifySchema } from "../channels/#channel_id";
-
-const router: Router = Router();
-
-export interface GuildCreateSchema {
-	/**
-	 * @maxLength 100
-	 */
-	name: string;
-	region?: string;
-	icon?: string | null;
-	channels?: ChannelModifySchema[];
-	guild_template_code?: string;
-	system_channel_id?: string;
-	rules_channel_id?: string;
-}
-
-//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({ 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;