Class: Files::Upsell

Inherits:
Object
  • Object
show all
Defined in:
lib/files.com/models/upsell.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}, options = {}) ⇒ Upsell

Returns a new instance of Upsell.



7
8
9
10
# File 'lib/files.com/models/upsell.rb', line 7

def initialize(attributes = {}, options = {})
  @attributes = attributes || {}
  @options = options || {}
end

Instance Attribute Details

#attributesObject (readonly)

Returns the value of attribute attributes.



5
6
7
# File 'lib/files.com/models/upsell.rb', line 5

def attributes
  @attributes
end

#optionsObject (readonly)

Returns the value of attribute options.



5
6
7
# File 'lib/files.com/models/upsell.rb', line 5

def options
  @options
end

Class Method Details

.on_initial_sale(params = {}, options = {}) ⇒ Object

Parameters:

page - integer - Current page number.
per_page - integer - Number of records to show per page.  (Max: 10,000, 1,000 or less is recommended).
action - string - Deprecated: If set to `count` returns a count of matching records rather than the records themselves.
plan_id (required) - integer - Plan ID.


27
28
29
30
31
32
33
34
35
36
# File 'lib/files.com/models/upsell.rb', line 27

def self.on_initial_sale(params = {}, options = {})
  raise InvalidParameterError.new("Bad parameter: page must be an Integer") if params.dig(:page) and !params.dig(:page).is_a?(Integer)
  raise InvalidParameterError.new("Bad parameter: per_page must be an Integer") if params.dig(:per_page) and !params.dig(:per_page).is_a?(Integer)
  raise InvalidParameterError.new("Bad parameter: action must be an String") if params.dig(:action) and !params.dig(:action).is_a?(String)
  raise InvalidParameterError.new("Bad parameter: plan_id must be an Integer") if params.dig(:plan_id) and !params.dig(:plan_id).is_a?(Integer)
  raise MissingParameterError.new("Parameter missing: plan_id") unless params.dig(:plan_id)

  response, options = Api.send_request("/upsells/on_initial_sale", :post, params, options)
  response.data.map { |object| Upsell.new(object, options) }
end

Instance Method Details

#planObject

Available plan object



13
14
15
# File 'lib/files.com/models/upsell.rb', line 13

def plan
  @attributes[:plan]
end

#sales_letter_nameObject

string - Salesletter name



18
19
20
# File 'lib/files.com/models/upsell.rb', line 18

def sales_letter_name
  @attributes[:sales_letter_name]
end