Sha256: 8f9bb6db0ff45de2982248de727157c83817814423b9b19ed1103c82a34c72ff

Contents?: true

Size: 579 Bytes

Versions: 26

Compression:

Stored size: 579 Bytes

Contents

module Spree
  module MultiStoreResource
    extend ActiveSupport::Concern

    included do
      scope :for_store, ->(store) { joins(:stores).where(Store.table_name => { id: store.id }) }

      validate :must_have_one_store, unless: :disable_store_presence_validation?
    end

    protected

    def must_have_one_store
      return if stores.any?

      errors.add(:stores, Spree.t(:must_have_one_store))
    end

    # this can be overridden on model basis
    def disable_store_presence_validation?
      Spree::Config[:disable_store_presence_validation]
    end
  end
end

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
spree_core-4.10.1 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.10.0 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.9.0 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.8.3 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.8.2 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.7.3 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.6.6 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.5.5 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.4.1 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.5.4 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.6.5 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.7.2 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.7.1 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.6.4 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.7.0 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.6.3 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.6.2 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.6.1 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.6.0 app/models/concerns/spree/multi_store_resource.rb
spree_core-4.5.3 app/models/concerns/spree/multi_store_resource.rb