lib/ruby-box/folder.rb in ruby-box-1.12.2 vs lib/ruby-box/folder.rb in ruby-box-1.13.0

- old
+ new

@@ -64,14 +64,33 @@ 'item' => {'id' => id, 'type' => type}, 'accessible_by' => {'login' => email}, 'role' => role.to_s }).create end - + + # see http://developers.box.com/docs/#folders-copy-a-folder + # for a description of the behavior + def copy_to(destination, name=nil) + parent = {'parent' => {'id' => destination.id}} + parent.merge!('name' => name) if name + + RubyBox::Folder.new(@session, post(folder_method(:copy), parent)) + end + private + def post(extra_url, body) + uri = URI.parse("#{RubyBox::API_URL}/#{extra_url}") + post = Net::HTTP::Post.new(uri.request_uri) + post.body = JSON.dump(body) + @session.request(uri, post) + end def resource_name 'folders' + end + + def folder_method(method) + "folders/#{id}/#{method}" end def has_mini_format? true end