Sha256: 0094e5e9bb991bdcfcc08b5ebc92ca423522bb1d466f668864297e83e746ce22

Contents?: true

Size: 1.06 KB

Versions: 95

Compression:

Stored size: 1.06 KB

Contents

# frozen_string_literal: true

module Spree
  class ReturnItem < Spree::Base
    module EligibilityValidator
      class Default < Spree::ReturnItem::EligibilityValidator::BaseValidator
        class_attribute :permitted_eligibility_validators
        self.permitted_eligibility_validators = [
          ReturnItem::EligibilityValidator::OrderCompleted,
          ReturnItem::EligibilityValidator::TimeSincePurchase,
          ReturnItem::EligibilityValidator::RMARequired,
          ReturnItem::EligibilityValidator::InventoryShipped,
          ReturnItem::EligibilityValidator::NoReimbursements
        ]

        def eligible_for_return?
          validators.all?(&:eligible_for_return?)
        end

        def requires_manual_intervention?
          validators.any?(&:requires_manual_intervention?)
        end

        def errors
          validators.map(&:errors).reduce({}, :merge)
        end

        private

        def validators
          @validators ||= permitted_eligibility_validators.map{ |validator| validator.new(@return_item) }
        end
      end
    end
  end
end

Version data entries

95 entries across 95 versions & 1 rubygems

Version Path
solidus_core-4.5.1 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.5.0 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.3.6 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.2.5 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.1.6 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.4.2 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.4.1 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.4.0 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.3.4 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.2.4 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.1.5 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.3.3 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.3.2 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.1.4 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.3.1 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.3.0 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.2.3 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.1.3 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-4.0.4 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-3.4.6 app/models/spree/return_item/eligibility_validator/default.rb