about summary refs log tree commit diff
path: root/users/grfn/bbbg/src/bbbg/handlers/events.clj
diff options
context:
space:
mode:
Diffstat (limited to 'users/grfn/bbbg/src/bbbg/handlers/events.clj')
-rw-r--r--users/grfn/bbbg/src/bbbg/handlers/events.clj19
1 files changed, 17 insertions, 2 deletions
diff --git a/users/grfn/bbbg/src/bbbg/handlers/events.clj b/users/grfn/bbbg/src/bbbg/handlers/events.clj
index d41caec39bc7..6f6d6f3585ae 100644
--- a/users/grfn/bbbg/src/bbbg/handlers/events.clj
+++ b/users/grfn/bbbg/src/bbbg/handlers/events.clj
@@ -89,8 +89,15 @@
    [:div.page-header
     [:h1 (format-date (::event/date event)
                       FormatStyle/FULL)]
-    [:a {:href (str "/signup-forms/" (::event/id event) )}
-     "Go to Signup Form"]]
+    [:div.spacer]
+    [:a.button {:href (str "/signup-forms/" (::event/id event) )}
+     "Go to Signup Form"]
+    [:form#delete-event
+     {:method :post
+      :action (str "/events/" (::event/id event) "/delete")
+      :data-confirm "Are you sure you want to delete this event?"}
+     [:input.error {:type "submit"
+                    :value "Delete Event"}]]]
    [:div.stats
     [:p (pluralize (:num-rsvps event) "RSVP")]
     [:p (num-attendees event)]]
@@ -220,6 +227,14 @@
                           :attendees attendees})))
           (not-found "Event Not Found")))
 
+      (POST "/delete" []
+        (db/delete! db :event_attendee [:= :event-id id])
+        (db/delete! db :event [:= :id id])
+        (-> (redirect "/events")
+            (flash/add-flash
+             #:flash {:type :success
+                      :message "Successfully deleted event"})))
+
       (GET "/attendees/import" []
         (if-let [event (db/get db :event id)]
           (page-response