Sha256: ddd138c9be42f18d5d1d2ec172ff032ce6aa8df10f6a0798c0547855f86fc62c

Contents?: true

Size: 889 Bytes

Versions: 1

Compression:

Stored size: 889 Bytes

Contents

module Model
  module EuGdpr
    module PersonalDataConcern
      extend ActiveSupport::Concern

      # Backport class_methods method.
      if Rails.version < '4.2'
        def self.class_methods(&class_methods_module_definition)
          mod = const_defined?(:ClassMethods) ?
            const_get(:ClassMethods) :
            const_set(:ClassMethods, Module.new)

          mod.module_eval(&class_methods_module_definition)
        end
      end

      class_methods do
        def personal_data_attributes=(attribute_names)
          @personal_data_attributes = attribute_names
        end

        def personal_data_attributes
          @personal_data_attributes
        end

        def gdpr_export_options=(options)
          @gdpr_export_options = options
        end

        def gdpr_export_options
          @gdpr_export_options ||= {}
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rails_eu_gdpr-0.0.4 app/concerns/model/eu_gdpr/personal_data_concern.rb