From 6b4e5cc3690bb71ca592a9f1426b9a4c65683e2c Mon Sep 17 00:00:00 2001 From: John Mizerek Date: Wed, 28 Jan 2026 16:53:34 -0800 Subject: [PATCH] Add cfsqltype hints for nullable time params in menu save Fixes save failure when MenuStartTime/MenuEndTime are null - Lucee couldn't determine the SQL type without explicit hints. Co-Authored-By: Claude Opus 4.5 --- api/menu/menus.cfm | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/api/menu/menus.cfm b/api/menu/menus.cfm index 68cf292..ea27c85 100644 --- a/api/menu/menus.cfm +++ b/api/menu/menus.cfm @@ -145,14 +145,14 @@ try { MenuSortOrder = :menuSortOrder WHERE MenuID = :menuID AND MenuBusinessID = :businessID ", { - menuID: menuID, - businessID: businessID, - menuName: menuName, - menuDescription: menuDescription, - menuDaysActive: menuDaysActive, - menuStartTime: menuStartTime, - menuEndTime: menuEndTime, - menuSortOrder: menuSortOrder + menuID: { value: menuID, cfsqltype: "cf_sql_integer" }, + businessID: { value: businessID, cfsqltype: "cf_sql_integer" }, + menuName: { value: menuName, cfsqltype: "cf_sql_varchar" }, + menuDescription: { value: menuDescription, cfsqltype: "cf_sql_varchar" }, + menuDaysActive: { value: menuDaysActive, cfsqltype: "cf_sql_integer" }, + menuStartTime: { value: menuStartTime, cfsqltype: "cf_sql_time", null: isNull(menuStartTime) }, + menuEndTime: { value: menuEndTime, cfsqltype: "cf_sql_time", null: isNull(menuEndTime) }, + menuSortOrder: { value: menuSortOrder, cfsqltype: "cf_sql_integer" } }, { datasource: "payfrit" }); response = { "OK": true, "MenuID": menuID, "ACTION": "updated" }; @@ -169,13 +169,13 @@ try { :menuSortOrder, 1, NOW() ) ", { - businessID: businessID, - menuName: menuName, - menuDescription: menuDescription, - menuDaysActive: menuDaysActive, - menuStartTime: menuStartTime, - menuEndTime: menuEndTime, - menuSortOrder: menuSortOrder + businessID: { value: businessID, cfsqltype: "cf_sql_integer" }, + menuName: { value: menuName, cfsqltype: "cf_sql_varchar" }, + menuDescription: { value: menuDescription, cfsqltype: "cf_sql_varchar" }, + menuDaysActive: { value: menuDaysActive, cfsqltype: "cf_sql_integer" }, + menuStartTime: { value: menuStartTime, cfsqltype: "cf_sql_time", null: isNull(menuStartTime) }, + menuEndTime: { value: menuEndTime, cfsqltype: "cf_sql_time", null: isNull(menuEndTime) }, + menuSortOrder: { value: menuSortOrder, cfsqltype: "cf_sql_integer" } }, { datasource: "payfrit" }); result = queryExecute("SELECT LAST_INSERT_ID() as newID", {}, { datasource: "payfrit" });