diff options
author | Tim <contact@bytim.eu> | 2025-05-25 16:00:21 +0200 |
---|---|---|
committer | Tim <contact@bytim.eu> | 2025-05-25 16:00:21 +0200 |
commit | aaf4304c7cf6259fc00366608ce643cf9697a887 (patch) | |
tree | a7360a573ba7624c676aa6774480bd8bbbc0a9be /src/chef/pages/admin/api.clj | |
parent | d658c185d0c56a72b062a234982c5d1f8da49c1c (diff) | |
download | chef-aaf4304c7cf6259fc00366608ce643cf9697a887.tar.xz chef-aaf4304c7cf6259fc00366608ce643cf9697a887.zip |
Make categories editable; TODO: store the root question
Diffstat (limited to 'src/chef/pages/admin/api.clj')
-rw-r--r-- | src/chef/pages/admin/api.clj | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/chef/pages/admin/api.clj b/src/chef/pages/admin/api.clj index a15b897..38f40f7 100644 --- a/src/chef/pages/admin/api.clj +++ b/src/chef/pages/admin/api.clj @@ -39,3 +39,18 @@ (ruresp/status 200) (ruresp/header "HX-Refresh" "true"))) (ruresp/bad-request "Bad request.")))) + +(defn edit-category [req] + (cutils/auth-only req + (if-let [id (try (Integer/parseInt (get-in req [:path-params :id])) + (catch Exception _ nil))] + (do (when-let [name (get-in req [:params "name"])] + (jdbc/execute! @cdb/db (sql/format {:update :categories + :set {:name name} + :where [:= :id id]}))) + (when-let [question (get-in req [:params "question"])] + (jdbc/execute! @cdb/db (sql/format {:update :categories + :set {:question question} + :where [:= :id id]}))) + (ruresp/response "Updated.")) + (ruresp/bad-request "Bad request.")))) |