Simplify item page rendering

Just removing some caching and the expiration of it! There's still more superfluous(?) caching on the item page to audit, but these seem a bit more sensible about avoiding loading extra data.
This commit is contained in:
Matchu 2023-08-02 11:38:10 -07:00 committed by Matchu
parent 02abd4e07f
commit ffa73b6b03
3 changed files with 34 additions and 41 deletions

View file

@ -61,14 +61,12 @@ class ItemsController < ApplicationController
respond_to do |format| respond_to do |format|
format.html do format.html do
unless localized_fragment_exist?("items/#{@item.id} info") @occupied_zones = @item.occupied_zones(
@occupied_zones = @item.occupied_zones( scope: Zone.includes_translations.alphabetical
scope: Zone.includes_translations.alphabetical )
) @restricted_zones = @item.restricted_zones(
@restricted_zones = @item.restricted_zones( scope: Zone.includes_translations.alphabetical
scope: Zone.includes_translations.alphabetical )
)
end
unless localized_fragment_exist?("items/#{@item.id} contributors") unless localized_fragment_exist?("items/#{@item.id} contributors")
@contributors_with_counts = @item.contributors_with_counts @contributors_with_counts = @item.contributors_with_counts

View file

@ -16,8 +16,6 @@ class Item
private private
def self.expire_cache_for(item) def self.expire_cache_for(item)
expire_fragment_in_all_locales("items/#{item.id} header")
expire_fragment_in_all_locales("items/#{item.id} info")
expire_key_in_all_locales("items/#{item.id}#as_json") expire_key_in_all_locales("items/#{item.id}#as_json")
end end
end end

View file

@ -1,20 +1,19 @@
- title @item.name - title @item.name
- canonical_path @item - canonical_path @item
- localized_cache "items/#{@item.id} header" do %header#item-header
%header#item-header = image_tag @item.thumbnail.secure_url, :id => 'item-thumbnail'
= image_tag @item.thumbnail.secure_url, :id => 'item-thumbnail' %div
%div %h2#item-name= @item.name
%h2#item-name= @item.name = nc_icon_for(@item)
= nc_icon_for(@item) - unless @item.rarity.blank?
- unless @item.rarity.blank? == #{t '.rarity'}: #{@item.rarity_index} (#{@item.rarity})
== #{t '.rarity'}: #{@item.rarity_index} (#{@item.rarity}) = link_to t('.resources.jn_items'), jn_items_url_for(@item)
= link_to t('.resources.jn_items'), jn_items_url_for(@item) - unless @item.nc?
- unless @item.nc? = link_to t('.resources.shop_wizard'), shop_wizard_url_for(@item)
= link_to t('.resources.shop_wizard'), shop_wizard_url_for(@item) = link_to t('.resources.super_shop_wizard'), super_shop_wizard_url_for(@item)
= link_to t('.resources.super_shop_wizard'), super_shop_wizard_url_for(@item) = link_to t('.resources.trading_post'), trading_post_url_for(@item)
= link_to t('.resources.trading_post'), trading_post_url_for(@item) = link_to t('.resources.auction_genie'), auction_genie_url_for(@item)
= link_to t('.resources.auction_genie'), auction_genie_url_for(@item)
- if user_signed_in? - if user_signed_in?
#closet-hangers #closet-hangers
@ -47,19 +46,18 @@
t('.closet_hangers.quantity_label') t('.closet_hangers.quantity_label')
= submit_tag t('.closet_hangers.submit') = submit_tag t('.closet_hangers.submit')
- localized_cache "items/#{@item.id} info" do %p= @item.description
%p= @item.description
#item-zones #item-zones
%p %p
%strong #{t '.zones.occupied_header'}: %strong #{t '.zones.occupied_header'}:
= list_zones @occupied_zones, :uncertain_label = list_zones @occupied_zones, :uncertain_label
%p %p
%strong #{t '.zones.restricted_header'}: %strong #{t '.zones.restricted_header'}:
- if @restricted_zones.empty? - if @restricted_zones.empty?
= t '.zones.none' = t '.zones.none'
- else - else
= list_zones @restricted_zones = list_zones @restricted_zones
- localized_cache "items/#{@item.id} trade_hangers" do - localized_cache "items/#{@item.id} trade_hangers" do
#trade-hangers #trade-hangers
@ -73,11 +71,10 @@
%span.more= t '.trading_closet_hangers.show_more' %span.more= t '.trading_closet_hangers.show_more'
%span.less= t '.trading_closet_hangers.show_less' %span.less= t '.trading_closet_hangers.show_less'
- localized_cache 'items#show preview_header' do #item-preview-header
#item-preview-header %h3= t '.preview.header'
%h3= t '.preview.header' = link_to t('.preview.customize_more'), root_path, :id => 'customize-more',
= link_to t('.preview.customize_more'), root_path, :id => 'customize-more', :class => 'button'
:class => 'button'
#item-preview #item-preview
%ul#item-preview-species{'data-supported-species-ids' => @supported_species_ids.join(',')} %ul#item-preview-species{'data-supported-species-ids' => @supported_species_ids.join(',')}