Module: FizzyApiClient::Resources::Steps

Included in:
Client
Defined in:
lib/fizzy_api_client/resources/steps.rb

Instance Method Summary collapse

Instance Method Details

#complete_step(card_number, step_id, account_slug: nil) ⇒ Object



36
37
38
# File 'lib/fizzy_api_client/resources/steps.rb', line 36

def complete_step(card_number, step_id, account_slug: nil)
  update_step(card_number, step_id, completed: true, account_slug: )
end

#create_step(card_number, content:, completed: nil, account_slug: nil) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
# File 'lib/fizzy_api_client/resources/steps.rb', line 12

def create_step(card_number, content:, completed: nil, account_slug: nil)
  slug = ()

  payload = { content: content }
  payload[:completed] = completed unless completed.nil?

  response = connection.post("/#{slug}/cards/#{card_number}/steps",
                             body: { step: payload })
  response = connection.follow_location(response)
  response.body
end

#delete_step(card_number, step_id, account_slug: nil) ⇒ Object



44
45
46
47
48
# File 'lib/fizzy_api_client/resources/steps.rb', line 44

def delete_step(card_number, step_id, account_slug: nil)
  slug = ()
  response = connection.delete("/#{slug}/cards/#{card_number}/steps/#{step_id}")
  response.no_content? ? nil : response.body
end

#incomplete_step(card_number, step_id, account_slug: nil) ⇒ Object



40
41
42
# File 'lib/fizzy_api_client/resources/steps.rb', line 40

def incomplete_step(card_number, step_id, account_slug: nil)
  update_step(card_number, step_id, completed: false, account_slug: )
end

#step(card_number, step_id, account_slug: nil) ⇒ Object



6
7
8
9
10
# File 'lib/fizzy_api_client/resources/steps.rb', line 6

def step(card_number, step_id, account_slug: nil)
  slug = ()
  response = connection.get("/#{slug}/cards/#{card_number}/steps/#{step_id}")
  response.body
end

#update_step(card_number, step_id, content: nil, completed: nil, account_slug: nil) ⇒ Object



24
25
26
27
28
29
30
31
32
33
34
# File 'lib/fizzy_api_client/resources/steps.rb', line 24

def update_step(card_number, step_id, content: nil, completed: nil, account_slug: nil)
  slug = ()

  payload = {}
  payload[:content] = content unless content.nil?
  payload[:completed] = completed unless completed.nil?

  response = connection.put("/#{slug}/cards/#{card_number}/steps/#{step_id}",
                            body: { step: payload })
  response.no_content? ? nil : response.body
end