class Vendor::Products
Attributes
block[R]
products[R]
Public Class Methods
new(products=[], &block)
click to toggle source
# File lib/project/products.rb, line 9 def initialize(products=[], &block) # Set up products array @products = [] # Set up block @block = block # Set up blocks for giving a callback @blocks = [] # Initialize buy block @buy = Vendor::Buy.new # Set up info for products products.each do |product| # Set default options default_options = { :id => "no_id", :secret => "no_secret", :subscription => false, :price => "0.99", :price_locale => nil, :title => "No Title", :desc => "No Description.", :sk_product => nil } options = default_options.merge(product) # Update product and set exists variable @products << Vendor::Product.new(options.to_object, @buy) do |block| @blocks << block @block.call(@blocks) unless @block.nil? || @blocks.count!=@products.count end end end
Public Instance Methods
[](key)
click to toggle source
# File lib/project/products.rb, line 5 def [](key) return @products.select{ |p| p.params[:name]==key.to_s }.first end