about summary refs log tree commit diff
path: root/users/grfn/bbbg/src/bbbg/db/event_attendee.clj
diff options
context:
space:
mode:
Diffstat (limited to 'users/grfn/bbbg/src/bbbg/db/event_attendee.clj')
-rw-r--r--users/grfn/bbbg/src/bbbg/db/event_attendee.clj16
1 files changed, 16 insertions, 0 deletions
diff --git a/users/grfn/bbbg/src/bbbg/db/event_attendee.clj b/users/grfn/bbbg/src/bbbg/db/event_attendee.clj
new file mode 100644
index 0000000000..9fa8ad4798
--- /dev/null
+++ b/users/grfn/bbbg/src/bbbg/db/event_attendee.clj
@@ -0,0 +1,16 @@
+(ns bbbg.db.event-attendee
+  (:require honeysql-postgres.format
+            [bbbg.db :as db]
+            [bbbg.util.core :as u]))
+
+(defn upsert-all!
+  [db attendees]
+  (db/execute!
+   db
+   {:insert-into :event-attendee
+    :values (map #(->> %
+                       (db/process-key-map :event-attendee)
+                       (u/map-keys keyword))
+                 attendees)
+    :upsert {:on-conflict [:event-id :attendee-id]
+             :do-update-set [:rsvpd-attending]}}))