class Dotloop::Folder
Constants
- FOLDER_FIELDS
Attributes
client[RW]
Public Class Methods
new(client:)
click to toggle source
# File lib/dotloop/folder.rb, line 9 def initialize(client:) @client = client end
Public Instance Methods
all(profile_id:, loop_id:)
click to toggle source
# File lib/dotloop/folder.rb, line 13 def all(profile_id:, loop_id:) url = "/profile/#{profile_id.to_i}/loop/#{loop_id.to_i}/folder" @client.get(url)[:data].map do |folder_attrs| folder = Dotloop::Models::Folder.new(folder_attrs) folder.client = client folder.profile_id = profile_id.to_i folder.loop_id = loop_id.to_i folder end end
create(profile_id:, loop_id:, params: {})
click to toggle source
# File lib/dotloop/folder.rb, line 33 def create(profile_id:, loop_id:, params: {}) data = { name: params['name'] } folder_data = @client.post("/profile/#{profile_id.to_i}/loop/#{loop_id.to_i}/folder", data)[:data] folder = Dotloop::Models::Folder.new(folder_data) folder.client = client folder.profile_id = profile_id.to_i folder end
find(profile_id:, loop_id:, folder_id:)
click to toggle source
# File lib/dotloop/folder.rb, line 24 def find(profile_id:, loop_id:, folder_id:) folder_data = @client.get("/profile/#{profile_id.to_i}/loop/#{loop_id.to_i}/folder/#{folder_id.to_i}")[:data] folder = Dotloop::Models::Folder.new(folder_data) folder.client = client folder.profile_id = profile_id.to_i folder.loop_id = loop_id.to_i folder end
update(profile_id:, loop_id:, folder_id:, params: {})
click to toggle source
# File lib/dotloop/folder.rb, line 45 def update(profile_id:, loop_id:, folder_id:, params: {}) data = {} params.each do |key, value| FOLDER_FIELDS.include?(key.to_s) || next data[key] = value.to_s end folder_data = @client.patch("/profile/#{profile_id.to_i}/loop/#{loop_id.to_i}/folder/#{folder_id.to_i}", data)[:data] folder = Dotloop::Models::Folder.new(folder_data) folder.client = client folder.profile_id = profile_id.to_i folder.loop_id = loop_id.to_i folder end