diff --git a/app/models/card/eventable.rb b/app/models/card/eventable.rb index 520fd95d4..c52fb7a29 100644 --- a/app/models/card/eventable.rb +++ b/app/models/card/eventable.rb @@ -19,6 +19,7 @@ module Card::Eventable def touch_last_active_at # Not using touch so that we can detect attribute change on callbacks update!(last_active_at: Time.current) + broadcast_activity end private @@ -35,4 +36,8 @@ module Card::Eventable def create_system_comment_for(event) SystemCommenter.new(self, event).comment end + + def broadcast_activity + broadcast_render_later_to self, :activity, partial: "card/display/refresh_activity", locals: { card: self } + end end diff --git a/app/views/card/display/_refresh_activity.turbo_stream.erb b/app/views/card/display/_refresh_activity.turbo_stream.erb new file mode 100644 index 000000000..a5a603252 --- /dev/null +++ b/app/views/card/display/_refresh_activity.turbo_stream.erb @@ -0,0 +1,4 @@ +<%= turbo_stream.remove dom_id(card, "bubble") %> +<%= turbo_stream.replace dom_id(card, :card_closure_toggle) do %> + <%= render "cards/container/closure", card: card %> +<% end %> diff --git a/app/views/cards/container/_closure.html.erb b/app/views/cards/container/_closure.html.erb index bad02f3cd..07d227c4f 100644 --- a/app/views/cards/container/_closure.html.erb +++ b/app/views/cards/container/_closure.html.erb @@ -10,10 +10,13 @@ <%= button_to card_closure_path(card), class: "btn borderless" do %> Mark as Done <% end %> - <% if card.entropic? && card.open? %> -
- <% end %> + +