summaryrefslogtreecommitdiff
path: root/app/models/bulk_imports/configuration.rb
blob: 8c3aff6f749a1443181eae415ad12987fa175a45 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# frozen_string_literal: true

class BulkImports::Configuration < ApplicationRecord
  self.table_name = 'bulk_import_configurations'

  belongs_to :bulk_import, inverse_of: :configuration, optional: false

  validates :url, :access_token, length: { maximum: 255 }, presence: true
  validates :url, public_url: { schemes: %w[http https], enforce_sanitization: true, ascii_only: true },
    allow_nil: true

  attr_encrypted :url,
    key: Settings.attr_encrypted_db_key_base_truncated,
    mode: :per_attribute_iv,
    algorithm: 'aes-256-gcm'
  attr_encrypted :access_token,
    key: Settings.attr_encrypted_db_key_base_truncated,
    mode: :per_attribute_iv,
    algorithm: 'aes-256-gcm'
end