···
···
func (h *Handler) HandleReaction(w http.ResponseWriter, r *http.Request) {
23
+
l := h.Logger.With("handler", "HandleReaction")
client, err := h.Oauth.AuthorizedClient(r)
26
-
log.Println("failed to get authorized client:", err)
27
+
l.Error("failed to get authorized client", "err", err)
htmx.HxRedirect(w, "/login")
user, err := bsky.GetUserWithBskyProfile(h.Oauth, r)
33
-
log.Println("failed to get logged-in user:", err)
34
+
l.Error("failed to get logged-in user", "err", err)
htmx.HxRedirect(w, "/login")
···
if user.Did == session.Did {
56
-
log.Println("failed to react to study session, cannot react to your own study session")
57
+
l.Error("failed to react to study session, cannot react to your own study session")
htmx.HxError(w, http.StatusBadRequest, "You cannot react to your own study sessions.")
···
reaction, err := db.ReactionFromString(db.ReactionType(reactionId).String())
76
-
log.Printf("failed to get reaction types: %v", err)
77
+
l.Error("failed to get reaction types", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to get global study session feed, try again later.")
reactionEvents, err := db.GetReactionsForSession(h.Db, subjectDid, subjectRkey)
83
-
log.Println("failed to get reactions for study session from db:", err)
84
+
l.Error("failed to get reactions for study session from db", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to get global study session feed, try again later.")
···
reactionEvent, err := db.GetReactionEvent(h.Db, user.Did, session, reaction.ID)
92
-
log.Println("failed to get reaction event from db:", err)
93
+
l.Error("failed to get reaction event from db", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to add reaction, try again later.")
if reactionEvent != nil {
97
-
log.Println("failed to add reaction, user already reacted")
98
+
l.Error("failed to add reaction, user already reacted")
htmx.HxError(w, http.StatusBadRequest, "You cannot react multiple times with the same reaction.")
···
116
-
log.Println("failed to create reaction record:", err)
117
+
l.Error("failed to create reaction record", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to add reaction, try again later.")
···
Set("session_rkey", subjectRkey),
131
-
log.Println("failed to enqueue posthog event:", err)
132
+
l.Error("failed to enqueue posthog event", "err", err)
···
reactionEvent, err := db.GetReactionEvent(h.Db, user.Did, session, reaction.ID)
156
-
log.Println("failed to get reaction event from db:", err)
157
+
l.Error("failed to get reaction event from db", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to remove reaction, try again later.")
···
Rkey: reactionEvent.Rkey,
167
-
log.Println("failed to delete reaction record:", err)
168
+
l.Error("failed to delete reaction record", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to remove reaction, try again later.")
···
Set("session_rkey", subjectRkey),
182
-
log.Println("failed to enqueue posthog event:", err)
183
+
l.Error("failed to enqueue posthog event", "err", err)
···
partials.NewReactions(partials.NewReactionsProps{
192
-
SessionRkey: subjectRkey,
193
-
SessionDid: subjectDid,
194
-
// Reactions: reactions,
193
+
SessionRkey: subjectRkey,
194
+
SessionDid: subjectDid,
ReactionEvents: reactionEvents,
}).Render(r.Context(), w)