From 8204ec4a1a6f4f0e8ab0bea17f7a5709b4db5e9d Mon Sep 17 00:00:00 2001 From: Blake Matthes Date: Thu, 6 Mar 2025 19:36:40 -0600 Subject: [PATCH] fix(modules): added in a type check to make sure a boolean is sent over --- .../server/controller/module/updateModule.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/server/services/server/controller/module/updateModule.ts b/server/services/server/controller/module/updateModule.ts index 322e64a..8aea8e4 100644 --- a/server/services/server/controller/module/updateModule.ts +++ b/server/services/server/controller/module/updateModule.ts @@ -3,14 +3,22 @@ import {db} from "../../../../../database/dbclient.js"; import {modules} from "../../../../../database/schema/modules.js"; import {log} from "../../../logger/logger.js"; -export const updateModule = async (data: any, moduleID: string) => { +type Data = { + active: boolean; +}; +export const updateModule = async (data: Data, moduleID: string) => { log.info("Module being updated"); let module; + if (typeof data.active !== "boolean") { + log.error("Invalid data type: 'active' must be a boolean"); + throw new Error("'active' must be a boolean"); + } + try { module = await db .update(modules) - .set({active: data?.active}) + .set({active: data.active}) .where(eq(modules.module_id, moduleID)) .returning({name: modules.name}); //.where(sql`${userRole} = ANY(roles)`);