Sha256: aaa13068276008ac163b1745d3ff4c7c35008fb38920c2dc33a8823543ceb7cf

Contents?: true

Size: 1.06 KB

Versions: 16

Compression:

Stored size: 1.06 KB

Contents

module ExpireEditableFragment
  def expire_editable_fragment(record, fragments = [])
    fragments.uniq!
    if record.is_a?(Manifestation)
      if fragments.empty?
        fragments = %w[manifestation_html show_detail_user_html show_detail_librarian_html pickup_html title_html title_mobile index_sru list_identifiers_oai list_records_oai]
      end
      expire_manifestation_cache(record, fragments)
    else
      I18n.available_locales.each do |locale|
        Role.all_cache.each do |role|
          fragments.each do |fragment|
            expire_fragment(":#{record.class.to_s.downcase}" => record.id, :fragment => fragment, :role => role.name, :locale => locale)
          end
        end
      end
    end
  end

  private
  def expire_manifestation_cache(manifestation, fragments = [])
    I18n.available_locales.each do |locale|
      Role.all_cache.each do |role|
        fragments.uniq.each do |fragment|
          expire_fragment([:manifestation => manifestation.id, :fragment => fragment, :role => role.name, :locale => locale])
        end
      end
    end
  end
end

Version data entries

16 entries across 16 versions & 3 rubygems

Version Path
enju_seed-0.1.1.pre9 lib/enju_seed/expire_editable_fragment.rb
enju_seed-0.1.1.pre8 lib/enju_seed/expire_editable_fragment.rb
enju_seed-0.1.1.pre7 lib/enju_seed/expire_editable_fragment.rb
enju_core-0.1.1.pre6 lib/enju_core/expire_editable_fragment.rb
enju_core-0.1.1.pre5 lib/enju_core/expire_editable_fragment.rb
enju_core-0.1.1.pre4 lib/enju_core/expire_editable_fragment.rb
enju_core-0.1.1.pre3 lib/enju_core/expire_editable_fragment.rb
enju_core-0.1.1.pre2 lib/enju_core/expire_editable_fragment.rb
enju_core-0.1.1.pre lib/enju_core/expire_editable_fragment.rb
enju_core-0.1.0.pre lib/enju_core/expire_editable_fragment.rb
enju_core-0.1.0 lib/enju_core/expire_editable_fragment.rb
enju_core-0.0.3 lib/enju_core/expire_editable_fragment.rb
enju_core-0.0.2 lib/enju_core/expire_editable_fragment.rb
enju_core-0.0.1 lib/enju_core/expire_editable_fragment.rb
enju_biblio-0.0.2 lib/enju_biblio/expire_editable_fragment.rb
enju_biblio-0.0.1 lib/enju_biblio/expire_editable_fragment.rb