summaryrefslogtreecommitdiff
path: root/src/chef/pages/admin
diff options
context:
space:
mode:
authorTim <contact@bytim.eu>2025-05-25 16:51:34 +0200
committerTim <contact@bytim.eu>2025-05-25 16:51:34 +0200
commitd1699f9af8cb7457f248bf71197535221f3d9472 (patch)
tree0980493e5be38f2bd6ea96377c6c77a1b52c47ae /src/chef/pages/admin
parent3c4f9feb1a9ef05f1175c3cd6c16081e4ebabd4b (diff)
downloadchef-d1699f9af8cb7457f248bf71197535221f3d9472.tar.xz
chef-d1699f9af8cb7457f248bf71197535221f3d9472.zip
Do not allow deleting root category
Diffstat (limited to 'src/chef/pages/admin')
-rw-r--r--src/chef/pages/admin/api.clj15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/chef/pages/admin/api.clj b/src/chef/pages/admin/api.clj
index 38f40f7..ff11672 100644
--- a/src/chef/pages/admin/api.clj
+++ b/src/chef/pages/admin/api.clj
@@ -31,13 +31,14 @@
(cutils/auth-only req
(if-let [id (try (Integer/parseInt (get-in req [:path-params :id]))
(catch Exception _ nil))]
- (do (jdbc/execute! @cdb/db
- (sql/format {:delete-from [:categories]
- :where [:= :id id]}))
- (delete-category-children! id)
- (-> (ruresp/response "Deleted.")
- (ruresp/status 200)
- (ruresp/header "HX-Refresh" "true")))
+ (when (not= id -1)
+ (do (jdbc/execute! @cdb/db
+ (sql/format {:delete-from [:categories]
+ :where [:= :id id]}))
+ (delete-category-children! id)
+ (-> (ruresp/response "Deleted.")
+ (ruresp/status 200)
+ (ruresp/header "HX-Refresh" "true"))))
(ruresp/bad-request "Bad request."))))
(defn edit-category [req]