Module: GrouponApi
- Defined in:
- lib/groupon_api.rb,
lib/groupon_api/deals.rb,
lib/groupon_api/config.rb,
lib/groupon_api/request.rb,
lib/groupon_api/version.rb
Defined Under Namespace
Classes: Configuration, Request
Constant Summary collapse
- API_KEY_FORMAT =
/US_AFF_0_\d+_212556_0/- API_BASE =
'partner-api.groupon.com'- VERSION =
"0.2.1"
Class Method Summary collapse
-
.config ⇒ Object
GrouponApi global settings.
-
.configure {|@config ||= GrouponApi::Configuration.new| ... } ⇒ Object
configure GrouponApi global settings GrouponApi.configure do |config| config.ts_token = ‘US_AFF_0_201236_212556_0’ config.debug = true end.
- .deals(params) ⇒ Object
Class Method Details
.config ⇒ Object
GrouponApi global settings
14 15 16 |
# File 'lib/groupon_api/config.rb', line 14 def self.config @config ||= GrouponApi::Configuration.new end |
.configure {|@config ||= GrouponApi::Configuration.new| ... } ⇒ Object
configure GrouponApi global settings
GrouponApi.configure do |config|
config.ts_token = 'US_AFF_0_201236_212556_0'
config.debug = true
end
9 10 11 |
# File 'lib/groupon_api/config.rb', line 9 def self.configure &block yield @config ||= GrouponApi::Configuration.new end |
.deals(params) ⇒ Object
2 3 4 5 6 7 8 9 10 11 12 |
# File 'lib/groupon_api/deals.rb', line 2 def self.deals(params) raise ::ArgumentError, 'param :ts_token cannot be nil' if GrouponApi.config.ts_token.nil? raise ::ArgumentError, 'param :ts_token must match /US_AFF_0_\d+_212556_0/' unless GrouponApi.config.ts_token.match(API_KEY_FORMAT) params.merge!(tsToken: GrouponApi.config.ts_token) params.merge!(GrouponApi.config.deals) if GrouponApi.config.deals.kind_of?(Hash) puts "#{__FILE__}:#{__LINE__} params: #{params}" if GrouponApi.config.debug GrouponApi::Request.call('deals', params)['deals'].collect{|deal| HashWithIndifferentAccess.new(deal)} end |