Class: Plugins::Ecommerce::Coupon
- Inherits:
-
CamaleonCms::TermTaxonomy
- Object
- CamaleonCms::TermTaxonomy
- Plugins::Ecommerce::Coupon
- Defined in:
- app/models/plugins/ecommerce/coupon.rb
Instance Method Summary collapse
- #active? ⇒ Boolean
- #allowed_applications ⇒ Object
- #expired? ⇒ Boolean
- #mark_as_used(user = nil) ⇒ Object
- #min_cart_total ⇒ Object
- #used_applications ⇒ Object
- #used_times_exceeded? ⇒ Boolean
- #valid_min_price?(price) ⇒ Boolean
Instance Method Details
#active? ⇒ Boolean
39 40 41 |
# File 'app/models/plugins/ecommerce/coupon.rb', line 39 def active? status.to_s == '1' end |
#allowed_applications ⇒ Object
18 19 20 |
# File 'app/models/plugins/ecommerce/coupon.rb', line 18 def allowed_applications get_option('allowed_applications', 0).to_i end |
#expired? ⇒ Boolean
22 23 24 25 26 27 28 29 |
# File 'app/models/plugins/ecommerce/coupon.rb', line 22 def expired? d = get_option('expirate_date', '') if d.present? "#{d} 23:59:59".to_datetime.to_i < Time.current.to_i else false end end |
#mark_as_used(user = nil) ⇒ Object
10 11 12 |
# File 'app/models/plugins/ecommerce/coupon.rb', line 10 def mark_as_used(user = nil) set_option('used_applications', used_applications + 1) end |
#min_cart_total ⇒ Object
31 32 33 |
# File 'app/models/plugins/ecommerce/coupon.rb', line 31 def min_cart_total get_option('min_cart_total', '') end |
#used_applications ⇒ Object
14 15 16 |
# File 'app/models/plugins/ecommerce/coupon.rb', line 14 def used_applications get_option('used_applications', 0).to_i end |
#used_times_exceeded? ⇒ Boolean
6 7 8 |
# File 'app/models/plugins/ecommerce/coupon.rb', line 6 def used_times_exceeded? (used_applications + 1) > allowed_applications end |
#valid_min_price?(price) ⇒ Boolean
35 36 37 |
# File 'app/models/plugins/ecommerce/coupon.rb', line 35 def valid_min_price?(price) !min_cart_total.present? || min_cart_total.to_i <= price end |