Class: Voucherify::Service::Campaigns

Inherits:
Object
  • Object
show all
Defined in:
lib/voucherify/service/campaigns.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ Campaigns

Returns a new instance of Campaigns.



8
9
10
# File 'lib/voucherify/service/campaigns.rb', line 8

def initialize(client)
  @client = client
end

Instance Attribute Details

#clientObject (readonly)

Returns the value of attribute client.



6
7
8
# File 'lib/voucherify/service/campaigns.rb', line 6

def client
  @client
end

Instance Method Details

#add_voucher(campaign_name, params = {}) ⇒ Object



25
26
27
28
29
30
31
32
# File 'lib/voucherify/service/campaigns.rb', line 25

def add_voucher(campaign_name, params = {})
  code = params['code'] || params[:code]
  url = "/campaigns/#{URI.encode(campaign_name)}/vouchers"
  url += "/#{URI.encode(code)}" if code
  params.delete 'code'
  params.delete :code
  @client.post(url, params.to_json)
end

#create(campaign) ⇒ Object



12
13
14
# File 'lib/voucherify/service/campaigns.rb', line 12

def create(campaign)
  @client.post('/campaigns', campaign.to_json)
end

#delete(campaign_name, params = {}) ⇒ Object



20
21
22
23
# File 'lib/voucherify/service/campaigns.rb', line 20

def delete(campaign_name, params = {})
  @client.delete("/campaigns/#{URI.encode(campaign_name)}", {:force => (!!(params['force'] || params[:force])).to_s})
  nil
end

#get(campaign_name) ⇒ Object



16
17
18
# File 'lib/voucherify/service/campaigns.rb', line 16

def get(campaign_name)
  @client.get("/campaigns/#{URI.encode(campaign_name)}")
end

#import_vouchers(campaign_name, vouchers) ⇒ Object



34
35
36
# File 'lib/voucherify/service/campaigns.rb', line 34

def import_vouchers(campaign_name, vouchers)
  @client.post("/campaigns/#{URI.encode(campaign_name)}/import", vouchers.to_json)
end