Sha256: b1a8a8b32efb5363d6eb78a3a808522cb7a970b9057397984d3a8ffff485ae15

Contents?: true

Size: 699 Bytes

Versions: 16

Compression:

Stored size: 699 Bytes

Contents

# frozen_string_literal: true

module Decidim
  module Plans
    # The loggability class modifies the core's Traceability class by removing
    # the PaperTrail tracing from the objects. This is needed because we want to
    # handle the PaperTrail tracing manually for the plans.
    class Loggability < ::Decidim::Traceability
      def perform_action!(action, resource, author, extra_log_info = {})
        Decidim::ApplicationRecord.transaction do
          result = block_given? ? yield : nil
          loggable_resource = resource.is_a?(Class) ? result : resource
          log(action, author, loggable_resource, extra_log_info)
          return result
        end
      end
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
decidim-plans-0.18.2 app/services/decidim/plans/loggability.rb
decidim-plans-0.18.1 app/services/decidim/plans/loggability.rb
decidim-plans-0.18.0 app/services/decidim/plans/loggability.rb
decidim-plans-0.17.0 app/services/decidim/plans/loggability.rb
decidim-plans-0.16.9 app/services/decidim/plans/loggability.rb
decidim-plans-0.16.8 app/services/decidim/plans/loggability.rb
decidim-plans-0.16.7 app/services/decidim/plans/loggability.rb
decidim-plans-0.16.6 app/services/decidim/plans/loggability.rb
decidim-plans-0.16.5 app/services/decidim/plans/loggability.rb
decidim-plans-0.16.4 app/services/decidim/plans/loggability.rb
decidim-plans-0.16.3 app/services/decidim/plans/loggability.rb
decidim-plans-0.16.2 app/services/decidim/plans/loggability.rb
decidim-plans-0.16.1 app/services/decidim/plans/loggability.rb
decidim-plans-0.16.0 app/services/decidim/plans/loggability.rb
decidim-plans-0.15.1 app/services/decidim/plans/loggability.rb
decidim-plans-0.15.0 app/services/decidim/plans/loggability.rb