diff --git a/app/controllers/cards_controller.rb b/app/controllers/cards_controller.rb index 7f1377e17..8c7af5074 100644 --- a/app/controllers/cards_controller.rb +++ b/app/controllers/cards_controller.rb @@ -16,7 +16,8 @@ class CardsController < ApplicationController @doing = page_and_filter_for @filter.with(engagement_status: "doing"), per_page: PAGE_SIZE @closed = page_and_filter_for_closed_cards - fresh_when etag: [ @considering, @on_deck, @doing, @closed ].collect { it.page.records } + @cache_key = [ @considering, @on_deck, @doing, @closed ].collect { it.page.records }.including([ Workflow.all ]) + fresh_when etag: @cache_key end def create diff --git a/app/models/collection/workflowing.rb b/app/models/collection/workflowing.rb index 658087fe2..0a14cad36 100644 --- a/app/models/collection/workflowing.rb +++ b/app/models/collection/workflowing.rb @@ -13,6 +13,6 @@ module Collection::Workflowing private def set_all_cards_to_initial_workflow_stage - cards.update_all(stage_id: initial_workflow_stage&.id) + cards.update_all(stage_id: initial_workflow_stage&.id, updated_at: Time.current) end end diff --git a/app/models/user/day_timeline.rb b/app/models/user/day_timeline.rb index 25fd1086c..69b4f6155 100644 --- a/app/models/user/day_timeline.rb +++ b/app/models/user/day_timeline.rb @@ -46,7 +46,7 @@ class User::DayTimeline end def cache_key - ActiveSupport::Cache.expand_cache_key [ user, filter, day.to_date, events ], "day-timeline" + ActiveSupport::Cache.expand_cache_key [ user, filter, day.to_date, events, Workflow.all ], "day-timeline" end private diff --git a/app/models/user/filtering.rb b/app/models/user/filtering.rb index 4195bf7a6..1781e356d 100644 --- a/app/models/user/filtering.rb +++ b/app/models/user/filtering.rb @@ -89,7 +89,7 @@ class User::Filtering end def cache_key - ActiveSupport::Cache.expand_cache_key([ user, filter, expanded? ], "user-filtering") + ActiveSupport::Cache.expand_cache_key([ user, filter, expanded?, collections, tags, users, filters ], "user-filtering") end private diff --git a/app/views/cards/index.html.erb b/app/views/cards/index.html.erb index a3529fe4f..ad3470094 100644 --- a/app/views/cards/index.html.erb +++ b/app/views/cards/index.html.erb @@ -41,5 +41,5 @@ drop->drag-and-drop#drop dragend->drag-and-drop#dragEnd" } do %> - <%= render "cards/index/columns", user_filtering: @user_filtering, on_deck: @on_deck, considering: @considering, doing: @doing, closed: @closed %> + <%= render "cards/index/columns", user_filtering: @user_filtering, on_deck: @on_deck, considering: @considering, doing: @doing, closed: @closed, cache_key: @cache_key %> <% end %> diff --git a/app/views/cards/index/_columns.html.erb b/app/views/cards/index/_columns.html.erb index 5a148ede6..a008d1513 100644 --- a/app/views/cards/index/_columns.html.erb +++ b/app/views/cards/index/_columns.html.erb @@ -1,4 +1,4 @@ -<% cache [ on_deck, considering, doing, closed ].collect { it.page.records } do %> +<% cache @cache_key do %>
<% unless user_filtering.only_closed? %> <%= render "cards/index/engagement/on_deck", user_filtering: user_filtering, **on_deck.to_h %> diff --git a/app/views/events/day_timeline/_columns.html.erb b/app/views/events/day_timeline/_columns.html.erb index b57f75be9..020526e04 100644 --- a/app/views/events/day_timeline/_columns.html.erb +++ b/app/views/events/day_timeline/_columns.html.erb @@ -1,4 +1,4 @@ -<% cache day_timeline.events do %> +<% cache [ day_timeline.events, Workflow.all ] do %> <% if day_timeline.has_activity? %>
<%= render "events/day_timeline/column", event_type: "added", day_timeline: day_timeline %>