Sha256: 9a8db954d14dad80e9df40aa52bb0945461c722ecc9a8ea0e36f7425c68fd791

Contents?: true

Size: 675 Bytes

Versions: 28

Compression:

Stored size: 675 Bytes

Contents

module Spree
  class Activator < ActiveRecord::Base
    cattr_accessor :event_names

    self.event_names = [
      'spree.cart.add',
      'spree.order.contents_changed',
      'spree.user.signup'
    ]

    def self.register_event_name(name)
      self.event_names << name
    end

    scope :event_name_starts_with, ->(name) { where('event_name LIKE ?', "#{name}%") }

    def self.active
      where('starts_at IS NULL OR starts_at < ?', Time.now).
        where('expires_at IS NULL OR expires_at > ?', Time.now)
    end

    def activate(payload)
    end

    def expired?
      starts_at && Time.now < starts_at || expires_at && Time.now > expires_at
    end
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
spree_core-2.1.12 app/models/spree/activator.rb
spree_core-2.1.11 app/models/spree/activator.rb
spree_core-2.1.10 app/models/spree/activator.rb
spree_core-2.0.13 app/models/spree/activator.rb
spree_core-2.1.9 app/models/spree/activator.rb
spree_core-2.1.8 app/models/spree/activator.rb
spree_core-2.0.12 app/models/spree/activator.rb
spree_core-2.1.7 app/models/spree/activator.rb
spree_core-2.0.11 app/models/spree/activator.rb
spree_core-2.0.10 app/models/spree/activator.rb
spree_core-2.1.6 app/models/spree/activator.rb
spree_core-2.1.5 app/models/spree/activator.rb
spree_core-2.0.9 app/models/spree/activator.rb
spree_core-2.1.4 app/models/spree/activator.rb
spree_core-2.0.8 app/models/spree/activator.rb
spree_core-2.1.3 app/models/spree/activator.rb
spree_core-2.0.7 app/models/spree/activator.rb
spree_core-2.1.2 app/models/spree/activator.rb
spree_core-2.0.6 app/models/spree/activator.rb
spree_core-2.1.1 app/models/spree/activator.rb