Don't broadcast updates of cards unless published

To prevent https://fizzy.37signals.com/5986089/cards/1631
This commit is contained in:
Jorge Manrubia
2025-10-02 14:19:21 +02:00
parent 10c9214d52
commit 5f8457ad9d
+11 -1
View File
@@ -27,7 +27,9 @@ class CardsController < ApplicationController
end
def update
@card.update! card_params
suppressing_broadcasts_unless_published(@card) do
@card.update! card_params
end
if @card.published?
render_card_replacement
@@ -50,6 +52,14 @@ class CardsController < ApplicationController
@card = Current.user.accessible_cards.find params[:id]
end
def suppressing_broadcasts_unless_published(&block)
if @card.published?
yield
else
Collection.suppressing_turbo_broadcasts(&block)
end
end
def card_params
params.expect(card: [ :status, :title, :description, :image, tag_ids: [] ])
end