Sha256: f95df13b37a27ea3efecf75b8e3c74382dc913039bff721ab23e3845e90758ed

Contents?: true

Size: 568 Bytes

Versions: 6

Compression:

Stored size: 568 Bytes

Contents

module ConsoleSale  
  class Checkout < ::Checkout 
    def order_class
      ConsoleSale::Order
    end

    def checkout_name
      "sales console"
    end
  end

  class Cart < ::Cart 
    def calculate_fees(obj)
      FeeCalculator.apply(ConsoleSale::FeeStrategy.new).to(self)
    end
  end
  
  class Order < ::Order  
    def self.location
      "Sales Console"
    end
  end

  class FeeStrategy < ::FeeStrategy
    def apply_to_cart(cart)
      return if cart.is_a? BoxOffice::Cart
      cart.items.each {|i| i.update_column(:service_fee, 0)}
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
artfully_ose-1.2.0 app/models/console_sale.rb
artfully_ose-1.2.0.beta.1 app/models/console_sale.rb
artfully_ose-1.2.0.alpha.2 app/models/console_sale.rb
artfully_ose-1.2.0.alpha.1 app/models/console_sale.rb
artfully_ose-1.2.0.pre.27 app/models/console_sale.rb
artfully_ose-1.2.0.pre.26 app/models/console_sale.rb