Sha256: 7ebfeb32ede619f78967d2fdb54d9c85a7973eca2bbc27e5f31e0fce756bc13f
Contents?: true
Size: 1.11 KB
Versions: 1
Compression:
Stored size: 1.11 KB
Contents
module Alchemy class ContentSweeper < ActionController::Caching::Sweeper observe Element, Page def after_create(object) if object.class.to_s == "Alchemy::Page" expire_contents_displayed_as_select(object) end end def after_update(object) if object.class.to_s == "Alchemy::Element" expire_cache_for(object.contents) elsif object.class.to_s == "Alchemy::Page" expire_contents_displayed_as_select(object) end end def after_destroy(object) if object.class.to_s == "Alchemy::Element" expire_cache_for(object.contents) elsif object.class.to_s == "Alchemy::Page" expire_contents_displayed_as_select(object) end end private def expire_cache_for(contents) contents.each do |content| expire_fragment(content) end end # Expires all EssenceSelect content editor cache fragments. def expire_contents_displayed_as_select(page) return unless page.urlname_changed? || page.name_changed? Content.essence_selects.each { |content| expire_fragment(content) } end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
alchemy_cms-2.2.rc14 | app/sweepers/alchemy/content_sweeper.rb |