Broadcasting status change

This commit is contained in:
2025-11-27 01:23:40 +02:00
parent b3ef5157b0
commit 8ddb09b53b
2 changed files with 19 additions and 1 deletions
+16
View File
@@ -9,6 +9,8 @@ module Tasks
delegate :model_name, to: Task
after_success :broadcast_status_changes
def perform(task)
@task = task
@id = task.id
@@ -18,5 +20,19 @@ module Tasks
@task.status_id = status_id
save @task
end
private
def broadcast_status_changes
view_model_with_form = Tasks::Statuses::SelectorViewModel.new(task, with_form: true)
view_model_no_form = Tasks::Statuses::SelectorViewModel.new(task, with_form: false)
task.broadcast_replace_to [task, :status, :with_form],
target: view_model_with_form.dom_id,
renderable: view_model_with_form
task.broadcast_replace_to [task, :status, :no_form],
target: view_model_no_form.dom_id,
renderable: view_model_no_form
end
end
end