func deleteStationHandler(sdb *db.StationDB, w http.ResponseWriter, r *http.Request, user userView) { id := r.URL.Query().Get("id") if id == "" { http.Error(w, "'id' param missing", http.StatusBadRequest) return } s, err := sdb.Lookup(id) if err != nil { log.Printf("Station DB lookup error: %s", err.Error()) http.Error(w, "", http.StatusInternalServerError) return } if s == nil || *s.Userid != user.Id { http.NotFound(w, r) return } err = sdb.Delete(id) if err != nil { log.Printf("Station DB delete error: %s", err.Error()) http.Error(w, "", http.StatusInternalServerError) return } // Success http.Redirect(w, r, "/home", http.StatusFound) }