Sha256: df440323b913395dda643309d88a656e776fd5b727c1916c5283d21aed261bfa

Contents?: true

Size: 1.26 KB

Versions: 43

Compression:

Stored size: 1.26 KB

Contents

Rollbar.plugins.define('active_model') do
  dependency { !configuration.disable_monkey_patch }
  dependency { defined?(ActiveModel::Validations) }
  dependency do
    require 'active_model/version'

    ActiveModel::VERSION::MAJOR >= 3
  end

  execute! do
    module Rollbar
      # Module that defines methods to be used by instances using
      # ActiveModel::Validations
      # The name is ActiveRecordExtension in order to not break backwards
      # compatibility, although probably it should be named
      # Rollbar::ValidationsExtension or similar
      module ActiveRecordExtension
        def report_validation_errors_to_rollbar
          errors.full_messages.each do |error|
            Rollbar.log_info "[Rollbar] Reporting form validation error: #{error} for #{self}"
            Rollbar.warning("Form Validation Error: #{error} for #{self}")
          end
        end
      end
    end
  end

  execute! do
    ActiveModel::Validations.module_eval do
      include Rollbar::ActiveRecordExtension
    end

    active_support_was_defined = defined?(ActiveRecord::Base)

    ActiveSupport.on_load(:active_record) do
      if active_support_was_defined
        ActiveRecord::Base.class_eval do
          include Rollbar::ActiveRecordExtension
        end
      end
    end
  end
end

Version data entries

43 entries across 43 versions & 1 rubygems

Version Path
rollbar-3.2.0 lib/rollbar/plugins/validations.rb
rollbar-3.1.2 lib/rollbar/plugins/validations.rb
rollbar-3.1.1 lib/rollbar/plugins/validations.rb
rollbar-3.1.0 lib/rollbar/plugins/validations.rb
rollbar-3.0.1 lib/rollbar/plugins/validations.rb
rollbar-3.0.0 lib/rollbar/plugins/validations.rb
rollbar-2.27.1 lib/rollbar/plugins/validations.rb
rollbar-2.27.0 lib/rollbar/plugins/validations.rb
rollbar-2.26.1 lib/rollbar/plugins/validations.rb
rollbar-2.26.0 lib/rollbar/plugins/validations.rb
rollbar-2.25.1 lib/rollbar/plugins/validations.rb
rollbar-2.25.0 lib/rollbar/plugins/validations.rb
rollbar-2.24.0 lib/rollbar/plugins/validations.rb
rollbar-2.23.2 lib/rollbar/plugins/validations.rb
rollbar-2.23.1 lib/rollbar/plugins/validations.rb
rollbar-2.23.0 lib/rollbar/plugins/validations.rb
rollbar-2.22.1 lib/rollbar/plugins/validations.rb
rollbar-2.22.0 lib/rollbar/plugins/validations.rb
rollbar-2.21.0 lib/rollbar/plugins/validations.rb
rollbar-2.20.2 lib/rollbar/plugins/validations.rb