Class: SolidusPromotions::Condition
- Inherits:
-
Spree::Base
- Object
- Spree::Base
- SolidusPromotions::Condition
show all
- Includes:
- Spree::Preferences::Persistable
- Defined in:
- app/models/solidus_promotions/condition.rb
Direct Known Subclasses
SolidusPromotions::Conditions::FirstOrder, SolidusPromotions::Conditions::FirstRepeatPurchaseSince, SolidusPromotions::Conditions::ItemTotal, SolidusPromotions::Conditions::LineItemOptionValue, SolidusPromotions::Conditions::LineItemProduct, SolidusPromotions::Conditions::LineItemTaxon, SolidusPromotions::Conditions::MinimumQuantity, SolidusPromotions::Conditions::NthOrder, SolidusPromotions::Conditions::OneUsePerUser, SolidusPromotions::Conditions::OptionValue, SolidusPromotions::Conditions::Product, SolidusPromotions::Conditions::ShippingMethod, SolidusPromotions::Conditions::Store, SolidusPromotions::Conditions::Taxon, SolidusPromotions::Conditions::User, SolidusPromotions::Conditions::UserLoggedIn, SolidusPromotions::Conditions::UserRole
Instance Method Summary
collapse
Instance Method Details
#applicable?(_promotable) ⇒ Boolean
19
20
21
|
# File 'app/models/solidus_promotions/condition.rb', line 19
def applicable?(_promotable)
raise NotImplementedError, "applicable? should be implemented in a sub-class of SolidusPromotions::Rule"
end
|
#eligibility_errors ⇒ Object
31
32
33
|
# File 'app/models/solidus_promotions/condition.rb', line 31
def eligibility_errors
@eligibility_errors ||= ActiveModel::Errors.new(self)
end
|
#eligible?(_promotable, _options = {}) ⇒ Boolean
23
24
25
|
# File 'app/models/solidus_promotions/condition.rb', line 23
def eligible?(_promotable, _options = {})
raise NotImplementedError, "eligible? should be implemented in a sub-class of SolidusPromotions::Rule"
end
|
#level ⇒ Object
27
28
29
|
# File 'app/models/solidus_promotions/condition.rb', line 27
def level
raise NotImplementedError, "level should be implemented in a sub-class of SolidusPromotions::Rule"
end
|
#preload_relations ⇒ Object
15
16
17
|
# File 'app/models/solidus_promotions/condition.rb', line 15
def preload_relations
[]
end
|
#to_partial_path ⇒ Object
35
36
37
|
# File 'app/models/solidus_promotions/condition.rb', line 35
def to_partial_path
"solidus_promotions/admin/condition_fields/#{model_name.element}"
end
|
#updateable? ⇒ Boolean
39
40
41
|
# File 'app/models/solidus_promotions/condition.rb', line 39
def updateable?
preferences.any?
end
|