···
···
func (h *Handler) HandleNewResourcePage(w http.ResponseWriter, r *http.Request) {
65
+
l := h.Logger.With("handler", "HandleNewResourcePage")
user, err := bsky.GetUserWithBskyProfile(h.Oauth, r)
68
-
log.Println("failed to get logged-in user:", err)
69
+
l.Error("failed to get logged-in user", "err", err)
htmx.HxRedirect(w, "/login")
···
client, err := h.Oauth.AuthorizedClient(r)
82
-
log.Println("failed to get authorized client:", err)
83
+
l.Error("failed to get authorized client", "err", err)
htmx.HxRedirect(w, "/login")
newResource, err := parseResourceForm(r)
89
-
log.Println("invalid resource form:", err)
90
+
l.Error("invalid resource form", "err", err)
htmx.HxError(w, http.StatusBadRequest, "Failed to create resource, ensure all fields contain valid data.")
···
newResource.CreatedAt = time.Now().UTC()
if err := db.ValidateResource(newResource); err != nil {
98
-
log.Println("invalid resource definition:", err)
99
+
l.Error("invalid resource definition", "err", err)
case errors.Is(err, db.ErrResourceTitleEmpty):
htmx.HxError(w, http.StatusBadRequest, "Resource must have a title.")
···
if newResource.Link != nil {
linkCheckResult := google.CheckResourceLinkSafety(*newResource.Link)
if linkCheckResult.Err != nil {
121
-
log.Println("invalid resource definition:", linkCheckResult.Err)
122
+
l.Error("invalid resource definition", "err", linkCheckResult.Err)
case errors.Is(linkCheckResult.Err, google.ErrResourceLinkSketchy):
···
189
-
log.Println("failed to create resource record:", err)
190
+
l.Error("failed to create resource record", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to create resource, try again later.")
err = SavePendingCreate(h, w, r, PendingResourceCreation, newResource)
196
-
log.Printf("failed to save yoten-session to add pending resource creation: %v", err)
197
+
l.Error("failed to save yoten-session to add pending resource creation", "err", err)
···
Set("link_provided", newResource.Link != nil),
212
-
log.Println("failed to enqueue posthog event:", err)
213
+
l.Error("failed to enqueue posthog event", "err", err)
···
func (h *Handler) HandleDeleteResource(w http.ResponseWriter, r *http.Request) {
222
+
l := h.Logger.With("handler", "HandleDeleteResource")
user := h.Oauth.GetUser(r)
223
-
log.Println("failed to get logged-in user")
226
+
l.Error("failed to get logged-in user")
htmx.HxRedirect(w, "/login")
client, err := h.Oauth.AuthorizedClient(r)
229
-
log.Println("failed to get authorized client:", err)
232
+
l.Error("failed to get authorized client", "err", err)
htmx.HxError(w, http.StatusUnauthorized, "Failed to delete resource, try again later.")
···
rkey := chi.URLParam(r, "rkey")
resource, err := db.GetResourceByRkey(h.Db, user.Did, rkey)
239
-
log.Println("failed to get resource from db:", err)
242
+
l.Error("failed to get resource from db", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to delete resource, try again later.")
if user.Did != resource.Did {
245
-
log.Printf("user '%s' does not own record '%s'", user.Did, rkey)
248
+
l.Error("user does not own record", "did", user.Did, "resourceDid", resource.Did)
htmx.HxError(w, http.StatusUnauthorized, "You do not have permissions to delete this resource.")
···
256
-
log.Println("failed to delete resource from PDS:", err)
259
+
l.Error("failed to delete resource from PDS", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to delete resource, try again later.")
err = SavePendingDelete(h, w, r, PendingResourceDeletion, resource)
263
-
log.Printf("failed to save yoten-session to add pending resource deletion: %v", err)
266
+
l.Error("failed to save yoten-session to add pending resource deletion", "err", err)
···
Set("resource_type", resource.Type),
275
-
log.Println("failed to enqueue posthog event:", err)
278
+
l.Error("failed to enqueue posthog event", "err", err)
···
func (h *Handler) HandleEditResourcePage(w http.ResponseWriter, r *http.Request) {
287
+
l := h.Logger.With("handler", "HandleEditResourcePage")
user, err := bsky.GetUserWithBskyProfile(h.Oauth, r)
286
-
log.Println("failed to get logged-in user:", err)
291
+
l.Error("failed to get logged-in user", "err", err)
htmx.HxRedirect(w, "/login")
···
rkey := chi.URLParam(r, "rkey")
resource, err := db.GetResourceByRkey(h.Db, user.Did, rkey)
294
-
log.Println("failed to get resource from db:", err)
299
+
l.Error("failed to get resource from db", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to update resource, try again later.")
if user.Did != resource.Did {
300
-
log.Printf("user '%s' does not own record '%s'", user.Did, rkey)
305
+
l.Error("user does not own record", "did", user.Did, "resourceDid", resource.Did)
htmx.HxError(w, http.StatusUnauthorized, "You do not have permissions to edit this resource.")
···
client, err := h.Oauth.AuthorizedClient(r)
315
-
log.Println("failed to get authorized client:", err)
320
+
l.Error("failed to get authorized client", "err", err)
htmx.HxRedirect(w, "/login")
updatedResource, err := parseResourceForm(r)
322
-
log.Println("invalid resource form:", err)
327
+
l.Error("invalid resource form", "err", err)
htmx.HxError(w, http.StatusBadRequest, "Failed to create resource, ensure all fields contain valid data.")
···
updatedResource.CreatedAt = resource.CreatedAt
if err := db.ValidateResource(updatedResource); err != nil {
331
-
log.Println("invalid resource definition:", err)
336
+
l.Error("invalid resource definition", "err", err)
case errors.Is(err, db.ErrResourceTitleEmpty):
htmx.HxError(w, http.StatusBadRequest, "Resource must have a title.")
···
if updatedResource.Link != nil && (resource.Link == nil || *updatedResource.Link != *resource.Link) {
linkCheckResult := google.CheckResourceLinkSafety(*updatedResource.Link)
if linkCheckResult.Err != nil {
355
-
log.Println("invalid resource definition:", linkCheckResult.Err)
360
+
l.Error("invalid resource link", "link", resource.Link, "threatType", linkCheckResult.ThreatType, "err", linkCheckResult.Err)
case errors.Is(linkCheckResult.Err, google.ErrResourceLinkSketchy):
···
430
-
log.Println("failed to update resource record:", err)
435
+
l.Error("failed to update resource record", "err", err)
htmx.HxError(w, http.StatusInternalServerError, "Failed to update resource, try again later.")
err = SavePendingUpdate(h, w, r, PendingResourceUpdates, updatedResource)
437
-
log.Printf("failed to save yoten-session to add pending resource updates: %v", err)
442
+
l.Error("failed to save yoten-session to add pending resource updates", "err", err)
···
Set("link_provided", updatedResource.Link != nil),
453
-
log.Println("failed to enqueue posthog event:", err)
458
+
l.Error("failed to enqueue posthog event", "err", err)