diff options
author | Tim <contact@bytim.eu> | 2025-05-25 16:51:34 +0200 |
---|---|---|
committer | Tim <contact@bytim.eu> | 2025-05-25 16:51:34 +0200 |
commit | d1699f9af8cb7457f248bf71197535221f3d9472 (patch) | |
tree | 0980493e5be38f2bd6ea96377c6c77a1b52c47ae /src/chef/pages/admin/api.clj | |
parent | 3c4f9feb1a9ef05f1175c3cd6c16081e4ebabd4b (diff) | |
download | chef-d1699f9af8cb7457f248bf71197535221f3d9472.tar.xz chef-d1699f9af8cb7457f248bf71197535221f3d9472.zip |
Do not allow deleting root category
Diffstat (limited to 'src/chef/pages/admin/api.clj')
-rw-r--r-- | src/chef/pages/admin/api.clj | 15 |
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] |