summary refs log tree commit diff
path: root/src/api/routes/guilds/#guild_id/templates.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/api/routes/guilds/#guild_id/templates.ts')
-rw-r--r--src/api/routes/guilds/#guild_id/templates.ts132
1 files changed, 83 insertions, 49 deletions
diff --git a/src/api/routes/guilds/#guild_id/templates.ts b/src/api/routes/guilds/#guild_id/templates.ts
index 628321f5..3b5eddaa 100644
--- a/src/api/routes/guilds/#guild_id/templates.ts
+++ b/src/api/routes/guilds/#guild_id/templates.ts
@@ -20,63 +20,97 @@ const TemplateGuildProjection: (keyof Guild)[] = [
 	"afk_channel_id",
 	"system_channel_id",
 	"system_channel_flags",
-	"icon"
+	"icon",
 ];
 
 router.get("/", route({}), async (req: Request, res: Response) => {
 	const { guild_id } = req.params;
 
-	var templates = await Template.find({ where: { source_guild_id: guild_id } });
-
-	return res.json(templates);
-});
-
-router.post("/", route({ body: "TemplateCreateSchema", permission: "MANAGE_GUILD" }), async (req: Request, res: Response) => {
-	const { guild_id } = req.params;
-	const guild = await Guild.findOneOrFail({ where: { id: guild_id }, select: TemplateGuildProjection });
-	const exists = await Template.findOneOrFail({ where: { id: guild_id } }).catch((e) => { });
-	if (exists) throw new HTTPError("Template already exists", 400);
-
-	const template = await Template.create({
-		...req.body,
-		code: generateCode(),
-		creator_id: req.user_id,
-		created_at: new Date(),
-		updated_at: new Date(),
-		source_guild_id: guild_id,
-		serialized_source_guild: guild
-	}).save();
-
-	res.json(template);
-});
-
-router.delete("/:code", route({ permission: "MANAGE_GUILD" }), async (req: Request, res: Response) => {
-	const { code, guild_id } = req.params;
-
-	const template = await Template.delete({
-		code,
-		source_guild_id: guild_id
+	var templates = await Template.find({
+		where: { source_guild_id: guild_id },
 	});
 
-	res.json(template);
-});
-
-router.put("/:code", route({ permission: "MANAGE_GUILD" }), async (req: Request, res: Response) => {
-	const { code, guild_id } = req.params;
-	const guild = await Guild.findOneOrFail({ where: { id: guild_id }, select: TemplateGuildProjection });
-
-	const template = await Template.create({ code, serialized_source_guild: guild }).save();
-
-	res.json(template);
+	return res.json(templates);
 });
 
-router.patch("/:code", route({ body: "TemplateModifySchema", permission: "MANAGE_GUILD" }), async (req: Request, res: Response) => {
-	const { code, guild_id } = req.params;
-	const { name, description } = req.body;
-
-	const template = await Template.create({ code, name: name, description: description, source_guild_id: guild_id }).save();
-
-	res.json(template);
-});
+router.post(
+	"/",
+	route({ body: "TemplateCreateSchema", permission: "MANAGE_GUILD" }),
+	async (req: Request, res: Response) => {
+		const { guild_id } = req.params;
+		const guild = await Guild.findOneOrFail({
+			where: { id: guild_id },
+			select: TemplateGuildProjection,
+		});
+		const exists = await Template.findOneOrFail({
+			where: { id: guild_id },
+		}).catch((e) => {});
+		if (exists) throw new HTTPError("Template already exists", 400);
+
+		const template = await Template.create({
+			...req.body,
+			code: generateCode(),
+			creator_id: req.user_id,
+			created_at: new Date(),
+			updated_at: new Date(),
+			source_guild_id: guild_id,
+			serialized_source_guild: guild,
+		}).save();
+
+		res.json(template);
+	},
+);
+
+router.delete(
+	"/:code",
+	route({ permission: "MANAGE_GUILD" }),
+	async (req: Request, res: Response) => {
+		const { code, guild_id } = req.params;
+
+		const template = await Template.delete({
+			code,
+			source_guild_id: guild_id,
+		});
+
+		res.json(template);
+	},
+);
+
+router.put(
+	"/:code",
+	route({ permission: "MANAGE_GUILD" }),
+	async (req: Request, res: Response) => {
+		const { code, guild_id } = req.params;
+		const guild = await Guild.findOneOrFail({
+			where: { id: guild_id },
+			select: TemplateGuildProjection,
+		});
+
+		const template = await Template.create({
+			code,
+			serialized_source_guild: guild,
+		}).save();
+
+		res.json(template);
+	},
+);
+
+router.patch(
+	"/:code",
+	route({ body: "TemplateModifySchema", permission: "MANAGE_GUILD" }),
+	async (req: Request, res: Response) => {
+		const { code, guild_id } = req.params;
+		const { name, description } = req.body;
+
+		const template = await Template.create({
+			code,
+			name: name,
+			description: description,
+			source_guild_id: guild_id,
+		}).save();
+
+		res.json(template);
+	},
+);
 
 export default router;