Sha256: 261e09efd6895bb7ff7480e951e32c040a6d9bef402c39c564682d8e09d83c1d

Contents?: true

Size: 1.02 KB

Versions: 11

Compression:

Stored size: 1.02 KB

Contents

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{ |v| v.new(@return_item) }
        end
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
solidus_core-2.5.2 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-2.5.1 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-2.5.0 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-2.5.0.rc1 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-2.5.0.beta2 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-2.5.0.beta1 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-2.4.2 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-2.4.1 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-2.4.0 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-2.4.0.rc1 app/models/spree/return_item/eligibility_validator/default.rb
solidus_core-2.4.0.beta1 app/models/spree/return_item/eligibility_validator/default.rb